3DScanner User's Guide

3DScanner Version 0.9

Overview
Hardware requirements
Mouse and keyboard
Lighting the scene
Scanning
Merging Projects
Hints

Overview

This application scans 3d objects with a method called 'shape from silhouette'.

First a calibration object is photographed from two different views using a turntable. Afterwards the scan object will be photographed by different point of views. These photos will be segmented and used to create the 3d object using a modified Marching Cubes algorithm. The number of triangles can be reduced and the object can be textured.

Due to the applied methods only the convex hull of the object will be reconstructed. Transparent, reflecting or similar to the background colored objects have to be segmented manually.

Hardware requirements

  • some camera (a digital one is very usefull)
  • ms windows (a version of this application for other os is not yet available)
  • a turntable (may be only a paper with some degree markings)

Mouse and keyboard

  • drag mouse to rotate the scene
  • drag mouse vertically while pressing 'ctrl' key to zoom
  • use left and right cursor keys to spin turntable in single steps
  • use left and right cursor keys while pressing 'alt' key to spin turntable by 50 steps
  • press 'F1' key to show this help file
in merging mode:
  • drag with right mouse button to rotate second project object
  • drag with right mouse button while pressen 'ctrl' key to translate second project object
  • press 'return' key to apply merging or 'esc' to cancel

Lighting the scene

Make sure to use a uniform background with a color that doesn't occur in the object itself.

Try to light the scene so that no shadows are visible from the camera.

Scanning

A typical scanning session:
  • set up lighting, switch on turntable power and place the camera and the calibration object
  • create a new project with File - New...
  • select Scan - Calibrate cam
  • wait until both images of the calibration object are taken, remove calibration object and place object to be scanned
  • select Scan - Get images...
  • select Scan - Segment images
  • select File - Save to save the project file
  • select Scan - Generate 3D Model
  • select Scan - Texture
  • select File - Export Model to VRML... or File - Export Model to OBJ...
  • switch off power of turntable

Merging Projects

Generate the 3D modell of your current project. You can merge this project with another one (the same object but photographed from another angle) with File - Merge with project. The 3D modell of the second project will be generated and shown as wireframe. Rotate and translate it to match the original one and press enter to apply or esc to cancel.

Hints & Trouble Shooting

  • Many times I put the object to close so that it was cropped when turning the turntable - so let some extra space when setting up the camera
  • There are several calibration object sizes available. You'll get best results using the size most close to the object size.
  • Beware that increasing the resolution means increasing it in every of the three dimensions - doubling the resolution results in about eight times more calculation time and about four times more vertices and triangles!
  • You can turn the object manually (set entry in 3DScanner.ini to 0). Beware that the quality of the 3d model depends strongly on the accuracity of the rotation angle.
  • Calibration doesn't work? Try to save the image of the calibration object, lighten dark areas except the black dots and take this as calibration photo (choose Configure - Camera - Aquisition Method - File)
  • The size of the scanning volume is a rough estimation. To speed up subsequent scans or if your object is clipped, choose Scan - Fit Volume To Last Scan
  • You may decrease the photo image size after the calibration for saving memory, but you have to decrease manually the following values in the camera definition in the project file by the same factor: w, h, cx, cy, f
  • For better segmentation results you may manually adapt the threshold values (sorry, no user interface for that): enable debugOutput, run the segmentation and open the file "segtest before threshold.bmp" with some imaging program. Try to find two gray values that you modify in the 3dscanner.ini: below INI_SEGLOWTHRESHOLD every pixel belongs to the background (default: 20); above INI_SEGHIGHTHRESHOLD every pixel belongs to the object (default: 60)


© Marcel Lancelle 2002-2003, TU-Braunschweig, Germany