[ITK-users] strange filter behavior in Progressevent callback in itkwrap
Soren Christensen
sorench at gmail.com
Sat May 5 18:07:25 EDT 2018
Hi,
I am trying to monitor the progress of a levelset filter using
a Progressevent callback.
I am thresholding the level set output with a thresholding filter and this
works as expected in terms of the end results.
However, I am trying to monitor the progress of a levelset filter using
a Progressevent callback and it is not working inside the progressevent
callback.
Here's the code:
....
Set up level and threshold filter
...
#define call back function
def myCommand():
global k
if k % 10==0:
thresholder.Update()
print(levelsetfilter.GetMTime()) #print mtime for levelset filter and then
thresholdfilter
print(thresholder.GetMTime())
print("----")
save_rgb(levelsetfilter.GetOutput(),'mont' + str(k)+ '.png')
k=k+1
k=0
levelsetfilter.AddObserver(itk.ProgressEvent(), myCommand )
levelsetfilter.Update()
The output from the print statements are:
18702 *18145* ---- 18738 *18145* ---- 18765 *18145* ---- 18792 *18145* ----
18819 *18145* ...
...
...
So the mtime for the threshold filter never gets modified when inside the
call back.
What is the reason for this? Is there something particular about the
execution pipeline when inside a callback like this?
Thanks!
Soren
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://itk.org/pipermail/insight-users/attachments/20180505/a7fc3b4a/attachment.html>
More information about the Insight-users
mailing list