A stereo camera can deliver recognizable images while its depth pipeline remains unusable on a new embedded platform. Successful installation does not prove that acquisition, GPU execution, calibration loading and stereo processing all work together. For engineers moving an inspection application between compute platforms, the quickest diagnosis separates these stages and tests each against a documented software baseline. Start with the manufacturer's supported configuration, establish reliable image acquisition, and only then investigate acceleration or application performance.
1. Identify the first failing stage
The most likely integration problems are an unsupported software combination, incompatible libraries, or incorrect runtime selection. Acquisition faults and stereo configuration errors can produce similar symptoms, so locate the failure before changing packages.
Use this sequence: device detection, image acquisition, GPU initialization, depth generation, and application integration. Stop at the first stage that fails. A later failure does not invalidate everything upstream.
| Symptom | First suspect | Discriminating test | Corrective direction |
|---|---|---|---|
| Device is absent | Connection, permissions or device driver | Run the manufacturer's discovery utility | Restore documented device access |
| Images arrive, but depth initialization fails | Unsupported runtime or binary build | Run the supplied depth example outside your application | Install a supported software combination |
| Supplied example works, application fails | Library selection, ABI or configuration | Compare loaded libraries and launch environments | Align application dependencies |
| Depth appears, but contains holes or unstable surfaces | Calibration, synchronization, scene or capture settings | Test a stationary, textured target | Correct acquisition or stereo settings |
| Depth is correct but too slow | Transfers, processing load or fallback execution | Measure each processing stage | Reduce avoidable work and verify the selected backend |
The camera acquisition integration options guide helps distinguish an unsupported interface from a processing problem. For a failure isolated to the depth stream, use the depth-only stereo connection checks.
2. Record the complete compatibility chain
Create a configuration record before installing anything else. A camera SDK may require a particular operating-system release, processor architecture, GPU driver and runtime combination. Matching only the toolkit version leaves several possible conflicts unresolved.
Record the following for both the failing platform and any working reference system:
- Operating-system image, distribution release and kernel build.
- Processor architecture and application binary architecture.
- GPU driver, runtime and development toolkit versions.
- Camera firmware, SDK version and installation source.
- Vision-library version, compiler version and build configuration.
- Capture mode, image format, resolution and requested frame rate.
- Application environment, including library paths and container image where applicable.
Obtain software and documentation only from the manufacturer or its authorized distributors. Check the release notes for the exact platform combination, not merely a statement that the SDK supports the operating-system family.
If the combination is undocumented, ask the manufacturer to confirm support before treating it as a production candidate. Do not assume that a newly released platform is supported by an older binary package.
3. Prove acquisition without stereo processing
Run the manufacturer's simplest acquisition example outside your application. Disable optional processing through documented settings, if available. Keep capture resolution and frame rate fixed so repeated tests remain comparable.
Check whether the software receives the expected image streams or documented sensor output. Some integrated depth devices do not expose raw left and right images. In that case, use the manufacturer's diagnostic output rather than assuming a conventional stereo interface exists.
For exposed stereo pairs, verify that both images update, timestamps advance, dimensions agree with the selected mode, and frames are not duplicated. Inspect actual pixels rather than relying only on a successful return code.
Calculate the raw payload to identify unrealistic acquisition expectations. For an illustrative pair of monochrome images:
Here, MB uses decimal units. The calculation excludes transport overhead, metadata and additional buffers. It is a payload estimate, not a guarantee that a particular connection or host can sustain the stream.
Check buffer allocation against the actual pixel format. Packed formats, row padding and additional channels can invalidate a simple width-times-height assumption. The image buffer sizing checks explain what to inspect before passing data into another library.
If acquisition fails here, stop changing stereo parameters. Follow the device-access, connection and capture path first.
4. Separate GPU runtime failures from library conflicts
After acquisition passes, run a supplied example that initializes the required GPU processing backend. A working desktop display or successful compiler invocation does not prove that the camera application's runtime dependencies are correct.
Test these causes in order:
- Unsupported binary package. Confirm that the installed SDK build targets the actual processor architecture and operating-system release. Replace it with the documented package when necessary.
- Driver and runtime incompatibility. Compare the installed combination with the manufacturer's support requirements. Restore a validated combination instead of replacing libraries individually.
- Wrong libraries loaded at launch. Inspect the process's loaded modules or shared-library dependencies. Remove unintended search-path overrides and stale application-local copies.
- Vision-library ABI mismatch. Confirm that the application and its dependencies use compatible compiler interfaces and library builds. Rebuild affected components together when required.
- Container access mismatch. If applicable, verify GPU access and runtime integration using the platform's documented container procedure. Compare with the same example running directly on the host.
A build can succeed while execution loads a different library from the one used during compilation. Conversely, an application may fail before reaching the GPU because an unrelated dependency cannot load.
Use the cross-toolchain library ABI guide when dependency versions appear correct but binary interfaces differ. If compilation fails after an upgrade, follow the SDK upgrade build checks before investigating image quality.
5. Validate stereo geometry with a controlled scene
Once processing initializes, test a stationary target with visible texture and moderate, even illumination. Avoid transparent surfaces, strong reflections and moving objects during this baseline test. These introduce correspondence problems that can hide a software integration fault.
Check calibration identity, image orientation, rectification settings and the documented synchronization method. For conventional rectified stereo, corresponding features should lie approximately along the same image row. Persistent vertical displacement can indicate incorrect calibration, image ordering or rectification.
The basic depth relationship also provides a useful sanity check:
This hypothetical example uses rectified focal length f, baseline B, disparity d and depth Z. It assumes conventional stereo geometry and consistent calibration units; it is not a specification for any product.
If the software reports a value near 1 instead of 1000 for that physical distance, inspect the output-unit definition before concluding that the geometry is wrong. A unit conversion error can look like a calibration failure.
Do not apply this equation indiscriminately to every depth technology. For a broader explanation of acquisition choices, use the 3D scanning method selection guide. If image streams work but depth remains unreliable, keep the investigation within calibration, synchronization, scene suitability and processing configuration.
6. Measure performance only after correctness passes
A compatible stack can still miss the application's timing requirement. Measure capture, transfer, preprocessing, stereo processing and result delivery separately. Record frame rate, result age and dropped-frame counts; throughput alone can conceal a growing queue.
For a sequential pipeline, an illustrative timing budget might be:
These are assumed measurements, not hardware claims. They omit exposure timing, scheduling variation and overlapping execution. Measure end-to-end latency independently, especially when stages run concurrently.
At this operating point, a processing spike above the available interval can create backlog unless the application has an explicit queue policy. Decide whether it must process every frame or discard stale frames while preserving result-to-frame matching.
An advertised accelerator is not proof that the installed library uses it. Verify the selected backend through documented diagnostics or profiling. If execution falls back to another processor, determine whether that fallback is supported before accepting it.
The slow GPU processing diagnostic guide covers performance isolation. For intermittent capture delays under combined load, use the multi-source acquisition stall checks.
7. Choose hardware by processing location and support
Before replacing hardware, establish where depth is computed: inside the sensor, on the host processor, or through a supported host accelerator. That decision determines which dependencies must remain compatible.
Browse 3D sensors and the camera finder by measurement method and output requirements. Do not select a device solely because its category includes stereo; confirm how its actual interface and processing workflow fit your application.
The MV-DLS300P-04 is identified in the catalog as a laser galvanometer stereo camera.
- Type
- Stereo / structured light
The MV-DPS200P-02 is identified as a projected structured-light 3D camera.
- Type
- Stereo / structured light
These catalog descriptions do not establish support for your embedded platform, raw-image access, host runtime or application library. Request those compatibility details before ordering either candidate.
For a host-based design, evaluate vision controllers against the verified software requirements and measured workload. Additional interfaces or memory do not resolve an unsupported binary package. The embedded stereo sizing guide helps translate a working pipeline into compute requirements.
8. Know when an upgrade is the wrong fix
Installing the newest SDK is appropriate only when it supports the complete target configuration and addresses the failing stage. A newer package may require a different system image, introduce API changes or remove an older operating mode.
If the supplied example works but your application fails, focus on application dependencies and configuration first. If both fail before capture, focus on device access and the supported stack. If both produce correct depth but run slowly, investigate workload and data movement rather than repeatedly reinstalling drivers.
Keep one known-good baseline. Change one layer at a time and repeat the same test after each change. Where the manufacturer documents a rollback procedure, preserve the matching firmware and SDK records needed to follow it.
Do not make a production release depend on an announced future package. Use software that is available through official channels and validated on the actual target configuration.
9. Verify the fix and preserve the baseline
Complete this acceptance checklist before returning the system to its application:
- Cold-start test: device discovery, acquisition and depth initialization succeed without manual intervention.
- Data test: dimensions, timestamps, units and validity indicators match the application's expectations.
- Geometry test: a known target produces plausible dimensions at several positions in the intended measurement region.
- Load test: processing remains within the timing budget with recording, communications and other required tasks enabled.
- Recovery test: documented reconnect or restart behavior returns the pipeline to a defined state.
- Reproducibility test: another installation can be created from the saved package list, configuration and supported system image.
Define numerical acceptance limits from the inspection requirement, not from a single successful demonstration. Keep logs that identify the software stack alongside timing and depth-quality measurements.
For the next step, use the camera-led system configurator to organize the required components. If platform support remains unclear, send the compatibility record, first failing test and representative logs through technical support before committing to hardware.
Questions
Why can a stereo camera show images but fail to generate depth?
Installation usually confirms that files were copied and basic dependencies were accepted. It does not validate every execution path. Depth processing may require a specific GPU runtime, driver combination, calibration file or architecture-specific library that basic image capture never uses.
Should every dependency be updated to its newest version?
Start with the manufacturer's documented combination for the target platform. Preserve that baseline and update only when a release supports your configuration or addresses a demonstrated problem. Validate the complete pipeline again after changes, including acquisition, depth quality, timing and restart behavior.
Will an embedded accelerator automatically speed up stereo processing?
Not necessarily. The SDK or processing library must explicitly support that accelerator and select it during execution. Confirm backend selection using documented diagnostics or profiling. A device's hardware capabilities alone do not establish that your installed application can use them.
What information should accompany a platform compatibility support request?
Provide the operating-system image, processor architecture, camera firmware, SDK package, GPU driver and runtime versions, and application-library builds. Include the simplest failing example, its complete error output, capture settings and whether the same device works on a documented reference configuration.

