Thanks Alvaro,<br><br>I found a similar bug in my code - I was calling ObserveTransformEventsFrom() in my callback function, adding an additional observer each time. Correcting that has fixed the decreasing rate over time.<br>
<br>~Jake<br><br> <br><div class="gmail_quote">2010/5/13 Alvaro Gómez <span dir="ltr"><<a href="mailto:agomez@fing.edu.uy">agomez@fing.edu.uy</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Hi Jake:<br>
<br>
We had a similar problem when acquiring repeatedly sets of N transforms. We were using a code similar to that of igstkPivotCalibration. For each set of N transforms we were adding a new observer (TrackerToolTransformUpdateEvent) to the trackertool and then after each set, the acquisition performance degraded as the same transform was retrieved more times. We were forgetting to remove the observer after each set.<br>
<br>
Hope it helps but most probably the problem is not as simple as this.<br>
<br>
Best regards,<br>
Alvaro<br>
<br>
<br>
El día miércoles, 12 de mayo de 2010 04:04:45 p.m.<br>
Jake McIvor <<a href="mailto:jdmcivor@interchange.ubc.ca" target="_blank">jdmcivor@interchange.ubc.ca</a>><br>
escribió:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div><div></div><div class="h5">
I have an application that logs transform data to a file. A callback function is attached to an observer watching for TrackerToolTransformUpdateEvent. Within the callback function I use a transform observer to check for and get the latest transform, and then log it to a file.<br>
<br>
Over time, the rate at which these transforms are recorded drops significantly. I came across a section of Christopher Heath's thesis, Disablement of a Surgical Drill Via CT Guidance to Protect Vital Anatomy that describes a similar issue:<br>
<br>
"A method was added to Landmark3DRegister to allow for pass by reference retrieval of transforms instead of using callbacks. This was implemented to prevent an issue that occurs with the callback method utilized by IGSTK when finding the transform many times."<br>
<br>
Does anyone have any insight on what is happening or how to improve performance?<br>
<br>
Cheers,<br>
<br>
Jake<br>
<br>
--<br>
Jake McIvor<br>
MASc Candidate, Biomedical Engineering<br>
University of British Columbia<br>
<br>
<br>
<br></div></div>
------------------------------------------------------------------------<br>
<br>
_______________________________________________<br>
Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
<br>
Visit other Kitware open-source projects at <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
<br>
Follow this link to subscribe/unsubscribe:<br>
<a href="http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-users" target="_blank">http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-users</a><br>
</blockquote>
</blockquote></div><br>