通过Opencv进行角点检测

目录

引入

介绍

①使用的主要函数介绍

②实际例子解释

③自相似性是什么?


引入

我们想要获取图片上的角点,就要用到我们的harris角点检测

介绍

①使用的主要函数介绍

cv2.cornerHarris()

  • img: 数据类型为 float32 的入图像

不是float32的数据要使用,np.float32()转换为float32

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

指定检测框的区域大小

  • ksize: Sobel求导中使用的窗口大小 一般设置为3即可,即表示为3x3大小的

Sobel求导中使用的窗口大小就是使用sobel算子进行边缘检测那个,是这样的:

sobel算子 x 原始图像 = 边缘图像

  • k:判断时候的比例系数 设为 0.04~0.06都可以

②实际例子解释

我们对如下图片进行角点检测

代码:

python 复制代码
import cv2
import numpy as np

img = cv2.imread('test.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# gray = np.float32(gray)
dst = cv2.cornerHarris(gray, 2, 3, 0.04)

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

可能疑惑点解释:

imgdst\>0.01\*dst.max()=0,0,255

整体过程(主要在于自相似性):

dst为我们计算完的所有点,将它和dst里面最大值的0.01倍进行比较(因为最大值肯定是个角点自相似性),

如果大于了表明可能是个角点,我们把它的颜色设置为0,0,255红色画出来

结果


③自相似性是什么?

自相似性公式:

总体来说就是判断差异大不大,和边界检测有点类似:

I(u,v) - I(u + x, v + y) 的差值大的话,那他就是个角点

相关推荐
Elastic 中国社区官方博客11 分钟前
你的 AI agent 不需要你的 API 密钥:使用 OAuth 2.1 对 Elasticsearch MCP 服务器进行身份验证
大数据·运维·人工智能·elasticsearch·搜索引擎·全文检索
airobotcn19 分钟前
AI Agent下工厂:大模型如何驱动巡检机器人自主决策
人工智能·机器人·自动化·无人机
能源革命23 分钟前
AI+能源前沿2026-08-15
人工智能·能源
Dawson Zhu32 分钟前
为什么智能体 Agent 需要本体 Ontology
人工智能·语言模型·架构·制造·agi
恣逍信点1 小时前
《凌微经》静态自悖——变化之自因
人工智能·科技·算法·机器学习·业界资讯·拓扑学·哲学
在世修行1 小时前
深度图像数据格式与RAW文件解析:从字节到三维世界的桥梁
人工智能·数码相机·计算机视觉
chen_zn951 小时前
《VLA 系列》RLT | RL Token | 轻量 Actor-Critic | 在线强化学习与源码解析
人工智能·强化学习·具身智能·vla
fthux1 小时前
装闭 RenoPit 源码解析(10):AI如何审查装修合同与报价单
人工智能·ai·开源·github·open source·renopit
AI_AGENT_DEV_AI1 小时前
AI 智能体的开发费用
人工智能
zhenaibo5211 小时前
摘要、研究背景、文献综述AI风险高,怎么优化?
人工智能·深度学习·自然语言处理