[Insight-users] Harris corner detection
Luis Ibanez
luis.ibanez at kitware.com
Sat Oct 24 16:22:41 EDT 2009
Hi Jesus,
1) I'm not aware of any filter in ITK for specifically detecting corners.
2) Looking at the Harris Corner detection description in the Wikipedia:
http://en.wikipedia.org/wiki/Corner_detection#The_Harris_.26_Stephens_.2F_Plessey_corner_detection_algorithm
It looks like you could implement it by using:
RecursiveGaussianImageFilter
set to first order, to compute the first derivatives Ix Iy.
and then, in a second pass you could compute the Harris Matrix.
Since the Matrix is symmetric, you could store it in the
type:
Code/Common/itkSymmetricSecondRankTensor.txx
and use its methods:
/** Return an array containing EigenValues. */
void ComputeEigenValues( EigenValuesArrayType & eigenValues ) const;
/** Return an array containing EigenValues, and a matrix containing Eigen
* vectors. */
void ComputeEigenAnalysis( EigenValuesArrayType & eigenValues,
EigenVectorsMatrixType & eigenVectors ) const;
http://public.kitware.com/Insight/Doxygen/html/classitk_1_1SymmetricSecondRankTensor.html#0c302bae00dc50112f4759cbc04c5dd7
http://public.kitware.com/Insight/Doxygen/html/classitk_1_1SymmetricSecondRankTensor.html#a6f25db02794d1d1c9c40ef71aacc714
Then, finally, compute the term:
V1.V2 - K ( V1 - V2 ) ^2
or ... follow their suggestion and simply do
det( A ) - k . trace (A )
both the determinant and the trace could be
computed by using the methods of the vnl_matrix.
Of course, if you implement this filter,
we strongly encourage you to share it with other users
by submitting it as a technical report to the
Insight Journal:
http://www.insight-journal.org/
http://www.itk.org/Wiki/ITK_Procedure_for_Contributing_New_Classes_and_Algorithms
3) About your question regarding the Sobel Operator:
Please define what you mean by
a) Amplitude, and
b) Phase
Thanks
Luis
-------------------------------------------------------------------------------------
On Thu, Oct 22, 2009 at 6:25 AM, Jesus Piairo <jp.ineb.dsi at gmail.com> wrote:
> Hi!!
>
> I´m a new member of the itk´s family and this are my firts steps in ITK.
>
> I have two questions:
>
> 1- Does ITK have any tool to performe corner detection (i´m interested in
> harris corner detection)??
>
> 2 - I used the Sobel Operator (NeighborhoodIterators3.cxx example) and
> obteined x_Image and y_Image. How can I get de amplitude and phase?
>
>
>
> Thanks and Regards
> _____________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-users
>
>
More information about the Insight-users
mailing list