Thomas Megel's OpenScan Offers 10-Micron 3D Scanning on a Raspberry Pi and HQ Camera Module
Low-cost 3D-scanning system offers sub-30-micron accuracy on a cheap Raspberry Pi Camera Module v2.1, or 10-micron on the HQ Camera.
Thomas Megel is aiming to bring down the cost and complexity of accurate 3D scanning — and to prove it, he's scanned a Raspberry Pi single-board computer using another Raspberry Pi single-board computer.
Megel founded OpenScan.eu with a mission to create a low-cost 3D scanner built around an Arduino-powered control unit and off-the-shelf smartphones and cameras. In its latest incarnation, though, the project has shifted focus with a new variant running atop a Raspberry Pi single-board computer and a Raspberry Pi Camera Module or HQ Camera Module.
"I am able to reach great accuracy with just a Raspberry Pi [and] Pi Camera [Module] v2.1," Megel explains, following the production of a demonstration video and 3D scan of a second Raspberry Pi. "I am currently testing an upcoming cloud processing feature, but it will always be possible to do the processing locally on a PC with Meshroom or similar software."
"The [processing technique] is called photogrammetry and basically, the software is looking for common points in two images, matching those, do some math-magic and calculates camera intrinsics, camera positions and finally the coordinates for each point in space. I have implemented auto-scaling in the upcoming cloud processing, without the use of any markers."
The sample scan provided by Megel to demonstrate the scanner's capabilities took, he claims, less than an hour of wall time and just four clicks of user interaction — though the processing requires the in-beta cloud platform or a more powerful host PC, with the Raspberry Pi unable to provide enough compute itself. In testing, the system has proven capable of sub-50-micron accuracy with the Raspberry Pi Camera Module v2.1 and around 10 microns with the Raspberry Pi HQ Camera Module.
More information is available on Megel's Reddit thread and on the project's GitHub repository. The model generated from the scanned Raspberry Pi, meanwhile, can be found on Sketchfab.