if we want to get an accurate snapshot of the shape of a stationary 3d object, how do these approaches compare in terms of accuracy and price? Are there distinct categories of shapes that would work better or worse with either one of them?
Isn’t it going to depend entirely on what you want this “snapshot” for? If you want something people can look at to get a feel for the shape of object, the camera is gong to be effective and, I am fairly sure, much cheaper. If you want accurate numerical data you will want the scanner.
If you want to acquire accurate dimensional information, then a simple 3D camera is useless. If you want to acquire information for a 3-d printer or something, then there are alternatives to laser scanning, like white light scanning , but not necessarily cheaper. I’ve seen home brew designs for laser scanners using a record turntable, cheap line laser and camera. It depends on what you are trying to accomplish and how much money and time you have to spend.
I’ve seen some that don’t even need the turntable, just a special background (though you’d need to turn the object around to get the other side, of course). It certainly can be done cheaply.
is the difference a quantitative or qualitative one? E.g. if we use 10 good cameras simultaneously and some wonderful software backend would it get on the same qualitative level of accuracy with the scanner? Or are results from a camera system fundamentally distinct from what we get from the scanner?
Cameras are not built to measure distances (or anything, in fact).
You could in principle reconstruct a full scene, including depth, from multiple camera angles, but it’d be rather hard, and would require a lot of processing.
The trouble is that is no easy way to figure out which pixel on one camera corresponds to a pixel on the other camera. You can assign a vector to each pixel on one camera, but there is no way figure out the corresponding pixel on other camera.
With a calibrated laser line you are creating a plane and you can figure out which pixel vectors intersect the plane because of the laser is monochromatic. You then sweep the laser across the object to create a 3d Image.
You might be able to create a structured light scanner using a cheap LED projector to project a distinctive pattern on the object that could interpreted as XYZ data by the software.
that makes sense, thanks.
The cameras will always have difficulties with items which have very smooth textures (in other words rather uniform colors, or low contrast), they will have issues with poor illumination, etc. As an extreme example, the cameras will (obviously) not work in darkness.
A laser scanner will not be affected by such issues and will work even in complete darkness.
There’s a whole raft of papers on 3D reconstruction from multiple uncalibrated images. It’s not impossible to do, it requires a whole lot of processing, and the results can be fairly accurate compared to a laser scanner.
Where is the accuracy? I see some heavy smoothing applied to generate a pretty picture. Accuracy is measured by scanning known reference objects, like planes, spheres, cylinders etc. and checking the results against the reference.
The hard thing for laser scanners are shiny objects. The ideal surface has a matte finish.