|
Vision and Mobile Robotics Laboratory | Software
|
|
| Home | Members | Projects | Publications | Software | Videos | Internal |
SpinImageViewer is an interactive display program for displaying spin images. The display tool has two viewers. On the left is the Mesh Viewer which shows the model surface mesh; the model mesh can be moved around and viewed from different positions. The current oriented point is shown in red. On the right is the Image Viewer which displays the spin-image corresponding to the current oriented point; the image can be translated and zoomed. Clicking with the left mouse button on the model in the mesh viewer changes the current oriented oriented points and its spin-image.
SpinImageViewer.c Handles mouse and keyboard events and spin-image display and animation.
SpinImageViewer accepts commands from the mouse and keyboard. (Note: the commands only work if the cursor is set to the arrow cursor and is placed inside the viewing window)
Clicking with the left mouse button on the model in the Mesh Viewer changes the current oriented point. When the current oriented point changes, the spin-image shown in the Image Viewer automatically is updated.
Keyboard commands
Usage: SpinImageViewer
%S set model faceset filename [required]
-genStack %F %d %d %F set spin-image generation parameters
[bin size=1,width=15,height=15,angle threshold=180]
-readStack %S stack read filename [off]
-texScale %d set texture map scale [10]
-ptSize %F set projection point size
-gridSize %F surface sample interval [0.100000]
-vertices create spin images using vertices only [false]
-abBounds %F %F %F %F bounds on alpha,beta
-white cause background to be white
%S set model faceset filename [required]
The mesh to view.
-genStack %F %d %d %F set spin-image generation parameters
[bin size=1,width=15,height=15,angle threshold=180]
This option specifies the model spin-image generation parameters. Bin size is obsolete (its value is ignored). Width is the width of the spin-image in pixels (alpha direction). Height is the height of the spin-image in pixels (beta direction). Spin-images generated will have height/2 pixels above beta = 0 and height/2 pixels below beta = 0. Angle threshold is the threshold on the angle (in degrees) between the oriented point basis and the surface normals of points being accumulated in the spin-image. Detailed analysis of these parameters is given in Chapters 2 and 9 of the Ph.D. dissertation Spin-Images: A Representation for 3-D Surface Matching.
-readStack %S stack read filename [off]
this parameter is obsolete
-texScale %d set texture map scale [10]
Sets the width of each bin in the spin-image in texture map pixels. A texture scale of 10 gives good appearance for the spin-images in the image viewer. If the animation is too slow, decrease the texture scale parameter.
-ptSize %F set projection point size
Changes the projected point size. Increase for larger points and decrease for smalle points. This option is really only useful when making videos.
-gridSize %F surface sample interval [0.100000]
This option sets the size of the grid over which interpolated points are sampled. The spacing of interpolated points can be viewed using the keyboard command "i".
-vertices create spin images using vertices only [false]
Sets the viewer to create old style spin-images using vertices only. The keyboard command s can be used to toggle to the interpolated point spin-image generation method.
-abBounds %F %F %F %F bounds on alpha,beta
Sets the size of the spin-image's region of influence. The order of parameters is alpha min, alpha max, beta min, beta max. Alpha is the dimension in the radial direction (along the surface tangent), and beta is the dimension along the surface normal axis. For example, to create a spin image with radius 200 and height 100, use -abBounds 0 200 -50 50. Typically, spin-image radius and height are chosen to be equal.
-white cause background to be white
This is for taking screenshots. The white background looks better when the image is printed.
To view spin images using default settings
SpinImageViewer model.wrl
This example displays spin images 10 pixels wide and 20 pixels high, with and angle threshold of 60 degrees, and a physical spin-image size of 100 by 100 sensor units.
StackMaker model.wrl -genStack 1 10 20 60.0 -abBounds 0 100 -50 50