Documentation/Nightly/Modules/TrackerStabilizer

From SlicerWiki
Jump to: navigation, search
Home < Documentation < Nightly < Modules < TrackerStabilizer

For the stable Slicer documentation, visit the 4.8 page.


Introduction and Acknowledgements

This work is supported by NA-MIC, NCIGT, and the Slicer Community.
Author: Laurent Chauvin, Jayender Jagadeesan, Andras Lasso
Contact: Laurent Chauvin

NA-MIC  
NCIGT  
SPL  

This project is supported by National Institute of Health (5P01CA067165, 5R01CA124377, 5R01CA138586, 2R44DE019322, 7R01CA124377, 5R42CA137886, 8P41EB015898).

Module Description

TrackerStabilizer module allows to output a filtered transform node based on an tracker input (transform node). Tracking sensors are particularly usefull to track surgical tools, robots, patient motion, etc... . However, data imported in 3D Slicer from these devices are often noisy. To reduce the noise and smoothly control objects, such as 3D Slicer camera, the TrackerStabilizer module will apply a low-pass filter on input data. The cut-off frequency (i.e. the smoothing parameter) is adjustable by the user. It is important to notice that filters induce delay, and the smoother the motion is, the bigger the delay between the raw data and the filtered position will be.

Use Cases

The TrackerStabilizer module could be used in any situation requiring stable tracking data and not requiring a "real-time" information. Indeed, applying a filter on raw data will induce a delay (depending on choosen parameters) on the filtered position/orientation. An example could be to drive Slicer's virtual camera. Having some noise on the transformation driving the camera will cause the camera to "shake" which could be really distracting and uncomfortable to look at. By filtering this raw data, camera motion is smoothed.

Tutorials

N/A

Panels and their use

The GUI of the TrackerStabilizer module contains 4 elements:
  • Input Transform. This is the raw data, usually raw tracker data, represented by a vtkMRMLLinearTransformNode
  • Output Transform. This is the filtered transform represented also by a vtkMRMLLinearTransformNode. This node can be created directly from the list
  • Filter checkbox. This checkbox turn on/off the filtering
  • Smoothing slider. This slider control the smoothing parameter. In the left, smoother, with relatively important delay. In the right, faster (almost no delay), but noisier.
TrackerStabilizer GUI


Similar Modules

N/A

References

N/A

Information for Developers


This module is for now only a low-pass filter, but in the futur, several filters would be implemented to let the choice to the user.

Source code: https://github.com/lchauvin/Slicer-TrackerStabilizer