标签:
看了将近十来天的OPENCV了,无论是从官方文档,还是learning opencv,还是看各论坛,心里总有种感觉是:无法把自己看的知识联系在一起,感觉都是各有特色功能的函数,可是这些各有特色功能的函数怎么组合在一起,实现什么样的功能就不得而知了。
下面从角点的角度来讲讲吧 --(要说的是有些并非是本人所写,觉得别人有的地方写的经典就复制下来了)
使用函数 cornerHarris 通过 Harris-Stephens方法检测角点;
我们到底要角点干什么??????????????
下面我来回答这个问题,在计算机视觉中,我们需要比对两张图片,靠什么匹配,靠直方图,为啥????? 直方图包含哪些信息,如果需要快速的匹配,我们需呀哪些关键信息?
一张图片在你看来,最大的印象是什么??????????回答是色彩,那变为gray图了呢,给你的最大的印象是什么呢???????你可能一时回答不上来,那就是边缘。什么边缘,不同灰度之间的边缘,那怎么获得这些不同的边缘??????常年canny,阀值化,阀值化后怎么办呢??还是不知到怎么比对,还需要哪些特战呢,再一步细化,那就到了 角点和斑点(感兴趣的区域)
下面我们就可以回答怎么去比对两张图片了
1---边缘 (边缘的获取方法:canny,开环或者闭环,再加上阀值,或者sobel之类算法)
2---角点 (cornerHarris,开环,闭环,再加上十字图形 菱形处理后, absdiff ,再去阀值,harris角点检测,Shi-Tomasi角点检测,FAST角点检测,尺度不变surf检测,尺度不变sift检测)
3---斑点 最生动形象的说话就是女孩子脸长了雀斑( LoG算子:SIFT算法 Blob特征检测算子)
Harris角点检测
当一个窗口在图像上移动,在平滑区域如图(a),窗口在各个方向上没有变化。在边缘上如图(b),窗口在边缘的方向上没有变化。在角点处如图(c),窗口在各个方向上具有变化。Harris角点检测正是利用了这个直观的物理现象,通过窗口在各个方向上的变化程度,决定是否为角点。
将图像窗口平移[u,v]产生灰度变化E(u,v)
由:, 得到:
对于局部微小的移动量 [u,v],近似表达为:
其中M是 2*2 矩阵,可由图像的导数求得:
E(u,v)的椭圆形式如下图:
定义角点响应函数 R 为:
Harris角点检测算法就是对角点响应函数R进行阈值处理:R > threshold,即提取R的局部极大值。
http://blog.csdn.net/xiaowei_cqu/article/details/7805206 可以参考这篇文档 写的很不错
标签:
原文地址:http://www.cnblogs.com/haoxing990/p/4575615.html