Locate3D Overview

From Software Product Documentation
Revision as of 17:30, 15 January 2020 by Wikisysop (talk | contribs) (→‎Widgets)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
Language:  English  • français • italiano • português • español 

Locate3D tracks radiopaque beads in X-ray trials. It is most often used to track objects (e.g., bones and implants) with implanted beads. If the object contains three or more beads in fixed locations, and these 3D locations are known relative to the object's CT coordinate system, then the beads' 2D locations in the X-ray images can be used to calculate the object's 3D pose in the X-ray lab frame. Locate3D is thus similar to X4D, except that it uses multiple beads to determine the pose of an object, instead of the contours of the object itself. Locate3D requires that the configuration of the X-ray equipment has been calculated (with CalibrateDSX), and that the locations of the beads in the object's local frame have been determined (with Surface3D).

     Digitizing POIs

To digitize a POI for the current reporting time, select the POI by clicking on its name in the table in the Points of Interest widget. The table row will be highlighted in blue, and when you move the cursor into one of the X-ray windows, the cursor will change to a circle inside a square, with the POI name to the right. The circle represents the expected size of the POI on the X-ray image, which is dependent on the pixel size of the image and the radius of the POI, which is specified in the subject file. The square represents the region of the image that will be searched for the center of the POI (some of the outer pixels of the POI can be outside the square). The size of the square is controlled by the Click Search Factor parameter. A larger number makes it quicker and easier to digitize POIs, but you don't want the square to contain more than one POI. When you click the left mouse button, Locate3D will search the X-ray pixels within the square to determine which one is the best candidate for the center of the POI. This is done by using the Centroid Threshold parameter to separate the POI pixels from the background, and the Edge Threshold parameter to determine if these pixels represent a circular POI. The POI is assumed to be a bright circle on a dark background, with the center of the POI being the brightest. The 2D coordinates of the POI center in each view are calculated as the weighted center of the pixels above the Centroid Threshold.

Once you digitize the POI in one view (you can start with either one), a yellow line is drawn in the other view. This line is the projection of the point in the first view through the field of view of the second view, and its purpose is to help you identify the POI in the other view. You can then digitize the POI in the second view by clicking on a point near the line. If you make a mistake identifying the proper POI in the first view, you can press the Esc key to cancel the process. If you make a mistake after identifying the POI in the second view, you can remove the POI pose by unchecking the pose box in the POI table. Once you have digitized a POI, Locate3D automatically advances the current POI to the next one in the table that does not already have a pose.

Once you have identified the POIs for one or more reporting times, you can have Locate3D attempt to automatically identify them for other reporting times using the Propagate POIs command in the Tools menu. See the wiki entry for this command for more details.

Tutorials

How To: Track Objects Using Points of Interest

Menus

     File Menu
     

The Load Subject command loads a Subject file. This command can also be accessed with the Ctrl + O shortcut.

     

The Save Subject command saves the currently loaded subject to its existing Subject file. This command can also be accessed with the Ctrl + S shortcut.

     

The Save Subject As command saves the currently loaded subject to a new Subject file.

     

The Save POI Locations command saves three text files containing the coordinates of the current object’s POIs. The files are as follows:

  1. one with the 3D coordinates in the X-ray reference frame of all POIs for all frames,
  2. one for the first view with the 2D POI coordinates in the image frame of the view, and
  3. one for the second view with the 2D POI coordinates in the image frame of the view.

If a name for any of these files is already specified in the subject file, it is used to write the data to. If the file already exists, it is overwritten without notification. For any that is not specified, a file browser is displayed, allowing you to select the file and folder.

     

The Save Pose Maps command saves the pose map of each selected object in the current trial to a .csv file. This file contains 6 values for each pose: the XYZ translation and the XYZ Euler angles representing the transform from the X-ray lab frame to the object's local coordinate system (i.e., as if you were traveling from the lab frame to the object frame). If a name for the pose map file is not already specified in the subject file, you will be prompted to browse for the file to create. A link to this file will then be added to the subject file. Before the poses can be saved, they must be calculated using the Compute Object Poses from POIs command.

     
The Save Pose Maps As command saves the pose map for each selected object in the current trial to a new .csv file. You will be prompted to browse for a new file for each object. A link to this new file will then be added to the Subject file.
     

