<div dir="ltr">Thanks Cory, I hvae just signed up. <br><br>Jothy<br><br><div class="gmail_quote">On Fri, Sep 16, 2011 at 3:45 PM, Cory Quammen <span dir="ltr">&lt;<a href="mailto:cquammen@cs.unc.edu">cquammen@cs.unc.edu</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">Jothy,<br>
<br>
The FFT based convolution filter is almost ready, but there are still<br>
a few failing tests I need to fix. Are you signed up on the gerrit<br>
review system (<a href="http://review.source.kitware.com" target="_blank">http://review.source.kitware.com</a>)? If not, feel free to<br>
sign up and I&#39;ll add you as a reviewer when I push the patch to gerrit<br>
for review.<br>
<br>
Thanks,<br>
<font color="#888888">Cory<br>
</font><div><div></div><div class="h5"><br>
On Fri, Sep 16, 2011 at 10:39 AM, Jothy &lt;<a href="mailto:jothybasu@gmail.com">jothybasu@gmail.com</a>&gt; wrote:<br>
&gt; Yes,I can switch to ITk4.0. Since my program is not dependent on ITK till<br>
&gt; now.<br>
&gt;<br>
&gt; (But I am more interested in the fft based convolution filters. If you have<br>
&gt; your fft based filter codes I could test them with ITK4.0, before you push<br>
&gt; it to git.)<br>
&gt;<br>
&gt; Thanks<br>
&gt;<br>
&gt; Jothy<br>
&gt;<br>
&gt;<br>
&gt; On Fri, Sep 16, 2011 at 3:29 PM, Cory Quammen &lt;<a href="mailto:cquammen@cs.unc.edu">cquammen@cs.unc.edu</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; Jothy,<br>
&gt;&gt;<br>
&gt;&gt; I understand that you are copying files from git to the 3.20 source.<br>
&gt;&gt; Is that correct? If so, that sounds dangerous to me, and my best<br>
&gt;&gt; advice to you is to stick with one version.<br>
&gt;&gt;<br>
&gt;&gt; For what it&#39;s worth, the ConvolutionImageFilter tests are compiling<br>
&gt;&gt; fine within the current source in git on the compilers ITK supports,<br>
&gt;&gt; and the method giving you the error is being exercised by the tests.<br>
&gt;&gt; My guess is that there is a problem with mixing source between<br>
&gt;&gt; versions. There are many changes in git, and I wouldn&#39;t be surprised<br>
&gt;&gt; if doing what you are doing causes problems.<br>
&gt;&gt;<br>
&gt;&gt; Would it be possible for you to switch completely to the source in git?<br>
&gt;&gt;<br>
&gt;&gt; Thanks,<br>
&gt;&gt; Cory<br>
&gt;&gt;<br>
&gt;&gt; On Fri, Sep 16, 2011 at 10:10 AM, Jothy &lt;<a href="mailto:jothybasu@gmail.com">jothybasu@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt; Hi Cory,<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; I use QtCreator, so the cmake lists is auomagically managed by qmake. In<br>
&gt;&gt; &gt; fact  I don&#39;t even know how to create cmakeLists.txt and I never<br>
&gt;&gt; &gt; required<br>
&gt;&gt; &gt; with QtCreator.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; I have managed to make a simple function as shown below.<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; It converts 2 vtkImageData into itkImages, both are 3D. The conversion<br>
&gt;&gt; &gt; works<br>
&gt;&gt; &gt; pretty well and verified with old itkConvolutionImageFilter. Then I<br>
&gt;&gt; &gt; convolve<br>
&gt;&gt; &gt; with the latest filter. I copied all the necessary files from itk4.0 to<br>
&gt;&gt; &gt; the<br>
&gt;&gt; &gt; src folder such as itkDivideByConstantImageFilter,....<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Hope you will be able to manage with this<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; #include&quot;itkVTKImageToImageFilter.h&quot;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; #include &quot;itkImageToVTKImageFilter.h&quot;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; #include&quot;itkImage.h&quot;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; #include&quot;itkConvolutionImageFilter.h&quot;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; #include&quot;vtkImageData.h&quot;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; #include&quot;QDebug&quot;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; void main(vtkImageData* input,vtkImageData* kernel)<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; {<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; //Convert input vtkImageData to itkImage<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; typedef  itk::Image&lt;unsigned int,3&gt; ImageType;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; typedef  itk::VTKImageToImageFilter&lt;ImageType&gt;VTKImageToImageType;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; VTKImageToImageType::Pointer converter=VTKImageToImageType::New();<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; converter-&gt;SetInput(input-&gt;GetOutput());<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; converter-&gt;Update();<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; //Convert kernel vtkImageData to itkImage<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; typedef  itk::Image&lt;unsigned int,3&gt; ImageTypeKernel;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; typedef<br>
&gt;&gt; &gt; itk::VTKImageToImageFilter&lt;ImageTypeKernel&gt;VTKImageToImageTypeKernel;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; VTKImageToImageTypeKernel::Pointer<br>
&gt;&gt; &gt; converterKernel=VTKImageToImageTypeKernel::New();<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; converterKernel-&gt;SetInput(kernel);<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; converterKernel-&gt;Update();<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; //Crashes while executing htis<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; qDebug()&lt;&lt;&quot;Convolving....&quot;;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; typedef  itk::ConvolutionImageFilter&lt;ImageType&gt; ConvolutionFilterType;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; ConvolutionFilterType::Pointer convoluter= ConvolutionFilterType::New();<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; convoluter-&gt;SetInput(converter-&gt;GetOutput());<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; convoluter-&gt;SetImageKernelInput(converterKernel-&gt;GetOutput());<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; //convoluter-&gt;SetOutputRegionModeToSame();<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; convoluter-&gt;Update();<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; qDebug()&lt;&lt;&quot;Convolving done....&quot;;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; }<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Thanks<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; Jothy<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Fri, Sep 16, 2011 at 2:23 PM, Cory Quammen &lt;<a href="mailto:cquammen@cs.unc.edu">cquammen@cs.unc.edu</a>&gt;<br>
&gt;&gt; &gt; wrote:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Jothy,<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Could you post a minimal compilable and runnable example with an<br>
&gt;&gt; &gt;&gt; accompanying CMakeLists.txt file that gives the compilation error?<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Thanks,<br>
&gt;&gt; &gt;&gt; Cory<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; On Fri, Sep 16, 2011 at 7:39 AM, Jothy &lt;<a href="mailto:jothybasu@gmail.com">jothybasu@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt;&gt; &gt; Hi all,<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; I am trying to use the itkConvolutionImageFilter from git (since some<br>
&gt;&gt; &gt;&gt; &gt; of<br>
&gt;&gt; &gt;&gt; &gt; the<br>
&gt;&gt; &gt;&gt; &gt; bugs are fixed in this). i was able to sucessfully use the older<br>
&gt;&gt; &gt;&gt; &gt; version<br>
&gt;&gt; &gt;&gt; &gt; of<br>
&gt;&gt; &gt;&gt; &gt; this downloaded from the Insight journal. But I get the following<br>
&gt;&gt; &gt;&gt; &gt; errors<br>
&gt;&gt; &gt;&gt; &gt; with the git version.<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; In file included from ..\BIOSIM2\/itkConvolutionImageFilter.h:197,<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; from ..\BIOSIM2\myimagefilters.cpp:48:<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; ..\BIOSIM2\/itkConvolutionImageFilter.hxx: In member function<br>
&gt;&gt; &gt;&gt; &gt; &#39;typename<br>
&gt;&gt; &gt;&gt; &gt; itk::ConvolutionImageFilter&lt;TInputImage, TKernelImage,<br>
&gt;&gt; &gt;&gt; &gt; TOutputImage&gt;::OutputRegionType<br>
&gt;&gt; &gt;&gt; &gt; itk::ConvolutionImageFilter&lt;TInputImage,<br>
&gt;&gt; &gt;&gt; &gt; TKernelImage, TOutputImage&gt;::GetValidRegion() const [with TInputImage<br>
&gt;&gt; &gt;&gt; &gt; =<br>
&gt;&gt; &gt;&gt; &gt; itk::Image&lt;unsigned int, 3u&gt;, TKernelImage = itk::Image&lt;unsigned int,<br>
&gt;&gt; &gt;&gt; &gt; 3u&gt;,<br>
&gt;&gt; &gt;&gt; &gt; TOutputImage = itk::Image&lt;unsigned int, 3u&gt;]&#39;:<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; ..\BIOSIM2\/itkConvolutionImageFilter.hxx:200: instantiated from<br>
&gt;&gt; &gt;&gt; &gt; &#39;void<br>
&gt;&gt; &gt;&gt; &gt; itk::ConvolutionImageFilter&lt;TInputImage, TKernelImage,<br>
&gt;&gt; &gt;&gt; &gt; TOutputImage&gt;::GenerateOutputInformation() [with TInputImage =<br>
&gt;&gt; &gt;&gt; &gt; itk::Image&lt;unsigned int, 3u&gt;, TKernelImage = itk::Image&lt;unsigned int,<br>
&gt;&gt; &gt;&gt; &gt; 3u&gt;,<br>
&gt;&gt; &gt;&gt; &gt; TOutputImage = itk::Image&lt;unsigned int, 3u&gt;]&#39;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; ..\BIOSIM2\myimagefilters.cpp:494: instantiated from here<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; ..\BIOSIM2\/itkConvolutionImageFilter.hxx:267: error: passing &#39;const<br>
&gt;&gt; &gt;&gt; &gt; itk::ConvolutionImageFilter&lt;itk::Image&lt;unsigned int, 3u&gt;,<br>
&gt;&gt; &gt;&gt; &gt; itk::Image&lt;unsigned int, 3u&gt;, itk::Image&lt;unsigned int, 3u&gt; &gt;&#39; as<br>
&gt;&gt; &gt;&gt; &gt; &#39;this&#39;<br>
&gt;&gt; &gt;&gt; &gt; argument of &#39;const TInputImage* itk::ImageToImageFilter&lt;TInputImage,<br>
&gt;&gt; &gt;&gt; &gt; TOutputImage&gt;::GetInput() [with TInputImage = itk::Image&lt;unsigned<br>
&gt;&gt; &gt;&gt; &gt; int,<br>
&gt;&gt; &gt;&gt; &gt; 3u&gt;,<br>
&gt;&gt; &gt;&gt; &gt; TOutputImage = itk::Image&lt;unsigned int, 3u&gt;]&#39; discards qualifiers<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; And here is the code I use to convolve<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; typedef itk::ConvolutionImageFilter&lt;ImageType&gt; ConvolutionFilterType;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; ConvolutionFilterType::Pointer convoluter=<br>
&gt;&gt; &gt;&gt; &gt; ConvolutionFilterType::New();<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; convoluter-&gt;SetInput(converter-&gt;GetOutput());<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; convoluter-&gt;SetImageKernelInput(converterKernel-&gt;GetOutput());<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; convoluter-&gt;Update();<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Any hints<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Jothy<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; --<br>
&gt;&gt; &gt;&gt; &gt; Jothybasu K Selvaraj<br>
&gt;&gt; &gt;&gt; &gt; PhD Student<br>
&gt;&gt; &gt;&gt; &gt; University of Liverpool<br>
&gt;&gt; &gt;&gt; &gt; Liverpool,UK<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; _____________________________________<br>
&gt;&gt; &gt;&gt; &gt; Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Visit other Kitware open-source projects at<br>
&gt;&gt; &gt;&gt; &gt; <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Kitware offers ITK Training Courses, for more information visit:<br>
&gt;&gt; &gt;&gt; &gt; <a href="http://www.kitware.com/products/protraining.html" target="_blank">http://www.kitware.com/products/protraining.html</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Please keep messages on-topic and check the ITK FAQ at:<br>
&gt;&gt; &gt;&gt; &gt; <a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Follow this link to subscribe/unsubscribe:<br>
&gt;&gt; &gt;&gt; &gt; <a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank">http://www.itk.org/mailman/listinfo/insight-users</a><br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; --<br>
&gt;&gt; &gt;&gt; Cory Quammen<br>
&gt;&gt; &gt;&gt; Research Associate<br>
&gt;&gt; &gt;&gt; Department of Computer Science<br>
&gt;&gt; &gt;&gt; The University of North Carolina at Chapel Hill<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; --<br>
&gt;&gt; &gt; Jothybasu K Selvaraj<br>
&gt;&gt; &gt; PhD Student<br>
&gt;&gt; &gt; University of Liverpool<br>
&gt;&gt; &gt; Liverpool,UK<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt;<br>
&gt;&gt; --<br>
&gt;&gt; Cory Quammen<br>
&gt;&gt; Research Associate<br>
&gt;&gt; Department of Computer Science<br>
&gt;&gt; The University of North Carolina at Chapel Hill<br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; --<br>
&gt; Jothybasu K Selvaraj<br>
&gt; PhD Student<br>
&gt; University of Liverpool<br>
&gt; Liverpool,UK<br>
&gt;<br>
&gt;<br>
<br>
<br>
<br>
</div></div>--<br>
<div><div></div><div class="h5">Cory Quammen<br>
Research Associate<br>
Department of Computer Science<br>
The University of North Carolina at Chapel Hill<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br><div dir="ltr">Jothybasu K Selvaraj<br>PhD Student<br>University of Liverpool<br>Liverpool,UK<br></div><br>
</div>