Scans

Scans represent the raw data taken from a scanning device. In addition to the position, intensity, color and normal values found in a cloud it also maintains a scanner position, a mapping of scanner pixels to points in the cloud, and a mesh structure that creates each point in the scan with its neighbors. Each scan is associated with one scanner position, which defines the location of the scanner when the scan was taken.

Scan Positions

A scan position encapsulates the entirety of the information needed to match scans taken from a single position with the control points of a project. This data includes any scans taken from that position, the target points associated with that position, any images taken from that position, and the current coordinate system for that scan position.

Importing a Scan

Each of the three Point engines that are included with Point Cloud support a variety of formats for importing. The following table lists the formats supported by each engine. The three engines are Carlson, Pointtools, and 3DTK.

To import a scan, right click the scan folder of the scan position for which you wish to import the scan and click import. You will be then shown the standard Carlson file-selection dialog, if you select a non ASCII file, the file will be converted to Point Cloud's internal format and saved to the project. If an ASCII format file is selected, the Import Scan dialog will be displayed.

The settings in this dialog must be configured to match the properties of the scan being imported. The first thing to do is verify that the correct delimiter is being used, if all the data is compressed into one column in the table, it's likely that the wrong delimiter is set. Clicking the header of each column will bring up a menu with all the possible values that can be assigned to it, click each column's header to set their proper values. Typically these values can be found in the header of the text file or in a file accompanying the text file. The Scan Pattern options determine the ordering method of the scan's data, as well as the starting corner of the scan's data, the data for these values can often be found in the same place as the scan's resolution information, but if not, the default, or the default with the starting corner set to Top Left are the most common scan pattern types. At the top of the dialog is the Presets Panel, which allows you to save the current column assignments to be used in the future. The import column in the table determines whether or not the row should be imported. In the example image above, we would want to click the green circle next to the first row to turn it red to avoid importing junk data (such as the header line).

Importing Target Points

Target points can be manually entered or imported via a similar process to scan importing. To enter the target points in manually, right-click the target points object belonging to the scan position you wish to modify and select Edit. This will bring up the Edit Points dialog for the target points.

Registering Target Points

The scan registration process begins with pressing the Register button in the toolbar of the Target Points Editor.

Carlson Point Cloud supports four different methods of scan registration. Use Existing References will make Point Cloud only use the references that already exist to perform the registration process (these references can be set manually in the Points Editor, or could have been set in a previous registration process). Match Point Names will match target points up with control points with the same name. Match Point Description will match target points with control points with the same description. Minimize Position Error will attempt to automatically transform the current target points so that they match up with the control points, creating control point-target point pairs. If such a transformation that meets these conditions exists, the target points will have their reference control points set to the control point they were paired with. After pressing ok, a dialog will display informing the user if the registration was successful. After all scans have been registered, the best thing to do is verify that they're all registered properly by viewing them in the same scene and verifying that surfaces look similar where the scans overlap.

Creating a Scan

Unlike clouds and meshes, scans can only be created from other scans. This is due to extra information required for the indexing of the cloud data into the scanner's image. To create a scan from a single source scan right click the source scan and select Create ⇒ Scan.

Typically, the default options give the best results. Scan Dimensions determines the height and width (in angles) of the new scan to create, From Scan will just use the ranges from the original scan and Specify will allow the user to specify their own custom angles. Scan Resolution determines the data density of the new scan, smaller Delta Angle values will give denser data, while larger resolutions values will do the same. The Scan Averaging determines the action to be taken when it is found that multiple scan points in the source data set fall under the same scan pixel in the new scan data set. Average All will average all color, position, and intensity values, throwing out the original data, while Use Farthest will only use the data point furthest form the scanner and throw away all other data points.

To create a scan from multiple source scans right click the scan fold where you wish to create the new scan and select Add ⇒ New.

All of the options on the right side of the dialog have the same functionality as the single source dialog. The tree structure on the left side of the dialog allows the user to choose the source scans to use for data. Clicking the red x next to a scan will turn it into green circle, signifying to use that scan as a data source.

Cleaning a Scan

To clean up scanner data to make it more uniform and remove possible outliers, right click the scan you wish to clean and select Clean from the menu.

Carlson Point Cloud has three separate methods of cleaning scans. The first of these methods is Remove Isolated Points, which searches all neighbor data points within a square with a side length of Search radius pixels around each pixel in the scanner image for valid data, if less than the maximum amount of valid neighbors specified is found, the point is deleted. The Smooth Spikes method reduces spikes in the mesh by finding any points whose distance from the scanner is larger than Spike threshold standard deviations from the average of the pixels in the search radius. The Fill gaps method searches each invalid point's neighbor's for the specified amount of invalid neighbors if less than the specified amount is found, then the invalid reading is changed to a valid reading with a range equal to the average of the neighbor points and color values equal to the average color values.

Resampling a Scan

To resample a scan, right click on the scan you wish to resample and select Resample.

The Step method of resampling steps through the scan using the step values provided for the step size. With a Theta and Phi value of 2 each, the scan will be reduced to 1/4th of its original size. The Grid method is somewhat more intelligent and divides the scan up into a grid where each grid block is of the specified size. It then averages the values found inside each block to a new single value for that entire grid block.

Tab Location(s): Project Tab
Prerequisite: Scanner Data