The Save Object Transforms command saves the pose map of each selected object in the current trial to a .txt file. This file contains a 4x4 transform for each pose, expressing the transform from the X-ray lab frame to the object's local coordinate system (i.e., as if you were traveling from the lab frame to the object frame). If a name for the transforms file is not already specified in the subject file, you will be prompted to browse for the file to create. A link to this file will then be added to the subject file. Because these transforms are calculated from the object poses, the Compute Object Poses from POIs command must be used before the transforms can be saved.

     

The Save Landmark Locations command saves a text file with the 3D coordinates of all landmarks on the current object for all frames that have poses. These locations are calculated using the object poses, so the Compute Object Poses from POIs command must be used before the landmarks can be saved. If a name for the landmarks file is not already specified in the subject file, you will be prompted to browse for the file to create. A link to this file will then be added to the subject file.

     

The Exit command exits the program and all unsaved data will be lost. The program can also be closed by using the X in the top right corner of the program window.

     View Menu

[File:Locate3D_ViewMenu.jpg]]

     

The Show All POIs command toggles the display of all of the POIs for all objects in the current trial. The Ctrl + A shortcut can also be used.

     

The Show Body Reference Frame command toggles the display of the reference frame for the current object, as long as a local frame is defined in the subject file and the pose for the current frame has been calculated. The Ctrl + R shortcut can also be used.

     

The Show Landmarks command toggles the display of all of the landmarks for the current object. The Ctrl + L shortcut can also be used.

     

The DSX Configuration command toggles the display of the dockable widget that shows the current session’s objects. The Ctrl + Shift + D shortcut can also be used.

     

The Points of Interest command toggles the display of the dockable widget that shows the details of the points of interest. The Ctrl + Shift + I shortcut can also be used.

     

The Parameters command toggles the display of the dockable Parameters widget. The Ctrl + Shift + P shortcut can also be used.

     

The POI Graphs command toggles the display of the dockable widget that shows the XYZ coordinate graphs of the currently selected POIs. The Ctrl + Shift + G shortcut can also be used.

     Tools Menu
     

The Propagate POIs command propagates all POIs in the current object through all of the frames selected in the Propagate Range slider. For each POI, Locate3D fits a GCV spline to the poses in that POI's pose map (as shown in the POI Graphs widget). For each reporting time in the range, if the POI does not already have a pose at that time, Locate3D interpolates the X, Y, and Z splines to calculate the expected location of the POI in each X-ray view. A region of the X-ray image around this point is then searched for a suitable location of the POI center. The size of this region is determined by the Propagation Search Factor parameter. If the POI moves a lot from frame to frame and this movement is not adequately predicted by the splines, you make need to increase the Propagation Search Factor. However, if this parameter is too large, or if several POIs are close to each other, Locate3D may misidentify POIs during propagation.
The Ctrl + P shortcut can also be used to run this command.

     

The Compute Object Poses from POIs command calculates the poses of the current object in all frames, using the POI locations. For each frame, if three or more POIs have poses, Locate3D will calculate the object pose using a least-squares optimization (fitting the POIs defined in the 3D voxel data to the POIs defined in the X-ray coordinate system).
The Ctrl + C shortcut can also be used to run this command.

     

The Recalculate 3D POIs command currently has no function.
The Ctrl + C shortcut can also be used to run this command.

     Help Menu
     

The Help command opens the Locate3D wiki page in the default browser. The F1 shortcut can also be used.

     

The About option displays a dialog with information about Locate3D, including the installed version number. It also contains the Deactivate button, for deactivating your DSX suite license.

Widgets

     DSX Configuration
     Subject

The Subject field is automatically populated with the ID of the subject when you load a subject file.

     Session

The Session drop down menu is automatically populated with all of the sessions available for the current subject.

     Configuration

The Configuration drop down menu is automatically populated with all of the configurations available for the current session.

     Trial

The Trial drop down menu is automatically populated with all of the trials available for the current configuration.

     Object

The Object list is automatically populated with all of the objects in the current trial. When an object is selected, its POIs are displayed in the Points of Interest widget.

     Points of Interest

     Propagate Range

The Propagate Range slider lets you specify the range of frames over which the Propagate POIs command (in the Tools menu) operates. Once you have digitized a POI in one or more frames of a trial, the Propagate POIs command uses the spline through the poses (shown in the graphs) to attempt to digitize the POI in all frames in this range that do not already have a pose.

     POIs

