Multi-Camera Acquisition
Overview
Often there is a need to acquire images simultaneously from more than one camera. Three methods to implement a multi-camera application are described in the following sections.
Table of Contents
Each Camera is Connected to a Separate Image Acquisition Device
You can use a separate image acquisition device for each camera. This method includes the following advantages and disadvantages:
- Hardware connections and programming are relatively simple.
- Acquisitions can be synchronized via Real-Time System Integration (RTSI) bus between image acquisition devices.
- All acquisitions can potentially occur at the full-frame rate.
- Multiple low-cost boards are often equivalent in price to a single board that supports multiple channels.
- Extra PCI slots are required, and the chances of experiencing resource conflicts increase.
The following block diagram demonstrates how to acquire images from two cameras that are connected to two separate image acquisition devices. Neither the cameras nor the image acquisition devices are synchronized. IMAQ Start VIs are called almost simultaneously for both acquisitions, so the next available frames from both cameras will be displayed. This method acquires 30 fps on each channel since they are connected to separate image acquisition devices.

Figure 1.
For more information on acquiring from multiple cameras, refer to the Multiple Camera Acquisition example program.
Cameras are Synchronized and are Connected to a Multiple-Channel Image Acquisition Device (IMAQ PCI/PXI 1408/1409)
You can use a single multiple-channel image acquisition device, such as the IMAQ PCI/PXI-1408 four-channel analog monochrome board, with the following requirements:
- All cameras must be synchronized. Synchronization requires the use of cameras that can accept an external input for their horizontal sync (HSYNC), vertical sync (VSYNC), or composite sync signal (CSYNC).
- The maximum frame rate is divided by the number of channels if the image acquisition device has only has one A/D converter.
- Only one PCI slot is required.
The following block diagram demonstrates how to acquire images from two cameras that are connected to one image acquisition device (IMAQ PCI/PXI-1408/1409 required). The cameras are synchronized, which means both cameras must start sending images at the same time. HL Ring Buffer Config.vi reserves two buffers, one for each camera, and stores the images accordingly. This method acquires 15 fps per camera for a total acquisition rate of 30 fps.

Figure 2.
For more information on synchronizing cameras refer to the Advanced Analog Triggering and Synchronization Techniques tutorial.
For more information on acquiring from multiple cameras, refer to the Multiple Camera Acquisition example progam.
Cameras are Not Synchronized and are Connected to a Single-Channel or Multiple-Channel Image Acquisition Device
You can use a single- or multiple-channel image acquisition device, and switch between the cameras or channels periodically. This method has the following requirements:
- Cameras are not required to be genlocked.
- If you use a single-channel image acquisition device, you must have an external switch to control which camera is routed to the video input.
- Only one PCI slot is required.
This method has a very low frame rate because the board needs to be reconfigured between each acquisition to switch cameras or channels.
The following block diagram acquires images from two out-of-sync cameras that are connected to the same image acquisition device (IMAQ PCI/PXI-1408/1409 required). This VI acquires an image from the first camera as soon as it is available and waits for the beginning of the next available frame on the second channel. Once the second image is captured, the VI returns to the first channel. This acquisition continues until you stop the VI. This method results in the lowest frame rate of all the methods because the image acquisition device must relock each time to acquire a new image.

Figure 3.
For more information on acquiring from multiple cameras, refer to the Multiple Camera Acquisition example progam.
Reader Comments | Submit a comment »
Please update
Is there an update for this article.?Using
LabVIEW 8.2, latest IMAQ and a PCI
1410 board with 3 analog cameras
connected.
- Erik Van geel, AGFA-GEVAERT NV. erik.vangeel@agfa.com - Jul 17, 2007
Update to use IMAQ
Can you please update this aritcle to
reflect IMAQ 3.6 and NI-Vision 8.2. The
low-level vis have changed.
- Mar 7, 2007
C code for multi camera acquisition
Can you please also supply the C code for
the 3 multi camera acquisition examples?
- Martin Litzenberger, ARC Seibersdorf research. martin.litzenberger@arcs.ac.at - Feb 3, 2004
Legal
This tutorial (this "tutorial") was developed by National Instruments ("NI"). Although technical support of this tutorial may be made available by National Instruments, the content in this tutorial may not be completely tested and verified, and NI does not guarantee its quality in any way or that NI will continue to support this content with each new revision of related products and drivers. THIS TUTORIAL IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND AND SUBJECT TO CERTAIN RESTRICTIONS AS MORE SPECIFICALLY SET FORTH IN NI.COM'S TERMS OF USE (http://ni.com/legal/termsofuse/unitedstates/us/).
