Medical Imaging Interaction Toolkit
2023.12.00
Medical Imaging Interaction Toolkit
|
An object of this class represents the Optitrack device. You can add tools to this device, then open the connection and start tracking. The tracking device will then continuously update the tool coordinates. Remember that it will be necessary to to have a license for using the Optitrack System. See https://www.naturalpoint.com/ for details. More...
#include <mitkOptitrackTrackingDevice.h>
Public Types | |
typedef mitk::TrackingDeviceType | OptiTrackTrackingDeviceType |
Public Types inherited from mitk::TrackingDevice | |
enum | RotationMode { RotationStandard, RotationTransposed } |
enum | TrackingDeviceState { Setup, Ready, Tracking } |
Public Member Functions | |
mitkClassMacro (OptitrackTrackingDevice, mitk::TrackingDevice) | |
bool | IsDeviceInstalled () override |
bool | OpenConnection () override |
Open the Connection with the Tracker. Calls LoadCalibration function and set the system up with the calibration file. Remember that you have to set a calibration file first to open a correct connection to the Optical Tracking System. More... | |
bool | CloseConnection () override |
Close the Connection with the Tracker. Also CleanUp the Optitrack variables using the API: TT_CleanUp and TT_ShutDown. Sometimes API does not work properly and some problems during the Clean Up has been reported. More... | |
bool | StartTracking () override |
Start to Track the tools already defined. If no tools are defined for this tracker, it returns an error. Tools can be added using either AddToolByDescriptionFile or AddToolsByConfigurationFiles. More... | |
bool | StopTracking () override |
Stop the Tracking Thread and tools will not longer be updated. More... | |
TrackingTool * | GetTool (unsigned int toolNumber) const override |
Return the tool pointer of the tool number toolNumber. More... | |
OptitrackTrackingTool * | GetOptitrackTool (unsigned int toolNumber) const |
Return the tool pointer of the tool number toolNumber. More... | |
unsigned int | GetToolCount () const override |
Returns the number of defined tools. More... | |
virtual void | SetExp (int _arg) |
Sets the directory where the calibration file of the MicronTracker can be found. More... | |
virtual int | GetExp () |
Gets the current calibration directory. More... | |
virtual void | SetLed (int _arg) |
Sets the directory where the calibration file of the MicronTracker can be found. More... | |
virtual int | GetLed () |
Gets the current calibration directory. More... | |
virtual void | SetThr (int _arg) |
Sets the directory where the calibration file of the MicronTracker can be found. More... | |
virtual int | GetThr () |
Gets the current calibration directory. More... | |
void | SetCalibrationPath (std::string calibrationPath) |
Sets the file where the calibration of the OptitrackTracker can be found. More... | |
virtual std::string | GetcalibrationPath () |
Gets the current calibration file. More... | |
void | ThreadStartTracking () |
Start the Tracking Thread for the tools. More... | |
void | TrackTools () |
Update each tool location in the list m_AllTools. More... | |
bool | LoadCalibration () |
Load the Calibration file to the Optitrack System and set the cameras in calibrated locations. More... | |
bool | SetCameraParams (int exposure, int threshold, int intensity, int videoType=4) |
Set the Cameras Exposure, Threshold and Intensity of IR LEDs. By Default it set the Video type to 4: Precision Mode for tracking //== VideoType: //== 0 = Segment Mode //== 1 = Grayscale Mode //== 2 = Object Mode //== 4 = Precision Mode //== 6 = MJPEG Mode (V100R2 only) More... | |
bool | InitializeCameras () |
Initialize the Optitrack System. More... | |
bool | AddToolByDefinitionFile (std::string fileName) |
Add a new tool using a text file which described the tool. The file must to have the next structure ToolName #NumberOfMarkers X Y Z - for the first marker X Y Z - for the second marker ... X Y Z - for the last marker, the number #NumberOfMarkers X Y Z - for the PIVOT point. More... | |
Public Member Functions inherited from mitk::TrackingDevice | |
mitkClassMacroItkParent (TrackingDevice, itk::Object) | |
virtual mitk::TrackingTool * | GetToolByName (std::string name) const |
Returns the tool with the given tool name. More... | |
virtual void | SetRotationMode (RotationMode r) |
virtual RotationMode | GetRotationMode () const |
TrackingDeviceState | GetState () const |
return current object state (Setup, Ready or Tracking) More... | |
TrackingDeviceType | GetType () const |
Deprecated! Use the more specific getData or GetTrackingDeviceName instead. return device type identifier. More... | |
void | SetType (TrackingDeviceType type) |
Deprecated! Use the more specific setDeviceData instead. set device type. More... | |
std::string | GetTrackingDeviceName () |
Convenient Method to get the Name of the Tracking Device. This is identical with GetData().Line and can be used to compare with TrackingDeviceTypeInformation::GetTrackingDeviceName() to check if you have a specific device. More... | |
TrackingDeviceData | GetData () const |
return device data More... | |
void | SetData (TrackingDeviceData data) |
set device type More... | |
virtual bool | AutoDetectToolsAvailable () |
virtual bool | AddSingleToolIsAvailable () |
virtual mitk::NavigationToolStorage::Pointer | AutoDetectTools () |
Static Public Member Functions | |
static Pointer | New () |
Protected Member Functions | |
OptitrackTrackingDevice () | |
~OptitrackTrackingDevice () override | |
Protected Member Functions inherited from mitk::TrackingDevice | |
void | SetState (TrackingDeviceState state) |
change object state More... | |
TrackingDevice () | |
~TrackingDevice () override | |
Additional Inherited Members | |
Protected Attributes inherited from mitk::TrackingDevice | |
TrackingDeviceData | m_Data |
current device Data More... | |
bool | m_StopTracking |
signal stop to tracking thread More... | |
std::mutex | m_StopTrackingMutex |
mutex to control access to m_StopTracking More... | |
std::mutex | m_TrackingFinishedMutex |
mutex to manage control flow of StopTracking() More... | |
std::mutex | m_StateMutex |
mutex to control access to m_State More... | |
RotationMode | m_RotationMode |
defines the rotation mode Standard or Transposed, Standard is default More... | |
An object of this class represents the Optitrack device. You can add tools to this device, then open the connection and start tracking. The tracking device will then continuously update the tool coordinates. Remember that it will be necessary to to have a license for using the Optitrack System. See https://www.naturalpoint.com/ for details.
Documentation:
Definition at line 52 of file mitkOptitrackTrackingDevice.h.
Definition at line 67 of file mitkOptitrackTrackingDevice.h.
|
protected |
|
overrideprotected |
bool mitk::OptitrackTrackingDevice::AddToolByDefinitionFile | ( | std::string | fileName | ) |
Add a new tool using a text file which described the tool. The file must to have the next structure ToolName #NumberOfMarkers X Y Z - for the first marker X Y Z - for the second marker ... X Y Z - for the last marker, the number #NumberOfMarkers X Y Z - for the PIVOT point.
mitk::IGTException | Throws an exception if Tool could not be added or System is not Initialized |
|
overridevirtual |
Close the Connection with the Tracker. Also CleanUp the Optitrack variables using the API: TT_CleanUp and TT_ShutDown. Sometimes API does not work properly and some problems during the Clean Up has been reported.
mitk::IGTException | Throws an exception if the System cannot ShutDown now or was not initialized. |
Implements mitk::TrackingDevice.
|
virtual |
Gets the current calibration file.
|
virtual |
Gets the current calibration directory.
|
virtual |
Gets the current calibration directory.
OptitrackTrackingTool* mitk::OptitrackTrackingDevice::GetOptitrackTool | ( | unsigned int | toolNumber | ) | const |
Return the tool pointer of the tool number toolNumber.
toolNumber | The number of the tool which should be given back. |
mitk::IGTException | Throws an exception if there is the required tool does not exist. |
|
virtual |
Gets the current calibration directory.
|
overridevirtual |
Return the tool pointer of the tool number toolNumber.
toolNumber | The number of the tool which should be given back. |
Implements mitk::TrackingDevice.
|
overridevirtual |
Returns the number of defined tools.
Implements mitk::TrackingDevice.
bool mitk::OptitrackTrackingDevice::InitializeCameras | ( | ) |
Initialize the Optitrack System.
mitk::IGTException | Throws an exception if the Optitrack Tracking System cannot be initialized |
|
overridevirtual |
Reimplemented from mitk::TrackingDevice.
bool mitk::OptitrackTrackingDevice::LoadCalibration | ( | ) |
Load the Calibration file to the Optitrack System and set the cameras in calibrated locations.
mitk::IGTException | Throws an exception if Calibration Path is empty, the System cannot load a calibration file or System is not ready for load a calibration file because it has not been initialized yet |
mitk::OptitrackTrackingDevice::mitkClassMacro | ( | OptitrackTrackingDevice | , |
mitk::TrackingDevice | |||
) |
|
static |
|
overridevirtual |
Open the Connection with the Tracker. Calls LoadCalibration function and set the system up with the calibration file. Remember that you have to set a calibration file first to open a correct connection to the Optical Tracking System.
mitk::IGTException | Throws an exception if InitializeCameras or LoadCalibration failed. |
Implements mitk::TrackingDevice.
void mitk::OptitrackTrackingDevice::SetCalibrationPath | ( | std::string | calibrationPath | ) |
Sets the file where the calibration of the OptitrackTracker can be found.
bool mitk::OptitrackTrackingDevice::SetCameraParams | ( | int | exposure, |
int | threshold, | ||
int | intensity, | ||
int | videoType = 4 |
||
) |
Set the Cameras Exposure, Threshold and Intensity of IR LEDs. By Default it set the Video type to 4: Precision Mode for tracking //== VideoType: //== 0 = Segment Mode //== 1 = Grayscale Mode //== 2 = Object Mode //== 4 = Precision Mode //== 6 = MJPEG Mode (V100R2 only)
mitk::IGTException | Throws an exception if System is not Initialized |
|
virtual |
Sets the directory where the calibration file of the MicronTracker can be found.
|
virtual |
Sets the directory where the calibration file of the MicronTracker can be found.
|
virtual |
Sets the directory where the calibration file of the MicronTracker can be found.
|
overridevirtual |
Start to Track the tools already defined. If no tools are defined for this tracker, it returns an error. Tools can be added using either AddToolByDescriptionFile or AddToolsByConfigurationFiles.
mitk::IGTException | Throws an exception if the System is not in State Ready . |
Implements mitk::TrackingDevice.
|
overridevirtual |
Stop the Tracking Thread and tools will not longer be updated.
mitk::IGTException | Throws an exception if System is not in State Tracking. |
Reimplemented from mitk::TrackingDevice.
void mitk::OptitrackTrackingDevice::ThreadStartTracking | ( | ) |
Start the Tracking Thread for the tools.
void mitk::OptitrackTrackingDevice::TrackTools | ( | ) |
Update each tool location in the list m_AllTools.
mitk::IGTException | Throws an exception if the getting data operation failed for a defined tool |