Hi,<br><br>Don&#39;t worry Richard, you are not being stupid :)<br><br>What you said meant that either I was using the filter wrongly and the results were still correct (doing things wrong twice you get the correct result) or it was a supersmart filter with a predictive effect such that it could guess the direction you wanted.<br>
<br>The problem is that I had used the filter for the last time long time ago. If you use the corresponding image functions you have to apply one DiscreteGaussianDerivativeImageFunction after another but if you use the filter you pass it an array for the order in each direction, no need to use a filter for each direction. So the test was incorrectly designed.<br>
<br>The second error (to get the correct result) was attaching the wrong baseline images :) <br><br>And yes, you can set a different variance for each direction too (it can be also an array, if you pass a scalar then it is the same for all).<br>
<br>Sorry for the inconvenience, here it is the correct version/results (hopefully)<br><br>Best regards<br><br>Iván<br><br>PD: I am sending CC to the mailing list, in case someone else is interested<br><br><br><div class="gmail_quote">
2010/1/6 Richard Beare <span dir="ltr">&lt;<a href="mailto:richard.beare@gmail.com">richard.beare@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi,<br>
<br>
I&#39;m probably being really stupid, but I can&#39;t see where you set the<br>
direction of the derivative. There are 2 filters, one for the X<br>
direction, one for Y, but they seem to be set up the same way, which<br>
would imply that the output of the second one is actually a higher<br>
order derivative than the first, oriented the same way. What am I<br>
missing?<br>
<br>
It looks to me as though the variance and order should be set<br>
independently for each dimension in each filter - e.g<br>
derivativeX-&gt;SetVariance([variance, 0]) ;  // please excuse<br>
pseudocode.<br>
<br>
Is this correct?<br>
<div class="im"><br>
Thanks<br>
<br>
<br>
On Sat, Jan 2, 2010 at 11:48 PM, Ivan Macia &lt;<a href="mailto:imacia@vicomtech.org">imacia@vicomtech.org</a>&gt; wrote:<br>
</div><div><div></div><div class="h5">&gt; Hi Richard,<br>
&gt;<br>
&gt; I made this class long time ago. It seems like I didn&#39;t provide any test for<br>
&gt; this class or at least I can&#39;t find it, my apologies.<br>
&gt; Attached you can find a test program, a source test image and baseline<br>
&gt; images for different orders of derivatives in each direction. I used sigma =<br>
&gt; 3.0 (variance = 9.0), and max_error = 0.001<br>
&gt;<br>
&gt; Note that each instance of the filter applies the derivative in a single<br>
&gt; direction for a given order. For example to calculate the first order<br>
&gt; derivative in X and the second in Y you apply an instance of the filter in X<br>
&gt; direction with order one and another in Y with order two. Even if you use<br>
&gt; order zero in a direction you still have to use the filter for that<br>
&gt; direction, because it will calculate the standard gaussian.<br>
&gt; If you want a vector image you have to compose it yourself, wait for me to<br>
&gt; develop the filter or do it yourself :)<br>
&gt;<br>
&gt; If possible, it would be very nice if you could try the behaviour of the<br>
&gt; filter with different spacing in each direction ( UseImageSpacingOn() ). I<br>
&gt; think there was a pending issue with the handling of the spacing.<br>
&gt;<br>
&gt; I guess I will have to upload a new version of the paper with new tests.<br>
&gt; Since this is in Review currently I would need someone with CVS write access<br>
&gt; to commit the tests too. Do you have it?<br>
&gt;<br>
&gt; Regards<br>
&gt;<br>
&gt; Iván<br>
&gt;<br>
&gt; 2009/12/30 Richard Beare &lt;<a href="mailto:richard.beare@gmail.com">richard.beare@gmail.com</a>&gt;<br>
&gt;&gt;<br>
&gt;&gt; Hi,<br>
&gt;&gt; I&#39;m trying to experiment with DiscreteGausianDerivativeImageFilter as<br>
&gt;&gt; an alternative to GradientRecursiveGaussianImageFilter, but I&#39;m having<br>
&gt;&gt; issues with correctly declaring my image types. Are there any examples<br>
&gt;&gt; anywhere? I haven&#39;t been able to find any. I want the components of<br>
&gt;&gt; the gradient and I&#39;m using CovariantVector types for the<br>
&gt;&gt; GradientRecursiveGaussianImageFilter.<br>
&gt;&gt;<br>
&gt;&gt; Thanks.<br>
&gt;&gt; _____________________________________<br>
&gt;&gt; Powered by <a href="http://www.kitware.com" target="_blank">www.kitware.com</a><br>
&gt;&gt;<br>
&gt;&gt; Visit other Kitware open-source projects at<br>
&gt;&gt; <a href="http://www.kitware.com/opensource/opensource.html" target="_blank">http://www.kitware.com/opensource/opensource.html</a><br>
&gt;&gt;<br>
&gt;&gt; Kitware offers ITK Training Courses, for more information visit:<br>
&gt;&gt; <a href="http://www.kitware.com/products/protraining.html" target="_blank">http://www.kitware.com/products/protraining.html</a><br>
&gt;&gt;<br>
&gt;&gt; Please keep messages on-topic and check the ITK FAQ at:<br>
&gt;&gt; <a href="http://www.itk.org/Wiki/ITK_FAQ" target="_blank">http://www.itk.org/Wiki/ITK_FAQ</a><br>
&gt;&gt;<br>
&gt;&gt; Follow this link to subscribe/unsubscribe:<br>
&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;<br>
&gt;<br>
</div></div></blockquote></div><br>