# SlicerIGT: Transform to Markup for real-time patient tracking using the Fiducial Registration Wizard

**URL:** <https://discourse.slicer.org/t/slicerigt-transform-to-markup-for-real-time-patient-tracking-using-the-fiducial-registration-wizard/8708>\
**Category:** Support\
**Tags:** registration, slicerigt, markups-fiducials\
**Created:** [October 8, 2019, 11:22am UTC](https://discourse.slicer.org/t/slicerigt-transform-to-markup-for-real-time-patient-tracking-using-the-fiducial-registration-wizard/8708 "2019-10-08T11:22:11Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![W.J.Heerink](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/w.j.heerink/32/4894_2.png) [@W.J.Heerink](https://discourse.slicer.org/u/W.J.Heerink)\
**Post date:** [October 8, 2019, 11:22am UTC](https://discourse.slicer.org/t/slicerigt-transform-to-markup-for-real-time-patient-tracking-using-the-fiducial-registration-wizard/8708/1 "2019-10-08T11:22:11Z")

</div>

Hi, I’m trying to use Slicer IGT to track and correct for changes in patient position in real-time. The patient is tracked with multiple 6DOF NDI aurora sensors that are read out by PlusServer and send to Slicer as transforms. From these sensors, I only use the position.

I would like to use the Fiducial Registration Wizard with Auto-update mode turned on, to register the current patient position with the initial patient position, in order to determine the most suitable average rigid transformation. However, the wizard requires markup fiducials as input and the option: “Place fiducials using transforms” does not update the fiducials when the transforms change in value.  
Is there a way to automatically update markup fiducials with the translational part from the transforms that are sent?

I found this thread ([https://github.com/openigtlink/SlicerOpenIGTLink/issues/67](https://github.com/openigtlink/SlicerOpenIGTLink/issues/67)) and I wonder if, when implemented, this would solve my problem. If so, is there may be a workaround to use in the meantime? Thanks!

Wout

---

<div class="post-metadata">

**Author:** ![lassoan](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lassoan/32/13_2.png) [@lassoan](https://discourse.slicer.org/u/lassoan)\
**Post date:** [October 8, 2019, 11:52am UTC](https://discourse.slicer.org/t/slicerigt-transform-to-markup-for-real-time-patient-tracking-using-the-fiducial-registration-wizard/8708/2 "2019-10-08T11:52:13Z")

</div>

From Plus you can send a transform for each optical marker as usual. In Slicer, you can write a few lines of Python script that adds an observer to a transform and updates a markup fiducial point. See [script repository](https://www.slicer.org/wiki/Documentation/Nightly/ScriptRepository#Get_a_notification_if_a_transform_is_modified) for examples.

---

<div class="post-metadata">

**Author:** ![W.J.Heerink](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/w.j.heerink/32/4894_2.png) [@W.J.Heerink](https://discourse.slicer.org/u/W.J.Heerink)\
**Post date:** [October 8, 2019, 11:57am UTC](https://discourse.slicer.org/t/slicerigt-transform-to-markup-for-real-time-patient-tracking-using-the-fiducial-registration-wizard/8708/3 "2019-10-08T11:57:08Z")

</div>

Thanks for the quick reply!
