Real-time Photometric Stereo

Dome-shaped devices consisting of a single digital camera and multiple light sources have been used in the past for the 3D scanning of objects. They leverage Photometric Stereo techniques in order to build detailed 3D models of these objects. Their advantage is that they can pick up even subtle details of the shape. Yet, these systems typically suffer from high recording and processing times. This paper introduces a novel GPU-accelerated implementation that calculates the shape normals, as well as the albedo and ambient lighting through the Photometric Stereo technique, providing to users the ability for real-time feedback on the recording process. An originally serial algorithm was mapped to the architecture of an NVIDIA GPU and the CUDA programming platform. To maximize performance, various optimizations were applied, like reducing the total amount of memory accesses, coalescing the memory accesses into the minimal number of transactions, reducing register usage to avoid spilling, hiding latency and maximizing thread occupancy. Our method reduces the processing time, accelerating the original implementation by a factor of 950, thereby altering the way in which such devices can be used.

[1]  Min H. Kim,et al.  Multispectral Photometric Stereo for Acquiring High-Fidelity Surface Normals , 2014, IEEE Computer Graphics and Applications.

[2]  Jeffrey Ng,et al.  Dense photometric stereo reconstruction on many core GPUs , 2010, 2010 IEEE Computer Society Conference on Computer Vision and Pattern Recognition - Workshops.

[3]  Kevin Skadron,et al.  A performance study of general-purpose applications on graphics processors using CUDA , 2008, J. Parallel Distributed Comput..

[4]  Shaharuddin Bin Ahmad,et al.  Albedo , 1979 .

[5]  Grant Schindler,et al.  Photometric Stereo via Computer Screen Lighting for Real-time Surface Reconstruction , 2008 .

[6]  Luc Van Gool,et al.  Easy and cost-effective cuneiform digitizing , 2005 .

[7]  David J. Fleet,et al.  Performance of optical flow techniques , 1994, International Journal of Computer Vision.

[8]  Thomas Malzbender,et al.  Surface enhancement using real-time photometric stereo and reflectance transformation , 2006, EGSR '06.

[9]  Hiren Patel GPU accelerated real time polarimetric image processing through the use of CUDA , 2010, Proceedings of the IEEE 2010 National Aerospace & Electronics Conference.

[10]  Frederik Truyen,et al.  Imaging the topography of illuminations and bookbindings with reflectance transformation imaging , 2014 .

[11]  A. R. Firstauthor,et al.  Biomedical image processing with GPGPU using CUDA , 2011, 2011 Proceedings of the 34th International Convention MIPRO.

[12]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[13]  S. A. Bibikov,et al.  Memory access optimization in recurrent image processing algorithms with CUDA , 2011, Pattern Recognition and Image Analysis.

[14]  Liu Fu,et al.  The processing of palmprint image based on CUDA , 2012 .

[15]  Vincent Nozick,et al.  Pyramidal Normal Map Integration for Real-time Photometric Stereo , 2010 .

[16]  Wen-mei W. Hwu,et al.  Optimization principles and application performance evaluation of a multithreaded GPU using CUDA , 2008, PPoPP.

[17]  Steffen Beich,et al.  Digital Video And Hdtv Algorithms And Interfaces , 2016 .

[18]  Frederik Truyen,et al.  Imaging Characteristics of Graphic Materials with the Minidome (RICH) , 2013 .