OpenCV像处理- 角点检测
Chris_Harris 和 Mike_Stephens 在年提出Harris角点检测方法。它通过计算窗口在各个方向移动时图像导数的源码总和,来寻找角点。源码公式为:
其中,源码I_x 和 I_y 分别表示图像在x和y方向的源码阅读安卓源码解决问题导数,可以通过cv2.Sobel()函数计算得到。源码arduino 固件源码根据公式R来判断区域类型:平面区域、源码边缘或角点。源码R值小于0为边缘,源码两个导数都小时为平面区域,源码而当两个导数都较大,源码且R值大于阈值时,源码为角点。源码camount指标源码
在OpenCV中,源码cv2.cornerHarris()函数实现该检测,源码参数包括图像、块大小、旗帜溯源码响应阈值、参数alpha等。Shi-Tomas算法改进了Harris角点检测,其打分公式为:
如果打分超过阈值,源码赚钱项目则认为是角点。OpenCV中的cv2.goodFeaturesToTrack()函数支持此算法。
为了实现亚像素级的角点检测,需要在像素邻域空间内通过给定响应值进行拟合。OpenCV的cv2.cornerSubPix()函数可以实现这一目的。
Opencv函数find4QuadCornerSubpix的参数region_size是什么意思?
mask可以看成是一个图像数组(iplimage*),一般是八位的灰度图,如果某个函数参数可以传一个mask的话,代表只对mask中非零(非黑色)部分对应的像素作处理。
比如你只想对的某个圆形区域作处理,则传入一个有圆形填充的mask
可以看下这个例子:
/longlongago/archive////.aspx
2024-11-29 23:28
2024-11-29 23:10
2024-11-29 23:05
2024-11-29 22:17
2024-11-29 22:09