Hands-On: Stereoscopic Vision

Hands-On: Stereoscopic Vision

━━━━

If you can obtain a pre-release version of a platform that is sold to millions, then you can seize the opportunity to develop a new open-source product. However, success is not guaranteed: as the team responsible forStereoPi, we quickly found that the beta hardware had its own merits during the development of the new version of the stereoscopic system.

The initial Raspberry Pi in a single-board computer form was aimed at enthusiasts and beginners who love to tinker. However, it quickly became more widely used as an industrial platform. It is estimated that at least half of the 6 million Raspberry Pi computers sold two years ago were used for commercial purposes. To assist embedded developers, since 2014, each Raspberry Pi has released a simplified “compute module” version, which lacks the user-friendly sockets and connectors of the Raspberry Pi. It is not surprising that compute modules are rarely seen in maker projects, but in 2018, we utilized the Raspberry Pi 3’s compute module (CM3) to create the popular small DIY stereo camera StereoPi. StereoPi is a circuit board that can plug in a compute module and two cameras, restoring some of the Raspberry Pi’s user-friendly interfaces, such as USB connectors. Therefore, the Raspberry Pi Foundation invited our team to develop an improved version in conjunction with the Raspberry Pi 4 compute module (CM4).
Since 2013, adding camera sensors to the Raspberry Pi has no longer been a complex task, as the standard single-board version is equipped with a dedicated camera serial interface (CSI) port. As a result, the Raspberry Pi has been applied to many computer vision and digital photography projects. However, despite its use in fields like computer navigation, stereoscopic imaging is still relatively overlooked, which is why we created the first StereoPi. The technical specifications of the Raspberry Pi 4 compute module can help StereoPi users achieve new functionalities and meet their other upgrade requirements, so we seized this opportunity.
For StereoPi version 2, we can provide functionalities similar to creating point clouds in cameras (instead of transferring images to a more powerful external computer for processing), while simplifying the existing design.
Hands-On: Stereoscopic Vision

For example, the voltage requirements of the Raspberry Pi 4 compute module have been significantly reduced. Its operation does not require 7 different input voltages from 1.8 volts to 3.3 volts; it only needs a 5 volt power supply, which can provide the different voltages needed internally while powering external components. Additionally, the Raspberry Pi 4 compute module also has built-in Wi-Fi and Bluetooth, eliminating the need for external hardware for wireless operations. Changes in the system architecture have resolved bottleneck issues affecting high-speed data exchange. When using the previous Raspberry Pi 3 compute module, USB and network data were transmitted through a USB2.0 internal hub; whereas in the Raspberry Pi 4 compute module, wireless, Ethernet, and USB all have separate interfaces.

Our team requested two engineering versions of the Raspberry Pi 4 compute module and a debugging board from the Raspberry Pi Foundation. However, we quickly damaged one module due to accidentally short-circuiting a 5-volt line with a 3.3-volt line. Although a similar mistake occurred with the Raspberry Pi 3 compute module, we were lucky it did not cause irreparable damage at that time; perhaps the new power configuration of the Raspberry Pi 4 compute module is more sensitive to misuse. We began to take great care to protect the remaining modules, checking connections three times and ensuring there were no metal shavings that could cause accidental short circuits.
The structural improvements of the Raspberry Pi 4 compute module mean changes in shape parameters. Before the Raspberry Pi 4 compute module, compute modules looked very much like personal computer memory modules and used standard SO-DIMM connectors (although the wiring diagrams were completely different). We used an SO-DIMM socket that has enough vertical space to route large interfaces (like USB or HDMI ports) on the other side of the development board without worrying about exposed solder pins causing short circuits in the compute module. Thanks to this, we were able to reduce the size of StereoPi’s printed circuit board. However, the Raspberry Pi 4 compute module uses a smaller DF-40 connector, which our version could not accommodate, so we had to extend the printed circuit board and move the interfaces to the side.
We needed to find smaller connectors, using micro HDMI connectors to replace the previous full-size HDMI connectors. The functions of full-size HDMI connectors and micro HDMI connectors are exactly the same, both having 19 pins, so you might naturally think that their pin assignments should be the same, right? However, that is not the case. The pin assignments of the two are cross-referenced: pin 1 on the full-size connector corresponds to pin 3 on the micro connector, and so on. So we racked our brains to figure out what was going on.
The Raspberry Pi 4 compute module also introduced another problem: the integration of wireless connectivity. When using the Raspberry Pi 3 compute module, we could largely treat it as a black box, but having wireless signals means there must be an antenna. Therefore, when designing the circuit board’s layout, we had to keep in mind the precise position of the Raspberry Pi 4 compute module’s antenna. For optimal performance, the four-layer circuit board beneath the antenna must have a non-metallic window arranged on each layer.
Hands-On: Stereoscopic Vision

After that, the problems became more subtle. The documentation used by hardware developers of the Raspberry Pi is often excellent, but since our team works somewhat based on field engineering documentation, we sometimes get misled by the errors that occur. (For complete details of all our major issues, please refer to our website!

We ultimately completed the new design, and by the time you read this article, we should have already launched the StereoPi version 2 on Crowd Supply. Additionally, we are also researching a fully handheld stereo camera kit, which is expected to be released soon for those eager to get their hands on it. However, what my partner Sergey Serov and Sergey Roshupkin and I look forward to the most is seeing our efforts lead to the launch of many outstanding new projects!
Author: Eugene Pomazov
Hands-On: Stereoscopic Vision

IEEE Spectrum

“Technology Overview”

Official WeChat Public Platform

Hands-On: Stereoscopic Vision
Previous Issues Recommendations
Trolls in Machines
Person: Karl Hovey
Bypass Technology Solving Paralysis Issues

Leave a Comment

×