Date of Award


Document Type

Open Access Dissertation

Degree Name

Doctor of Philosophy in Computer Engineering (PhD)

Administrative Home Department

Department of Electrical and Computer Engineering

Advisor 1

Michael C. Roggemann

Committee Member 1

Timothy C. Havens

Committee Member 2

Jeremy P. Bos

Committee Member 3

Joshua M. Pearce


Cameras are everywhere for security purposes and there are often many cameras installed close to each other to cover areas of interest, such as airport passenger terminals. These systems are often designed to have overlapping fields of view to provide different aspects of the scene to review when, for example, law enforcement issues arise. However, these cameras are rarely, if ever positioned in a way that would be conducive to conventional stereo image processing. To address this, issue an algorithm was developed to rectify images measured under such conditions, and then perform stereo image reconstruction. The initial experiments described here were set up using two scientific cameras to capture overlapping images in various cameras positons. The results showed that the algorithm was accurately reconstructing the three-dimensional (3-D) surface locations of the input objects.

During the research an opportunity arose to further develop and test the algorithms for the problem of monitoring the fabrication process inside a 3-D printer. The geometry of 3-D printers prevents the location of cameras in the conventional stereo imaging geometry, making the algorithms described above seem like an attractive solution to this problem. The emphasis in 3-D printing on using extremely low cost components and open source software, and the need to develop the means of comparing observed progress in the fabrication process to a model of the device being fabricated posed additional development challenges. Inside the 3-D printer the algorithm was applied using two scientific cameras to detect the errors during the printing of the low-cost open-source RepRap style 3-D printer developed by the Michigan Tech’s Open Sustainability Technology Lab. An algorithm to detect errors in the shape of a device being fabricated using only one camera was also developed. The results show that a 3-D reconstruction algorithm can be used to accurately detect the 3-D printing errors.

The initial development of the algorithm was in MATLAB. The cost of the MATLAB software might prevent it from being used by open-source communities. Thus, the algorithm was ported to Python and made open-source for everyone to use and customize. To reduce the cost, the commonly used and widely available inexpensive webcams were also used instead of the expensive scientific cameras. In order to detect errors around the printed part, six webcams were used, so there were 3 pairs of webcams and each pair were 120 degrees apart. The results indicated that the algorithms are precisely detect the 3-D printing errors around the printed part in shape and size aspects. With this low-cost and open-source approach, the algorithms are ready for wide range of use and applications.