Introduction – What stops you from using dual cameras on the Raspberry Pi?
Many of the Raspberry Pi users may notice that there is only one camera slot on the board. Actually, the processors on the latest Raspberry Pi models, like the Pi 3 and Pi 4, offer support for two cameras, but only one of them is brought out on standard Pi boards. Although the Raspberry Pi Compute Modules bring out both to use, they still need customized carrier boards and are not widely used in the maker space.
Problem – Why would you need multi-cam or stereo camera for raspberry pi 4 (and more)
What if you need multiple cameras for a special application? Well, currently the easiest solution might be – you combine multiple Raspberry Pi boards and cameras. It’s feasible, but that really increases the complexity of wiring, the consumption of power and the occupation of space. In the end, the cost of deployment might far exceed your expectations.
Solution – Arducam want to be your savior in multi-camera applications
In the last several years, Arducam has designed and released multi-camera adapters for Raspberry Pi in 2 kinds: one allows you to connect 2 Pi cameras to a single Pi Zero, and the other allows for 4 Pi cameras to be connected to one Pi in Model A&B series. Both camera multiplexers are compatible with the standard 5MP OV5647 and 8MP IMX219 Pi camera drivers, so feel free to connect your existing cameras to our multiplexer and see them work as they should be. That being said, there are actually no restrictions on which model you are plugging those adapters into. You can put the stereo adapter where a 4-cam multiplexer is in and vice-versa.
The key point and fundamental theory of these multi-camera adapter boards is multiplexing. The Raspberry Pi only allows one camera to be connected and only recognizes one connected camera, so switching between different channels will allow different camera video streams to be transmitted to the RPi’s onboard CSI port one at a time. Therefore, the Raspberry Pi still connects to a single camera, but you will be able to see in the perspective of multiple ones.
Application – 3D Scanner, Dual-Cam, Surveillance, Drone Cam and More
Use Case 1: 3D Scanner with Raspi (Raspberry Pi) Camera
Recreate the 3d model from multiple images taken from different angles.
Use Case 2: Dual-Camera (360 view) for Raspberry Pi 4/3B+/3A+/3
Taking multiple images from different directions and stitching them together.
*We’ve also had an SPI multi-camera application here: https://www.arducam.com/arduino-panorama-photography-arducam/
Use Case 3: Enhanced Surveillance system with raspberry pi 4
Raspberry Pi-based surveillance camera, connecting multiple cameras to a single Pi, and pointing them at different locations to cover all areas.
Use Case 4: Raspi (Raspberry Pi) Camera for Drones
Most of the drone camera use FPV mode, but multi-camera setup will let you switch to side view or back view, so it’s even easier when running a mission.
Limitations – Asynchronous Switching
There are also many limitations with this solution: you can’t capture the image or video simultaneously. You can only switch to a camera and then shoot an image or video at a time. Because the cameras are running asynchronously, it might be at half of the frame rates during switching, and you have to drop the bad frames before getting the following good ones. The CSI-2 camera signals are very high-speed MIPI signals, which are subject to noise, attenuation, and interference. Therefore, extra-long cables and cascading is no longer supported.
Coming Next – True Stereo Camera, Two Pi Cameras Fully Synchronized
We will release a new true stereo camera very soon that lets you connect two pi cameras at the same time and fully synchronized. Stay tuned with Arducam for more surprises.
UPDATE: We have released this sync stereo camera HAT for Raspberry Pi, and you can find more information here.