054- OpenCV Shi-Tomasi角点检测

话不多说,上代码,看结果。

import cv2
img = cv2.imread('38.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
'''
cv2.goodFeaturesToTrack(image, maxCorners, qualityLevel, minDistance, corners, mask, blockSize, useHarrisDetector, k)
# image: 输入图像, 需为8位或32位浮点类型单通道图像   corners: 检测到的角点的输出向量
# maxCorners: 角点的最大数量
# qualityLevel: 角点检测可接受的最小特征值, 实际用于过滤角点的最小特征是qualityLevel
# 和图像中最大特征值得乘积, 所有qualityLevel一般不超过1(通常取0.10或0.01)
# minDistance: 角点之间的最小距离, 此参数用于保证返回的角点之间的距离不小于minDistance个像素
# mask: 可选参数, 表示感兴趣区域的掩码, 用于指定角点检测区域
# blcokSize: 默认值3, 是计算导数自相关矩阵时指定的邻域范围
# useHarrisDetector: 默认值false, 指示是否使用Harris角点检测
# k: 默认值0.04, 用于设置Hessian自相关矩阵行列式的相对权重的权重系数
'''
feature_params = dict(maxCorners=100, qualityLevel=0.3, minDistance=5, blockSize=5)
corners = cv2.goodFeaturesToTrack(gray, mask=None, **feature_params)
print('cornerNum = ' + str(len(corners)))
for i in range(0, len(corners)):
    cv2.circle(img, tuple(corners[i][0]), 5, (0, 255, 0), 2, cv2.LINE_AA)
cv2.imshow('result', img)
cv2.waitKey(0)
cv2.destroyAllWindows()

结果如下图。
在这里插入图片描述
就先这样,遇到别的再补充。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值