This video shows a Photogrammetry rig that I created using a Universal Robots Robot arm and a Cannon camera.  My program is one Openframeworks program that I use to send strings of URScript commands to the robot arm and also simultaneously take pictures using the Cannon SDK.

My inspiration for this project was to use the precision of the robot arm to my advantage.  The arm is so precise that photogrammetry could be done easily, quickly, and repeatably for any object.  This takeout box was created from 100 images.

With this application, you can enter the number of images you want it to take, and the height of the object, and it will scan any object of reasonable size.  It covers about 65 degrees of the object, as is.  After entering the proper measurements and number of photographs to be taken, I start the app, and the robot moves to a position, waits for any vibrations from movement to stop, then sends a command to the camera to take a picture.  I then wait an appropriate amount of time for the camera to focus and take a picture, then move to the next location.  It takes pictures radially around the object for optimal results.  Ideally, with future iterations of this, I will be able to go all the way around the object in a sphere to get the most accurate model.

After taking all the photographs, I used Agisoft Photoscan to overlap the images and create the 3D model shown in the video.

The model turned out as well as I had hoped, and will definitely continue with this project to be able to make a full 3D models of objects and people.