-
Notifications
You must be signed in to change notification settings - Fork 64
Hardware Setup Guide
Structured light scanning might seem daunting at first, but worry not!
The cost of parts have dropped significantly in recent years, and they are generally straightforward to source.
- camera
- digital projector
- computer
- flatscreen display
optional
- mounting hardware
- turntable
optional
- flat board
- printer
- Raspberry Pi camera 8MP [adafruit link]
- Sony MP-CL1 laser projector [amazon link]
- Raspberry Pi 3b+ computer [adafruit link]
- some 1080p LCD TV (calibration step only)
- camera mount rail [amazon link]
- 2x pedco ball socket [amazon link]
- RAM-PRO 10-inch turntable lazy susan [amazon link]
- some small glass rectangle from home depot (~8"x10")
- some HP black/white laser printer
The specific parts mentioned above are not strictly necessary; camera, projector, computer all have wiggle room.
The camera
input is handled by software called mjpeg-streamer. This software is compatible with raspberry pi camera as well as other types of cameras. For development, mjpeg-streamer was only tested with raspberry pi type camera. More resolution = more output points.
The laser projector
above is ideal for scanning use because it has very deep depth of field. There's no focus knob because the laser image is sharp over a large distance range. This property ensures the structured light patterns appear crisp on the object/environment. Any DLP/LCD projector should work just fine, but be warned of challenges associated with depth of field. More resolution, more depth of field = more output points.
Raspberry pi B+ computer
or equivalent model is ideal for scanning use because it is very small, widely available, cheap, and has a very strong support community online for bumps in the road.
Priority number one is ensuring that your camera and projector are absolutely as rigid as possible with respect to each other.
Whatever hardware you use, if the camera or projector slip, the output results will suffer.
Place camera and projector side by side such that they will point at the same object. Their fields of view should have significant overlap.
The lenses in whatever camera/projector combination you use will likely have imperfections. To mitigate this, it's necessary to take some pictures of a known object in order to characterize what the optics are doing. OpenCV calls for bog-standard flat chessboard patterns; printing this pattern on paper and mounting it on a rigid flat surface will suffice.
extremely WIP
OS is assumed to be raspbian on raspi.
Need to install:
opencv
liblo
SDL ...