other:dsx:x4d:x4d_overview
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
other:dsx:x4d:x4d_overview [2024/07/17 15:44] – created sgranger | other:dsx:x4d:x4d_overview [2025/06/02 17:57] (current) – Updated "mocap" to "motion capture" where possible. wikisysop | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== X4D Overview ====== | ====== X4D Overview ====== | ||
- | ==== Contents ==== | + | The DSX Suite application |
- | + | - X-ray images are smoothed with a convolution filter and then an edge detection algorithm is run. The final processed X-ray image used for tracking is the edge detection image times a weighting factor, plus the smoothed intensity image. | |
- | + | - DRR images are not smoothed but are input to the edge detection algorithm. The final processed DRR image is the edge detection image time a weighting factor, plus the original DRR image. | |
- | + | ||
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[#Menus|5 Menus]] | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | * [[# | + | |
- | + | ||
- | + | ||
- | + | ||
- | X4D tracks 3D objects (bones, implants, etc.) in X-ray images by generating digitally reconstructed radiographs (DRRs) of the objects and matching them to the X-ray images. It requires that the 3D X-ray configuration parameters be defined in the subject file and that the X-ray images be corrected. | + | |
- | + | ||
- | To match DRR images to X-ray images, both sets of images | + | |
X4D has a [[Other: | X4D has a [[Other: | ||
- | {{: | + | {{: |
- | ==== Tutorials ==== | + | ===== Tutorials |
- | [[Other: | + | User should start with this initial tutorial to begin using X4D: |
+ | - [[Other: | ||
- | [[Other: | + | Once the initial tutorial is complete, three "How To" tutorials are available for specific processes within X4D: |
+ | - [[Other: | ||
+ | - [[Other: | ||
+ | - [[Other: | ||
- | [[Other: | + | ===== Bone Tracking ===== |
- | [[Other:DSX:X4D:Tutorials: | + | Read the following pages to understand the bone tracking processes you are implementing in X4D: |
+ | - [[other:dsx:x4d:4d_optimization|4D Optimization]] | ||
+ | - [[other:dsx: | ||
- | ==== Bone Tracking | + | ===== Motion Capture Data ===== |
- | == 4D Optimization == | + | Learn how to [[other: |
- | == Matching Xray and DRR Images | + | ===== Image Metrics ===== |
- | ==== Motion Capture Data ==== | + | These image metrics are used by X4D's optimization algorithm to compare the X-ray and DRR images during object tracking: |
+ | - [[other: | ||
+ | - [[other: | ||
- | == Working with Motion Capture Data == | + | ===== Menus ===== |
- | ==== Image Metrics ==== | + | The X4D application contains six menus: File, View, Queue, Pose Maps, Options, and Help. |
- | The measurement used by the optimization algorithm to compare the X-ray and DRR images during object tracking. | + | ==== File Menu ==== |
- | + | ||
- | == Pixel Difference | + | |
- | + | ||
- | == Conditional Entropy == | + | |
- | + | ||
- | ==== Menus ==== | + | |
- | + | ||
- | == File Menu == | + | |
{{: | {{: | ||
* **Open Subject... (Ctrl + O)** This command loads a subject file. | * **Open Subject... (Ctrl + O)** This command loads a subject file. | ||
- | |||
* **Save Subject (Ctrl + S)** This command saves the currently loaded subject to its existing subject file. | * **Save Subject (Ctrl + S)** This command saves the currently loaded subject to its existing subject file. | ||
- | |||
* **Save Subject As...** This command saves the currently loaded subject to a new subject file. | * **Save Subject As...** This command saves the currently loaded subject to a new subject file. | ||
- | |||
* **Load Pose Maps...** This command loads an existing pose map file for each selected object. You will be prompted to browse for each file, which must be saved as a .csv file. | * **Load Pose Maps...** This command loads an existing pose map file for each selected object. You will be prompted to browse for each file, which must be saved as a .csv file. | ||
- | |||
* **Save Pose Maps** This 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' | * **Save Pose Maps** This 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' | ||
- | |||
* **Save Pose Maps As...** This 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. | * **Save Pose Maps As...** This 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. | ||
- | |||
* **Save Object Transforms** This 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' | * **Save Object Transforms** This 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' | ||
- | |||
* **Save Landmarks** This command saves the locations in the X-ray lab frame of each selected object' | * **Save Landmarks** This command saves the locations in the X-ray lab frame of each selected object' | ||
- | |||
* **Export Poses to CMZ** This command exports the pose map of each selected object in the current trial to the session' | * **Export Poses to CMZ** This command exports the pose map of each selected object in the current trial to the session' | ||
- | |||
* **Exit (Alt + E)** This command exits the program. The program can also be closed using the X in the top right corner of the program window. | * **Exit (Alt + E)** This command exits the program. The program can also be closed using the X in the top right corner of the program window. | ||
- | \\ | + | ==== View Menu ==== |
- | + | ||
- | + | ||
- | + | ||
- | == View Menu == | + | |
{{: | {{: | ||
* **Body Reference Frames (Alt + R)** toggles the display of the local coordinate systems of the selected objects in the X-ray windows and the 3D view. | * **Body Reference Frames (Alt + R)** toggles the display of the local coordinate systems of the selected objects in the X-ray windows and the 3D view. | ||
- | |||
* **Body Landmarks (Alt + L)** toggles the display of the landmarks of the selected objects in the X-ray windows and the 3D view. | * **Body Landmarks (Alt + L)** toggles the display of the landmarks of the selected objects in the X-ray windows and the 3D view. | ||
- | |||
* **DSX Configuration (Ctrl + Shift + C)** toggles the appearance of the dockable //DSX Configuration// | * **DSX Configuration (Ctrl + Shift + C)** toggles the appearance of the dockable //DSX Configuration// | ||
- | + | | |
- | | + | |
* **Output (Ctrl + Shift + O)** toggles the appearance of the dockable //Output// window, which shows informational and error messages. | * **Output (Ctrl + Shift + O)** toggles the appearance of the dockable //Output// window, which shows informational and error messages. | ||
- | |||
* **Xray/DRR Settings (Ctrl + Shift + X)** toggles the appearance of the dockable //Xray/DRR Settings// widget, which gives you access to the settings used to process the X-ray and DRR images. | * **Xray/DRR Settings (Ctrl + Shift + X)** toggles the appearance of the dockable //Xray/DRR Settings// widget, which gives you access to the settings used to process the X-ray and DRR images. | ||
- | |||
* **Pose Maps (Ctrl + Shift + A)** toggles the appearance of the dockable //Pose Maps// widget, which has commands for editing the pose maps. | * **Pose Maps (Ctrl + Shift + A)** toggles the appearance of the dockable //Pose Maps// widget, which has commands for editing the pose maps. | ||
- | |||
* **Object Tracking (Ctrl + Shift + T)** toggles the appearance of the dockable //Object Tracking// widget, which lets you track objects in the X-ray images. | * **Object Tracking (Ctrl + Shift + T)** toggles the appearance of the dockable //Object Tracking// widget, which lets you track objects in the X-ray images. | ||
- | |||
* **Image Optimization (Ctrl + Shift + I)** toggles the appearance of the dockable //Image Optimization// | * **Image Optimization (Ctrl + Shift + I)** toggles the appearance of the dockable //Image Optimization// | ||
- | |||
* **Graphs (Ctrl + Shift + G)** toggles the appearance of the dockable //Graphs// widget, which displays the pose maps of the selected objects. | * **Graphs (Ctrl + Shift + G)** toggles the appearance of the dockable //Graphs// widget, which displays the pose maps of the selected objects. | ||
- | + | | |
- | | + | |
* **Optimization Job Queue (Ctrl + Shift + Q)** toggles the appearance of the dockable // | * **Optimization Job Queue (Ctrl + Shift + Q)** toggles the appearance of the dockable // | ||
- | \\ | + | ==== Queue Menu ==== |
- | + | ||
- | + | ||
- | + | ||
- | == Queue Menu == | + | |
{{: | {{: | ||
* **Add Jobs from File** loads a job queue file (*.xjq). The jobs in the file are appended to the end of the queue. | * **Add Jobs from File** loads a job queue file (*.xjq). The jobs in the file are appended to the end of the queue. | ||
- | |||
* **Save Jobs to File** saves the current job queue to a file (*.xjq). | * **Save Jobs to File** saves the current job queue to a file (*.xjq). | ||
- | |||
* **Clear** clears the current job queue (no undo!). | * **Clear** clears the current job queue (no undo!). | ||
- | |||
* **Run** runs all the jobs in the queue. | * **Run** runs all the jobs in the queue. | ||
- | |||
* **Abort** aborts a currently running job queue. | * **Abort** aborts a currently running job queue. | ||
- | + | ==== Pose Maps Menu ==== | |
- | == Pose Maps Menu == | + | |
{{: | {{: | ||
Line 159: | Line 89: | ||
* **Objects Affected** Specifies the objects that are affected by the actions in this menu. Available options are: a) All Selected For Display and b) All Selected For Optimization. | * **Objects Affected** Specifies the objects that are affected by the actions in this menu. Available options are: a) All Selected For Display and b) All Selected For Optimization. | ||
- | |||
* **Add Current Pose to Maps (Alt + A)** adds the current pose of each object specified in the //Objects Affected// combo box to its pose map. | * **Add Current Pose to Maps (Alt + A)** adds the current pose of each object specified in the //Objects Affected// combo box to its pose map. | ||
- | |||
* **Clear Current Poses from Maps (Alt + C)** removes the pose for the current time of each object specified in the //Objects Affected// combo box from its pose map. | * **Clear Current Poses from Maps (Alt + C)** removes the pose for the current time of each object specified in the //Objects Affected// combo box from its pose map. | ||
- | |||
* **Clear Pose Maps** removes all poses from the pose map for each object specified in the //Objects Affected// combo box. | * **Clear Pose Maps** removes all poses from the pose map for each object specified in the //Objects Affected// combo box. | ||
- | |||
* **Smooth Pose Maps (Alt + M)** smooths the poses in the tracking range for each object specified in the //Objects Affected// combo box, using the cutoff frequency specified in the graph widget. | * **Smooth Pose Maps (Alt + M)** smooths the poses in the tracking range for each object specified in the //Objects Affected// combo box, using the cutoff frequency specified in the graph widget. | ||
- | |||
* **Fill Pose Maps (Alt + I)** adds a pose for each reporting time in the tracking range that does not already have one to the pose map of each object specified in the //Objects Affected// combo box. | * **Fill Pose Maps (Alt + I)** adds a pose for each reporting time in the tracking range that does not already have one to the pose map of each object specified in the //Objects Affected// combo box. | ||
- | |||
* **Clean Pose Maps (Alt + N)** removes all poses that are not at one of the trial' | * **Clean Pose Maps (Alt + N)** removes all poses that are not at one of the trial' | ||
- | \\ | + | ==== Options Menu ==== |
- | + | ||
- | + | ||
- | + | ||
- | == Options Menu == | + | |
{{: | {{: | ||
* **Settings...** opens the Settings dialog window. | * **Settings...** opens the Settings dialog window. | ||
- | |||
* **Select GPUs... (Alt + G)** opens a dialog window that lets you assign GPUs to the X-ray views. | * **Select GPUs... (Alt + G)** opens a dialog window that lets you assign GPUs to the X-ray views. | ||
- | + | ==== Help Menu ==== | |
- | == Help Menu == | + | |
{{: | {{: | ||
* **Help (F1)** opens the X4D wiki page in the default browser. | * **Help (F1)** opens the X4D wiki page in the default browser. | ||
- | |||
* **System Information...** opens a dialog window with information about your computer, including available RAM and graphics card specifications. | * **System Information...** opens a dialog window with information about your computer, including available RAM and graphics card specifications. | ||
- | |||
* **About...** displays a dialog with information about X4D, including the installed version number. It also contains the // | * **About...** displays a dialog with information about X4D, including the installed version number. It also contains the // | ||
+ | ===== Widgets ===== | ||
- | ==== Widgets ==== | + | The X4D application contains 12 different widgets: |
- | + | - [[other: | |
- | == DSX Configuration | + | - [[other: |
- | + | - [[other: | |
- | == X-ray and DRR Settings | + | - [[other: |
- | + | - [[other: | |
- | == Pose Maps == | + | - [[other: |
- | + | - [[other: | |
- | == Object Tracking | + | - [[other: |
- | + | - [[other: | |
- | == Image Optimization | + | - [[other: |
- | + | - [[other: | |
- | == Graphs | + | - [[other: |
- | + | ||
- | == Mocap Model == | + | |
- | + | ||
- | == 3D View == | + | |
- | + | ||
- | == X-ray Windows == | + | |
- | + | ||
- | == Optimization Job Queue == | + | |
- | + | ||
- | == Output Window | + | |
- | + | ||
- | == Settings | + | |
- | + | ||
- | == Select GPUs == | + | |
- | + | ||
other/dsx/x4d/x4d_overview.1721231065.txt.gz · Last modified: 2024/07/17 15:44 by sgranger