Moravec corners detector.

The class implements Moravec corners detector. For information about algorithm's details its description should be studied.

Due to limitations of Moravec corners detector (anisotropic response, etc.) its usage is limited to certain cases only.

The class processes only grayscale 8 bpp and color 24/32 bpp images.

Sample usage:

// create corner detector's instance MoravecCornersDetector mcd = new MoravecCornersDetector( ); // process image searching for corners List<IntPoint> corners = scd.ProcessImage( image ); // process points foreach ( IntPoint corner in corners ) { // ... }
Inheritance: ICornersDetector
コード例 #1
0
ファイル: Corners.cs プロジェクト: interopxyz/Macaw
        public List <Rg.Point3d> GetMorvacCorners()
        {
            Ai.MoravecCornersDetector corners = new Ai.MoravecCornersDetector();
            if (Threshold >= 0)
            {
                corners.Threshold = Threshold;
            }

            return(corners.ProcessImage(bitmap).ToRhinoPoints(bitmap.Height));
        }
コード例 #2
0
        /// <summary>
        ///   Creates a new object that is a copy of the current instance.
        /// </summary>
        ///
        /// <returns>
        ///   A new object that is a copy of this instance.
        /// </returns>
        ///
        public object Clone()
        {
            var clone = new MoravecCornersDetector(threshold, windowSize);

            return(clone);
        }
コード例 #3
0
 /// <summary>
 ///   Creates a new object that is a copy of the current instance.
 /// </summary>
 /// 
 /// <returns>
 ///   A new object that is a copy of this instance.
 /// </returns>
 /// 
 public object Clone()
 {
     var clone = new MoravecCornersDetector(threshold, windowSize);
     return clone;
 }