There are six columns in the POI table:

Name is the name of the POI, which is used to identify the POI in the X-ray windows and in all 2D and 3D coordinate files. It can be changed by double clicking on the cell and typing in a new name.
Pose is a checkbox which is checked when the POI's 3D location is defined for the current frame. Deselecting it deletes its location for the current frame.
Visibility toggles the visibility of the POI in the X-ray windows. It does not affect the presence or absence of locations in the pose map.
Graph toggles the visibility of the POI in the POI Graphs Widget.
Trail toggles the visibility of the POI's entire pose map in the X-ray windows.
Color controls the color of the POI in both the X-ray windows and the POI Graphs Widget. Double clicking on the color cell opens a Select Color dialogue which allows you to change the color.
     POI Parameters

The POI Parameters widget displays the parameters that govern the digitization of POIs in the X-ray images.

     POI Scale
POI Scale is used to calculate the expected radius, in pixels, of the POI in the X-ray images. The expected radius is the physical size of the POI multiplied by the scale factor, divided by the pixel size. The scale factor should increase with the distance between the POI and the image plane. The default value is 1.0.
     Click Search Factor

Click Search Factor is used when manually digitizing POIs in the X-ray images. If you click at point X,Y in an image, a region of the image around this point is searched for the best location of a grayscale centroid. This region is a square centered at X,Y with sides equal to two times the expected radius of the POI times the Click Search Factor. This factor should be set small enough so that the search region includes only the POI you're currently digitizing. The default value is 1.25.

     Propagation Search Factor

Propagation Search Factor is used when propagating POIs in the X-ray images. In order to propagate a POI with coordinates X,Y in one frame to the next frame, a region of the next frame is searched for the best location of a grayscale centroid. This region is a square centered at X,Y with sides equal to two times the expected radius of the POI times the propagation search factor. This factor should be set large enough so that the search region captures the movement of the POI from one frame to the next, but small enough so that it does not include other POIs. The default value is 2.0.

     Centroid Threshold

Centroid Threshold is the relative threshold for identifying pixels that belong to the POI. Once a grayscale region of an X-ray image has been identified as a POI, its centroid is calculated by a weighted average of all the pixels that have an intensity value greater than this percentage (0.0 to 1.0) of the maximum intensity. The default value is 0.25.

     Edge Threshold

Edge Threshold is the relative threshold for identifying suitable POIs. For a grayscale region in an X-ray image to be considered a POI, the average edge value within the region must be at least this percentage (0.0 to 1.0) of the maximum edge value. The default value is 0.10.

     Pose Map Cutoff Frequency

Pose Map Cutoff Frequency is the low-pass cut-off frequency for smoothing the cubic splines in the POI pose maps. The default value is 20.0. Smoothing can be turned off by using a value of 0.0 or less.

     POI Graphs

The POI Graphs widget displays graphs of the X, Y, and Z coordinates of the selected POIs for the current trial.

As the cursor is moved around the graph a crosshair shows the current coordinates. If the cursor is close enough to one of the data points for a POI it will snap to it and display that point's coordinates in the POI's color. To move the view of a graph in the Y direction, press the left mouse button and drag the cursor up or down. The mouse wheel can also be used to zoom the graph in the Y direction. Press the R key to reset the graph to the default view. The X axis of the graphs cannot be changed.

Data points cannot be added or moved via the graphs, but they can be deleted. To select one or more points, press the Ctrl key and then box-select them (hold the left mouse button down while sweeping the diagonal of a box with the cursor). Press the Delete key to delete the points. Press the Esc key to deselect them.

     X-ray Windows

The X-ray windows display the X-rays of each view, as well as POIs, POI trails, reference frames, and landmarks. The Points of Interest widget lets you choose which POIs and POI trails to display on the X-rays. The View menu has commands for toggling the display of the reference frame and landmarks of the current object, and the POIs of all of the other objects.

The following mouse and keyboard commands can be used in the X-ray windows:

Page Up/Down: moves to the previous/next reporting time.
The mouse wheel zooms the X-ray image in and out.
Press and hold the left mouse button to change the X-ray image contrast (move cursor left/right) and brightness (move cursor up/down).
Press and hold the middle mouse button to pan the X-ray image within the window.
'R' resets the position of the X-ray image in the window.
'Shift-R' resets the image brightness and contrast.
Retrieved from ""