Python中OpenCV图像特征和harris角点检测

编辑: admin 分类: python 发布时间: 2021-12-03 来源:互联网
目录
  • 概念
    • 第一步:计算一个梯度 Ix,Iy
    • 第二步:整合矩阵,计算特征值
    • 第三步:比较特征值的大小
    • 第四步: 非极大值抑制,把真正的角点留下来,角点周围的过滤掉
  • 代码实现

    概念

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    第一步:计算一个梯度 Ix,Iy

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    第二步:整合矩阵,计算特征值

    在这里插入图片描述

    第三步:比较特征值的大小

    在这里插入图片描述
    在这里插入图片描述

    第四步: 非极大值抑制,把真正的角点留下来,角点周围的过滤掉

    代码实现

    在这里插入图片描述

    import cv2
    import numpy as np
    
    img =cv2.imread('pie.png')
    print('img.shape',img.shape)
    gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
    #gray = np.float32(gray)
    dst = cv2.cornerHarris(gray,2,3,0.04)
    print('dst.shape',dst.shape)

    在这里插入图片描述

    img[dst>0.01*dst.max()]=[0,0,255]
    cv2.imshow('dst',img)
    cv2.waitKey(0)
    cv2.destroyAllWindows()

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    到此这篇关于Python中OpenCV图像特征和harris角点检测的文章就介绍到这了,更多相关OpenCV-图像特征-harris角点检测内容请搜索hwidc以前的文章或继续浏览下面的相关文章希望大家以后多多支持hwidc!

    【文章出处:cc防御 转载请说明出处】