[IGSTK-Users] Flickering Spatial Object

Andrew Wiles awiles at ndigital.com
Thu Aug 19 11:11:15 EDT 2010


Hi Alvaro,

Thanks for your email.  I used Jake McIvor's suggestion to increase the
nonFlickeringConstant to 25ms.  It improved things somewhat but it is
still not great.  I need to acquire data at the fastest rate of the
Aurora.  The graphical portion of my application is useful to the user
but not critical, so I am living with the flickering although it is a
nuisance.

Cheers.
Andrew

--------------------
Andrew D. Wiles, PhD, PEng
Research Scientist, Medical Division
NDI
103 Randall Drive
Waterloo, ON, Canada, N2V 1C5
Telephone: +1 (519) 884-5142 ext. 314
Toll Free: +1 (877) 634-6340
Global: ++ (800) 634-634-00
Facsimile: +1 (519) 884-5184
Website: www.ndigital.com
--------------------

>>> Alvaro Gómez <agomez at fing.edu.uy> 8/19/2010 10:55 AM >>>
Hi Andrew,

Have you received an answer to this question ? I'm also interested in 
this topic.

In my experience, timing is a difficult problem in IGSTK.
In some classes such as the CrossHairObjectRepresentation, 
ImageResliceObjectRepresentation, MeshResliceObjectRepresentation, 
ToolProjectionObjectRepresentation the validity time is hard-coded with

different values in each VerifyTimeStamp( ) method.
In ToolProjectionObjectRepresentation::VerifyTimeStamp() you can find 
the line "// fixme: we are having severe blinking problems here" which

shows that this is difficult even for the main developers.

In your case, I think that you'll have less or none flickering if you 
reduce the acquisition frequency until the validity time of the tracker

tool transforms is "long enough". If you acquire at 40Hz the validity
of 
the transforms from the tracker tool are very short and will probably 
not be valid at the moment the view has its refresh.

Please, let me know if you find other solutions to the flickering. For

the moment I haven't found a consistent way to set all the different 
refresh rates (tracker and views) in order to be sure there will not be

flickering.

Regards,
Alvaro



El día miércoles, 11 de agosto de 2010 05:07:29 p.m.
"Andrew Wiles" <awiles at ndigital.com>
escribió:
> Hello,
> 
> I have set up an application similar to the Navigator example using
the Aurora with two 6D tools.  However, when I attach the TrackerTool to
a spatial object (using RequestSetParentAndTransform) the spatial object
flickers in the view window.  
> 
> I have two tools attached to the Aurora, a tool under test and a
reference.  The spatial object for the reference appears in the view
window and does not flicker but the tool under test comes and goes from
the view.  In fact, it doesn't appear more often than it appears.  I can
move the tool under test around and the transformation of the spatial
object updates successfully when it does appear.  I am also writing the
transforms for both tools to the GUI screen and I obtain what appears to
be 40Hz of data.  I connect the spatial objects (m_TestPlugTool and
m_RefPlugTool) to the TrackerTools (m_TestTool and m_RefTool) using:
> 
>     igstk::Transform transform;
>    
transform.SetToIdentity(igstk::TimeStamp::GetLongestPossibleTime());
>     this->m_TestPlugTool->RequestDetachFromParent();
>     this->m_RefPlugTool->RequestDetachFromParent();
>     this->m_TestPlugTool->RequestSetTransformAndParent(transform,
m_TestTool);
>     this->m_RefPlugTool->RequestSetTransformAndParent(transform,
m_RefTool);
> 
> Does the validity time on the transform have anything to do with
this?  I am using Qt and have played with the QtTest::wait (equivalent
to FL::wait) function values in the main loop to see if that had any
effect, but it only made visibility worse.  I have also played with the
refresh rate of the view window, but that doesn't help either.
> 
> Does anyone have any suggestions for fixing this?  Google has not
revealed any obvious answers.
> 
> Cheers.
> Andrew
> 
> --------------------
> Andrew D. Wiles, PhD, PEng
> Research Scientist, Medical Division
> NDI
> 103 Randall Drive
> Waterloo, ON, Canada, N2V 1C5
> Telephone: +1 (519) 884-5142 ext. 314
> Toll Free: +1 (877) 634-6340
> Global: ++ (800) 634-634-00
> Facsimile: +1 (519) 884-5184
> Website: www.ndigital.com 
> --------------------
> 
> _______________________________________________
> Powered by www.kitware.com 
> 
> Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html 
> 
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/cgi-bin/mailman/listinfo/igstk-users



More information about the IGSTK-Users mailing list