zoukankan      html  css  js  c++  java
  • 检测兴趣点

    基于特征的图像配准方法是图像配准中最常见的方法之一。它不是直接利用图像像素值,二十通过像素值导出的符号特征(如特征点、特征线、特征区域)来实现图像配准,因此可以克服利用灰度信息进行图像配准的缺点,主要体现在以下三个方面:(1)利用特征点而不是图像灰度信息,大大减少了在匹配过程中的计算量;(2)特征点的匹配度量值相对位置变化比较敏感,可以提高匹配的精度;(3)特征点的提取过程可以减少噪声的影响,对灰度变化、图像形变以及遮挡等都有较好的适应能力。

           一类重要的点特征:角点(corner points),其定义主要有以下:

     局部窗口沿各方向移动,灰度均产生明显变化的点      
    图像局部曲率突变的点
    典型的角点检测算法:Harris角点检测、CSS角点检测
    Harris角点检测基本思想
    从图像局部的小窗口观察图像特征,角点定义:窗口向任意方向的移动都导致图像灰度的明显变化(如下图)

    harris特征描述(先找到角点强度图,再找尺寸)

      cornerharris(image,//必须为8位单通道或32位单通道

           cornerstrength,//角点强度

           3,//邻域尺寸

           3,//口径尺寸

           0.01)//harris参数

    (2条消息) Harris的角点检测和特征匹配_高司机的专栏-CSDN博客_harris特征点

    gftt特征描述

    我们可以通过GFTTDetector::create()来创建一个GFTT特征点检测器,其参数如下:
    (1)参数maxCorners:检测到的最大角点数量;
    (2)参数qualityLevel:输出角点的质量等级,取值范围是 [ 0 , 1 ];如果某个候选点的角点响应值小于(qualityLeve * 最大角点响应值),则该点会被抛弃,相当于判定某候选点为角点的阈值;
    (3)参数minDistance:两个角点间的最小距离,如果某两个角点间的距离小于minDistance,则会被认为是同一个角点;
    (4)参数blockSize:计算角点响应值的邻域大小,默认值为3;如果输入图像的分辨率比较大,可以选择比较大的blockSize;
    (5)参数useHarrisDector:布尔类型,如果为true则使用Harris角点检测;默认为false,使用shi-tomas角点检测算法;
    (6)参数k:只在使用Harris角点检测时才生效,也就是计算角点响应值时的系数k。

    可以看到,创建GFTT特征点检测所需的参数其实和goodFeaturesToTrack()所需的参数是一样的,精度远高于harris算子,也有可能是我没有设置好

    Ptr<GFTTDetector> create( int maxCorners=1000, double qualityLevel=0.01, double minDistance=1,
    
            int blockSize=3, bool useHarrisDetector=false, double k=0.04 );

    注意,创建的特征检测器返回值为该类的指针

  • 相关阅读:
    【poj2478-Farey Sequence】递推求欧拉函数-欧拉函数的几个性质和推论
    【poj1284-Primitive Roots】欧拉函数-奇素数的原根个数
    【hdu2815-Mod Tree】高次同余方程-拓展BadyStepGaintStep
    【poj3243-Clever Y】高次同余方程-拓展BabyStepGiantStep
    数论之高次同余方程(Baby Step Giant Step + 拓展BSGS)
    POJ1094-Sorting It All Out
    POJ-2299 Ultra-QuickSort
    NYOJ542-试制品
    POJ1936-All in All
    POJ3080-Blue Jeans
  • 原文地址:https://www.cnblogs.com/KAVEI/p/14732890.html
Copyright © 2011-2022 走看看