OpenCV半小时掌握基本操作之角点检测_第1页
OpenCV半小时掌握基本操作之角点检测_第2页
OpenCV半小时掌握基本操作之角点检测_第3页
OpenCV半小时掌握基本操作之角点检测_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第OpenCV半小时掌握基本操作之角点检测目录概述角点检测角点检测代码

概述

OpenCV是一个跨平台的计算机视觉库,支持多语言,功能强大.今天小白就带大家一起携手走进OpenCV的世界.

角点检测

角点检测(CornerDetection)是图像的重要特征.角点可以帮助我们实现图像对其,图像拼接,目标识别等等重要用途.

Harris角点检测(HarrisCornerDetection)是最基础也是最重要的一种角点检测算法.通过计算图像在x,y上平移的自相似性(Self-Similarity)来判断图像是否为角点.

例如:某图像的某个位置在x/y方向上做微小的滑动,如果窗口内的灰度值都有较大变换,那么这个位置就是角点.

角点检测代码

格式:

cv2.cornerHarris(src,blockSize,ksize,k,dst=None,borderType=None)

参数:

scr:输入图像

blockSize:焦点检测中指定区域的大小

ksize:Sobel求导中使用的窗口大小

ksize:Sobel孔径参数,取值范围为[0.04,0.06]

例1:

importnumpyasnp

importcv2

#读取图片

image=cv2.imread("house.jpg")

#转换成灰度图

image_gray=cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)

#harris角点检测

harris=cv2.cornerHarris(image_gray,2,3,0.04)

#阈值转换原图

image_corner=image.copy()

image_corner[harris0.01*harris.max()]=[0,0,255]

combine=np.hstack((image,image_corner))

#图片展示

cv2.imshow("origionalvscornerdetection",combine)

cv2.waitKey(0)

cv2.destroyAllWindows()

#保存结果

cv2.imwrite("harris.jpg",combine)

输出结果:

例2:

importnumpyasnp

importcv2

#读取图片

image=cv2.imread("house2.jpg")

#转换成灰度图

image_gray=cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)

#harris角点检测

harris=cv2.cornerHarris(image_gray,2,3,0.04)

#阈值转换原图

image_corner=image.copy()

image_corner[harris0.1*harris.max()]=[0,0,255]

combine=np.hstack((image,image_corner))

#图片展示

cv2.imshow("origionalvscornerdetection",image_corner)

cv2.waitKe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论