zoukankan      html  css  js  c++  java
  • OPENCV之GFTT特征点检测

      之前角点检测的时候提到过角点检测的算法,第一个是cornerHarris计算角点,但是这种角点检测算法容易出现聚簇现象以及角点信息有丢失和位置偏移现象,所以后面又提出一种名为

     shi_tomasi的角点检测算法,名称goodFeatureToTrack,opencv的feature2D接口集成了这种算法,名称为GFTTDetector,接口如下

      Ptr<GFTTDetector> create( int maxCorners=1000, double qualityLevel=0.01, double minDistance=1,

            int blockSize=3, bool useHarrisDetector=false, double k=0.04 );

      maxCorners 最大角点数目 qualityLevel角点可以接受的最小特征值,一般0.1或者0.01,不超过1 minDistance 加点之间的最小距离

      blockSize倒数自相关矩阵的邻域范围 useHarrisDetector 是否使用角点检测 khessian自相关矩阵的相对权重系数 一般为0.04

      使用代码如下

     1 int main(int argc,char* argv[])
     2 {
     3     Mat srcImage = imread("F:\opencv\OpenCVImage\FeatureDetectSrc1.jpg");
     4     Mat srcGrayImage;
     5     if (srcImage.channels() == 3)
     6     {
     7         cvtColor(srcImage,srcGrayImage,CV_RGB2GRAY);
     8     }
     9     else
    10     {
    11         srcImage.copyTo(srcGrayImage);
    12     }
    13     vector<KeyPoint>detectKeyPoint;
    14     Mat keyPointImage1,keyPointImage2;
    15 
    16     Ptr<GFTTDetector> gftt = GFTTDetector::create();
    17     gftt->detect(srcGrayImage,detectKeyPoint);
    18     drawKeypoints(srcImage,detectKeyPoint,keyPointImage1,Scalar(0,0,255),DrawMatchesFlags::DRAW_RICH_KEYPOINTS);
    19     drawKeypoints(srcImage,detectKeyPoint,keyPointImage2,Scalar(0,0,255),DrawMatchesFlags::DEFAULT);
    20 
    21     imshow("src image",srcImage);
    22     imshow("keyPoint image1",keyPointImage1);
    23     imshow("keyPoint image2",keyPointImage2);
    24 
    25     imwrite("F:\opencv\OpenCVImage\FeatureDetectSrc1GFTTKeyPointImageDefault.jpg",keyPointImage2);
    26 
    27     waitKey(0);
    28     return 0;
    29 }

    显示图像

  • 相关阅读:
    LeetCode Best Time to Buy and Sell Stock
    LeetCode Scramble String
    LeetCode Search in Rotated Sorted Array II
    LeetCode Gas Station
    LeetCode Insertion Sort List
    LeetCode Maximal Rectangle
    Oracle procedure
    浏览器下载代码
    Shell check IP
    KVM- 存储池配置
  • 原文地址:https://www.cnblogs.com/dengxiaojun/p/5307408.html
Copyright © 2011-2022 走看看