I am now both controlling the rotating platform on my home made 3D scanner using Python and also capturing all 400 images in the same Python script. My next project is learning how to perform image analysis using Python. I need to find the peaks in the image corresponding to where the laser stripes hit the scanned object. I wrote the analysis program that I am running now in Labview. I want everything about the scanner to be based on free and open source software, so image analysis is my last step. Ditching the commercial webcam program is my best current progress.
Here is a link to the current version of my Python script.
I scanned several objects to learn what works well and what doesn’t. Surface finish is a big deal. Some of the objects that I scanned failed pretty badly either because they were too shiny or because they absorbed the laser light. I read about an aerosol called Magnaflux Spot Check SKD S2. It’s pretty expensive (about $25 a can). A more DIY style solution is to use water soluble Tempera paint, diluted with more water and with some dish soap added. This can be brushed on to the scanned object, and according to what people posted on line, washed off pretty easily. I tried to find a formula to add liquid to talc and spray that on. I did not have any luck finding a formula. Spray on talc for sporting purposes (prevents chafing) might also work, but I am concerned about additional ingredients including perfumes. I really do not want to hurt any of the objects that I scan. Just dusting with talc might also work. I plan to do some experiments.
I scanned my electric shaver. This worked pretty well.
Here is a scan of a little vase. There were some occlusion problems, which messed up scanning of the handles a bit. The detail of the flower pattern on the body of the vase scanned well.
Last, I scanned a Rubik’s Cube. I wanted to see how well a regular shape like a cube or cylinder scanned. The detail here is also pretty good.
So the Python image capture is my latest progress. I’m running the scanner through two USB connections. One is for the webcam, and the other is for an Arduino which in turn sends signals to the parallel port input of a stepper motor controller. I hope to streamline that part of the system as well, and probably just control the single stepper motor in the system using a much smaller and simpler shield on the Arduino rather than an off board stepper motor controller.