3D Surface Profiling Using Range Sensing Technology

 

 

 

 

 

 

 

Karim Yehia, Kevin Ann, Loai Naamani, Mazen Manasseh, & Seha Kim

 

December 15, 2002

 

 

 

 

 

 

 

Table of Contents  2

List of Figures  3

Abstract  4

Introduction   5

Calibration   6

Computer Vision Techniques  8

Passive methods  8

Active Methods  8

Hardware Components  9

Linear stage  11

Stepper Motor 12

Cemar Pico Laser 12

Digital camera  13

Stepper Motor Controller 13

Software Components  14

Image Processing and Display  14

Image Processing  16

Control Rich Interface  17

Data Structure  19

Remote Access and Control 20

Applications and Future Considerations  23

Conclusion   24

Appendix   25

References  30

 

[Top]

 

 

 

 

 

 

 

Figure 1. Relationship between image and world coordinates  6

Figure 2. Calibration  7

Figure 3.  ProRAST Components  10

Figure 4. Isometric view of the hardware setup  10

Figure 5. Linear Stage  11

Figure 6. NEMA 23KSM Stepper Motor 12

Figure 7. Laser components and laser scanning test object 12

Figure 8. Digital camera fixed on tripod  13

Figure 9. BiStep2A04 Stepper 13

Figure 10. Analysis Flowchart 15

Figure 11. Image captured in darkness  16

Figure 12. Image captured with flash mode on  16

Figure 13. Cross Section Plot 16

Figure 14. Matrix Representation  19

Figure 15. ProRAST .NET Flowchart 21

Figure 16. Remote Control Form   22

Figure 17. Hypothetical mobile ProRAST device  23

 

 

 

 

Abstract

 

 

This report explores the use of range sensing technologies in reconstructing three dimensional surface profiles through the implementation of remote data access and control protocols. Software components that handle data publishing, storage, and analysis are developed using C# on the .NET platform. The project combines skills from various engineering disciplines, namely mechatronics, computer vision and sensor technology. The final product encorporates several hardware and software components that enable registered clients to remotely access the range sensor and aquire total control over the sensor prototype.

 

[Top]

 

 

 

 

 

 

 

Several methods to digitize and reconstruct three dimensional models of objects have evolved rapidly in recent years. The high speed of digitizing technologies is mainly attributed to advances in the fields of physics, electrical engineering, and information technology. Moreover, the digitization and reconstruction of three dimensional shapes have numerous applications in areas of manufacturing, virtual simulation, science, and medicine (Cureless). Range sensing is a well established technique for detecting object depths. Through this method, structured light striking an object is observed by a camera to reveal surface profiles that are converted to depth data (DePiero & Trivedi). Applying similar techniques for practical purposes requires a well-established system designed to enable remote control and configuration of the sensing devices.

 

This paper presents ProRAST.NET (Remote Client and Web Service), a range sensing system for the reconstruction of 3D objects. ProRAST is based on a fully automated process whereby an object scan can be conducted over the internet while having total control over the lab setup and retrieved results. The novelty of ProRAST stems from applying the latest Web Service technology, provided in Microsoft’s .NET Framework, in order to provide real-time access and control over the range sensing apparatus. All software components were developed in Visual Studio .NET using C# as a programming language.

 

First, we provide a brief introduction to the various 3D computer vision techniques. An in-depth description of the different hardware and software components is then presented. Finally, the significance of the system is described in view of possible future applications.

 

[Top]

 

 

 


 

The point of calibration is to extract a camera system’s intrinsic and extrinsic parameters. With these parameters at hand, one may compute the world coordinates of a particular point in space (the upper case ‘P’ in Figure 1), given the corresponding image coordinates of the same point on the image plane (the lower case ‘p’ in Figure 1). World coordinates are often represented as X, Y and Z; and image coordinates by ximg and yimg or simply x and y.

 

 

 

Figure 1. Relationship between image and world coordinates

 

Without going into the details of derivation, calibration seeks to solve the M matrix in the following equation:

 

 

Where  and . The M matrix is called the projection matrix. Its coefficients are:

 


 

To determine the coefficients of the projection matrix, one must resolve to the method of eigenvalue decomposition. There are seven unknown camera parameters, and a system of seven equations may be formed using the above matrix. The coefficients formed by these seven equations require seven sets of world coordinates and their corresponding image coordinates. The seven points are often selected from a simple calibration pattern such as the one shown in Figure 2 below. Usually the world coordinates of these seven points are predetermined and the corresponding image points may either be manually extracted from the image or extracted using an edge or corner detection algorithm.

 

Figure 2. A photo showing a point's image coordinates on a calibration pattern and its corresponding world coordinates

 

Therefore in developing a program to solve the calibration problem, one would first determine the M matrix using eigenvalue decomposition and seven sets of image and world coordinate; and then use this matrix in a function that takes image coordinates and returns world coordinates.

 

[Top]

 

 

 

 

Methods for reconstructing three dimensional models of objects are classified as either passive or active. The major difference that distinguishes the two techniques is related to the object-system interaction that occurs through the data acquisition process.

 

Passive methods

 

Passive methods for reconstructing objects don’t incorporate any means of direct intervention with the studied object. Conventional cameras capture two dimensional images of the object and computational approaches infer the 3D representation from one or more images. Therefore, capturing a number of images at different angles with respect to an object enables the development of a fully representative model. Advantages of passive imaging techniques include low cost associated with the simplicity of the imaging hardware (DePiero & Trivedi). Moreover, no special energy source is required to illuminate the scene. However, several challenges arise due to loss of information needed to map a 3D scene onto a 2D image. The benefit of minimum hardware complication is compensated through the implementation of intricate computation approaches. For successful passive modeling, objects should be sufficiently textured to allow image feature detection (Bouguet).

 

Active Methods

 

Processing difficulties encountered in passive methods can be overcome by using specialized illumination sources and detectors that are implemented in active imaging techniques. Active systems use laser radar or one of the various forms of structured lighting. Structured light methods model an object by scanning the surface through a continuous emission and detection process. Triangulation is then applied to correlate the captured image coordinates with those of the real object. Unlike passive methods, active imaging requires an energy source to interact with the scanned object in order to highlight object features that can be detected by analyzing pixels of captured images (Trucco & Verri).

 

 

 

 

 

 

The prototype built for ProRAST (see Figure 1) consists of the following devices:

 

·    CEMAR Pico Laser Line Projector mounted on a clamp stand, and its laser line impinging on the test object

 

·    Canon S30 Digital Camera fixed atop a tripod in a position and angle to capture shots of the test-object

 

·    BiStep 2A Stepper Motor Controller

 

·    A linear stage with a platform to displace the test-object in a single direction

 

·    Stepper motor coupled to the linear stage via a spring-like joint