Using multiple cameras

Breeze can connect to more than one camera and record data from many cameras simultaneously. Data from the cameras can be optionally merged into a single measurement when Recorder saves the data.

Using multiple cameras in Recorder

When you have configured more than one camera, as described in Hardware and settings guide, these can be used simultaneously to record data in Recorder.

At the top of Recorder, you select the multi-camera record mode (this is only visible when there is more than one camera configured in Breeze):

image-20250610-121146.png
  • Merge - Data is scaled down to the lowest spatial resolution of the cameras, and data for the different bands of the cameras is merged in the order the cameras are listed in Settings. After Recorder saves a measurement, realignment can be used to attempt to adjust the sub images to co-align features in them.

  • Parallel - Data from identical cameras mounted side by side are merged across track resulting in a wider image. The spectral bands for the cameras are not merged for individual pixels. The Parallel mode is used when two or more cameras are needed to cover the whole width of for example a conveyor belt.

  • Separate Files - Separate data is captured for each camera without any merging. Tip: you can use Camera segmentation in the analysis tree to target a specific camera.

In the list you can also select an individual camera to only use that single camera (Simulator camera (1) or Simulator camera (2) in the above screenshot).

When you have selected the multi-camera mode Merge or Parallel, data will be merged as it is captured by Breeze, before the analysis tree workflow is applied to the data.

Learn more about Merging images.

How merging works - only for cameras with different wavelengths

The merge method Merge works by first scaling down data to the lowest resolution of the cameras. Then data for each camera is appended to each pixel, in the order the cameras are listed in Breeze Settings. This means that you should configure your cameras in Breeze ordered by increasing wavelengths to get a merged data cube with ordered bands.

Merging with Scale Down only works for cameras with non-overlapping wavelength bands, because the bands in Breeze have identifiers, and more than one band with the same identifier will cause problems.

The Parallel merge method of course works with identical bands, because that is what is designed for.

Optional co-alignment for Fixed length recordings (not for Continuous Play or real-time workflows)

When recording a measurement with the Fixed length Record mode, data is first saved for all cameras and then merged to combine the bands of the cameras for each pixel in the image.

Here an optional realignment algorithm can be used to process the images so that features in the images align. Learn more about this in Merging images.

In real-time execution with the Continuous (Play) Record mode, or when using the Runtime from third party applications, data is never aligned, corresponding to the realignment algorithm None. This is because the realignment algorithms do not work in real time.

Optional multi-camera merge sync mitigation

When you configure Breeze to use Merge or Parallel to merge data from two cameras, the data for those cameras must be in sync for the merged data to be correct.

It is recommended to use an external trigger that triggers both cameras in sync at the same time.

However, even if cameras are triggered simultaneously, sometimes one of the cameras might not be able to keep up and not deliver all frames (“drop frames”) so that the two camera streams become out of sync. For a continuous recording, the error will compound over time causing larger and larger merge errors.

Enabling the multi-camera merge sync mitigation

This feature only works i Recorder in Continuous mode, and in Runtime workflows, when the cameras use the same speed (FPS or frame period) and the same offset (so that they are looking at the same position).

This mitigation is not used when manually merging measurements in Breeze desktop.

This feature is not used in Recorder when recording fixed length measurements. If you want to record measurements and still use this feature, you can use Recorder in Continuous mode and select the boxes Save image measurements and Include spectral raw data. You can use a Frames (segmentation) to divide the captured data into chunks.

Enable this feature by editing the Breeze properties XML file in the workspace. Use a text editor and add multiCameraMaxAllowedDrift to the file as follows and save the file.

<measurement>


<multiCameraMaxAllowedDrift>2</multiCameraMaxAllowedDrift>

</measurement>

To turn of this option, delete the entire row with multiCameraMaxAllowedDrift and save the file again.

Resulting behavior

With this feature on, when you record in Breeze it will keep the cameras in sync by making sure that neither camera builds up a queue of frames to merge. Instead, all queues will be kept smaller than the specified value of multiCameraMaxAllowedDriftso that frames are kept in sync.

Log entries for the mitigation

The BreezeRuntime.log will contain entries to help debug this that you can share with Prediktera support. These entries are added after the recording has completed, or after stopping the workflow.

2026-03-11 12:17:51.8448 [.NET TP Worker] DEBUG Prediktera.Hardware.Device.Devices.Cameras.Camera - Multi-camera parameters: maxOffsetDiff: 0, frameRateDeviation (fraction): 0,00999998 
2026-03-11 12:17:51.8448 [.NET TP Worker] INFO  Prediktera.Hardware.Device.Devices.Cameras.Camera - Multi-camera sync mitigation enabled for cameras using the same frame rate and offset. Maximum allowed drift is set to 3 frames. 
....
2026-03-11 12:18:05.4706 [.NET TP Worker] INFO  Prediktera.Hardware.Device.Devices.Cameras.Camera - Multi-camera sync mitigation for Prediktera Simulator Camera (0): 10 of 1329 frames dropped to reduce drift.  
2026-03-11 12:18:05.4706 [.NET TP Worker] INFO  Prediktera.Hardware.Device.Devices.Cameras.Camera - Multi-camera sync mitigation for Prediktera Simulator Camera (1): 0 of 1317 frames dropped to reduce drift.  
2026-03-11 12:18:05.5791 [.NET TP Worker] INFO  Prediktera.Breeze.Runtime.Workflows.PredictSession - Stop Predict  

Learn the log file location in Breeze log files and troubleshooting.

Multi-camera mode and merge settings

The multi-camera and merge settings are listed at the end each camera’s page in Settings:

image-20250623-095534.png

The multi-camera mode is the same setting that is used in Recorder. If you change it in one place it will update in both.

The settings for merge and realignment are used both when using Recorder as well as the default settings for manual Merge.