I will try the coarse to fine registration technique. I guess, thats my only choice.<br>
Thanks again for your help Mark.<br><br><div><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">Mark Wyszomierski</b> <<a href="mailto:markww@gmail.com">markww@gmail.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><br>---------- Forwarded message ----------<br><span class="gmail_quote"><span class="q">From: <b class="gmail_sendername">Mark Wyszomierski</b> <<a href="mailto:markww@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
markww@gmail.com</a>><br></span><div><span class="e" id="q_1082aa8caa77903b_2">Date: Dec 14, 2005 2:03 PM
<br>Subject: Re: [Insight-users] dual processor<br>To: indian rock <<a href="mailto:indianrock@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">indianrock@gmail.com</a>><br><br></span>
</div></span><div><span class="e" id="q_1082aa8caa77903b_4">
<div>Ah sorry, my method would only work for multiple images/volumes.</div>
<div>I know the registration process can be very time consuming - it would </div>
<div>be great if the registration filters were internally multithreaded, though </div>
<div>that would require a complex reworking of the algorithms I suppose... </div>
<div>Luis always suggests using a coarse to fine registration method to
reach convergence faster - have you tried implementing that? Maybe it
will be your only time saver for now,</div>
<div><span>
<div> </div>
<div>Mark</div><br><br>
<div><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">indian rock</b> <<a href="mailto:indianrock@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">indianrock@gmail.com
</a>> wrote:</span>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">Hi Mark,<br><br>No... the registration methods are not multithreaded internally...<br>Currently,
all the pixel-wise filters support multithreading..... which is part of
registration.. So, running it on a dual processor will impact, but not
significant enough to notice any time save. <br><br>I'm not registering multiple images/volumes.... just two
images.... So, multithreading the registration won't help me. I was
looking more specifically to multithread the 'optimizer' and
'interpolator'.... I'm running it on windows 2000 (Pentium III - single
processor, 1GB RAM). <div><span><br><br>Thanks..<br>IR.<br><br>
<div><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">Mark Wyszomierski</b> <<a href="mailto:markww@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">markww@gmail.com</a>
> wrote:</span>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div><span><br><br>---------- Forwarded message ----------<br><span class="gmail_quote">From: <b class="gmail_sendername">Mark Wyszomierski</b> <<a href="mailto:markww@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
markww@gmail.com</a>><br>Date: Dec 14, 2005 1:01 PM <br>Subject: Re: [Insight-users] dual processor<br>To: indian rock <<a href="mailto:indianrock@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
indianrock@gmail.com</a>><br><br></span>
<div>No, I didn't find any open source methods. Did you check
if specific registration methods are internally multithreaded
through ITK? (Maybe</div>
<div>I'm getting mixed up with VTK). I thought some were though.</div>
<div> </div>
<div>What I did for myself though was to first create a thread pool
with the number of processors available. Then simply start a loop
registering your batch of images/volumes, letting registration threads
that become free constantly be at work handling the next task in the
batch. You only need </div>
<div>one thread procedure where the ITK registration code lives, and in
fact the most difficult part is setting up the efficient control loop
which parses out the registration threads as they become free. </div>
<div> </div>
<div>What platform are you using?</div>
<div><span>
<div> </div>
<div><span class="gmail_quote">Mark</span></div>
<div><span class="gmail_quote"></span> </div>
<div><span class="gmail_quote"></span> </div>
<div><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">indian rock</b> <<a href="mailto:indianrock@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">indianrock@gmail.com
</a>> wrote:</span></div>
<div>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">Mark,<br><br>Thanks for the quick response.<br>Is the multithreaded reigstration code available open souce?
<br><br>Thanks,<br><span>IR.</span>
<div><span><br><br>
<div><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">Mark Wyszomierski</b> <<a href="mailto:markww@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">markww@gmail.com</a>
> wrote:</span>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div>I've multithreaded my registration method to make use of multiple processors. As expected, the registration time is decreased by</div>
<div>just about the number of processors available. </div>
<div> </div>
<div>Mark<br><br> </div>
<div>
<div><span><span class="gmail_quote">On 12/14/05, <b class="gmail_sendername">indian rock</b> <<a href="mailto:indianrock@gmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> indianrock@gmail.com
</a>> wrote:</span> </span></div>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0px 0px 0px 0.8ex; padding-left: 1ex;">
<div><span>Hi,<br><br>Currently, it takes around 4 minutes to do my registration using ITK. <br><br>Apart from optimizing the code (no. of iterations, step length, etc)... are there any other ways, to speed up the registration?
<br>Does anyone know if ITK makes use of a dual processor? Will an additional processor impact the performance?<br><br>Also, has anyone had experience with hardware accelerators? Do those help in speeding up the registration?
<br><br>Any help will be highly appreciated..<br>Thanks,<br><span>IR.<br></span><br></span></div>_______________________________________________<br>Insight-users mailing list<br><a href="mailto:Insight-users@itk.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
Insight-users@itk.org</a><br><a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.itk.org/mailman/listinfo/insight-users</a><br><br>
<br></blockquote></div><br></blockquote></div><br></span></div></blockquote></div><br></span></div></span></div><br>_______________________________________________<br>Insight-users mailing list<br><a href="mailto:Insight-users@itk.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
Insight-users@itk.org</a><br><a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.itk.org/mailman/listinfo/insight-users</a><br><br>
<br></blockquote></div><br></span></div></blockquote></div><br></span></div>
</span></div><br>_______________________________________________<br>Insight-users mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:Insight-users@itk.org">Insight-users@itk.org</a><br>
<a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br><br><br></blockquote></div><br>