【深度学习】OpenCV 角点检测与 SIFT 特征提取详解
OpenCV 角点检测与 SIFT 特征提取详解一、角点检测1. 什么是角点检测2. 检测流程3. 邻域Neighborhood4. Harris 角点检测案例关键函数说明完整代码二、SIFT 特征提取1. 什么是 SIFT2. 特征提取的一般步骤3. SIFT 案例实现完整代码代码解析关键点信息一、角点检测1. 什么是角点检测角点检测Corner Detection是计算机视觉中的一种基础特征提取方法用于识别图像中具有显著灰度变化的像素点即角点Corner。角点是图像中在不同方向上灰度值均发生剧烈变化的点例如物体的尖角两条边的交点T形或L形结构的端点角点具有以下优良特性旋转不变性图像旋转后角点仍然可被检测尺度不变性在不同缩放比例下角点依然存在光照不变性对光照变化具有一定的鲁棒性2. 检测流程角点检测通常遵循以下流程步骤描述1. 输入图像加载待检测的原始图像2. 图像预处理灰度化、降噪等为后续处理做准备3. 特征提取使用Harris、Shi-Tomasi等算法提取角点特征4. 角点响应计算计算每个像素点的角点响应值5. 角点定位与标记根据响应值定位角点并可视化标记6. 后处理可选非极大值抑制、阈值过滤等7. 输出结果返回角点坐标或标记后的图像3. 邻域Neighborhood在角点检测中邻域是指以某个中心像素为核心周围一定范围内的像素集合。邻域内的像素信息用于计算中心像素的角点响应值。邻域大小对检测结果有重要影响邻域大小特点较大邻域捕获更多细节信息但计算量增加较小邻域计算速度快但可能遗漏细微特征邻域的尺寸通常由blockSize参数控制需要根据具体的应用场景和图像特征进行调整。4. Harris 角点检测案例Harris 角点检测是一种经典的角点检测算法其核心思想是利用图像梯度计算角点响应值。关键函数说明cv2.cornerHarris(img,blockSize,ksize,k,dstNone)参数说明img输入图像需为灰度图blockSize角点检测中考虑的邻域大小ksizeSobel 算子窗口大小用于计算梯度kHarris 自由参数取值范围 [0.04, 0.06]dst输出响应矩阵与输入图像尺寸相同完整代码importcv2# 加载图像imgcv2.imread(huanghelou.png)cv2.imshow(原始图像,img)cv2.waitKey(0)# 灰度转换graycv2.cvtColor(img,cv2.COLOR_BGR2GRAY)# Harris 角点检测# blockSize4ksize3k0.04dstcv2.cornerHarris(gray,4,3,0.04)# 标记角点响应值大于阈值的像素标记为绿色threshold0.05*dst.max()img[dstthreshold][0,255,0]# 显示结果cv2.imshow(角点检测结果,img)cv2.waitKey(0)cv2.destroyAllWindows()代码解析gray 输入图像必须为灰度图blockSize4 表示邻域尺寸为 4×4ksize3 表示 Sobel 算子的孔径大小为 3k0.04 为 Harris 自由参数值越小检测到的角点越多dst 矩阵中值越大的像素是角点的概率越高通过阈值 0.05 * dst.max() 筛选角点二、SIFT 特征提取1. 什么是 SIFTSIFTScale-Invariant Feature Transform尺度不变特征变换 是一种用于检测和描述图像局部特征的经典算法。SIFT 能够在尺度空间中寻找极值点并提取出具有以下特性的关键点尺度不变性对图像缩放具有鲁棒性旋转不变性对图像旋转具有鲁棒性光照不变性对光照变化具有一定的容忍度SIFT 提取的特征点可以用于图像匹配、目标识别、三维重建等多种任务。2. 特征提取的一般步骤步骤描述1. 数据预处理去噪、归一化、平滑等2. 特征选择选择合适的特征子集避免冗余和噪声3. 特征提取使用数学算法计算和提取特征4. 特征表示将特征表示为向量或其他便于计算的形式好的特征应具备辨别性能够区分不同类别或实例鲁棒性对变形和噪声有一定容忍度3. SIFT 案例实现完整代码importcv2importnumpyasnp# 加载图像mancv2.imread(man.png)cv2.imshow(原始图像,man)cv2.waitKey(0)# 灰度转换man_graycv2.cvtColor(man,cv2.COLOR_BGR2GRAY)# 创建 SIFT 对象siftcv2.SIFT_create()# 检测关键点kpsift.detect(man_gray)# 打印所有关键点坐标forpointinkp:print(f关键点坐标:{point.pt})# 绘制关键点显示尺度和方向man_siftcv2.drawKeypoints(man,kp,None,flagscv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)cv2.imshow(SIFT 关键点,man_sift)cv2.waitKey(0)# 计算关键点描述符用于后续匹配keypoints,descriptorssift.compute(man,kp)print(f关键点数量:{np.array(keypoints).shape[0]})print(f描述符矩阵形状:{descriptors.shape})print(描述符维度: 128 维)cv2.destroyAllWindows()代码解析方法说明cv2.SIFT_create()创建 SIFT 检测器对象sift.detect(gray)检测图像中的关键点返回关键点列表sift.compute(img, kp)计算关键点的描述符128维向量cv2.drawKeypoints()在图像上绘制关键点关键点信息每个关键点包含坐标 (x, y)、尺度、方向每个关键点的描述符为 128 维向量描述符可用于后续的特征匹配如 FLANN、BFMatcher

相关新闻

技术栈全解析!打造企业 RAG 知识库,这些核心技术缺一不可

技术栈全解析!打造企业 RAG 知识库,这些核心技术缺一不可

当团队文档越来越多,查找越来越慢;当客服每天重复回答同样的问题;当新人入职培训找不到资料……你是否想过:如果有一个智能助手,能秒懂所有公司知识,该多好? 这就是知识库的价值。今天&#xff…

2026/7/28 0:52:53阅读更多 →
端到端,构建企业级知识库!!我把它做成项目给你

端到端,构建企业级知识库!!我把它做成项目给你

❝ 沉淀、分享、成长,让自己和他人都能有所收获!😜 ❞从前车马慢,一个需求聊一天。现在端到端,今天提,明天上线! 怀念,带着零食、拎着饮料,拉着研发,一聊就是…

2026/7/28 0:52:53阅读更多 →
【AI图片去水印终极指南】:20年图像处理专家亲授3大无损去水印黑科技,99%成功率实测验证

【AI图片去水印终极指南】:20年图像处理专家亲授3大无损去水印黑科技,99%成功率实测验证

更多请点击: https://codechina.net 第一章:AI图片去水印教程 AI驱动的图片去水印技术已从实验室走向实用场景,核心依赖生成式对抗网络(GAN)与扩散模型(Diffusion Models)对图像纹理、边缘与语…

2026/7/28 0:50:53阅读更多 →
3分钟快速上手:SillyTavern AI聊天前端完整安装指南

3分钟快速上手:SillyTavern AI聊天前端完整安装指南

3分钟快速上手:SillyTavern AI聊天前端完整安装指南 【免费下载链接】SillyTavern LLM Frontend for Power Users. 项目地址: https://gitcode.com/GitHub_Trending/si/SillyTavern 你是否正在寻找一款功能强大且易于使用的AI聊天前端工具?SillyT…

2026/7/28 2:13:03阅读更多 →
FIFA 23 Live Editor:终极免费生涯模式修改器完整指南

FIFA 23 Live Editor:终极免费生涯模式修改器完整指南

FIFA 23 Live Editor:终极免费生涯模式修改器完整指南 【免费下载链接】FIFA-23-Live-Editor FIFA 23 Live Editor 项目地址: https://gitcode.com/gh_mirrors/fi/FIFA-23-Live-Editor 还在为FIFA 23生涯模式的限制而烦恼吗?想要打造属于自己的梦…

2026/7/28 2:13:03阅读更多 →
免费AI视频增强神器:让模糊视频秒变4K高清的终极方案

免费AI视频增强神器:让模糊视频秒变4K高清的终极方案

免费AI视频增强神器:让模糊视频秒变4K高清的终极方案 【免费下载链接】video2x A machine learning-based video super resolution and frame interpolation framework. Est. Hack the Valley II, 2018. 项目地址: https://gitcode.com/GitHub_Trending/vi/video2…

2026/7/28 2:13:03阅读更多 →
iOS应用安装终极指南:5分钟学会用App Installer免费安装第三方应用

iOS应用安装终极指南:5分钟学会用App Installer免费安装第三方应用

iOS应用安装终极指南:5分钟学会用App Installer免费安装第三方应用 【免费下载链接】App-Installer On-device IPA installer 项目地址: https://gitcode.com/gh_mirrors/ap/App-Installer App Installer是一款专为iOS设备设计的强大应用安装工具&#xff0c…

2026/7/28 2:13:03阅读更多 →
【CTF-编程-NC】上下火车

【CTF-编程-NC】上下火车

题目 一列火车从始发站开出,沿途经过若干车站。由于售票系统的故障,车站的统计逻辑变得非常古怪。你作为应急响应小组的一员,需要接入系统的远程终端,在规定时间内计算出指定车站开出时车上的人数。 列车运行规则: 第 …

2026/7/28 2:13:03阅读更多 →
拯救珍贵回忆!免费开源工具Untrunc帮你修复损坏的MP4视频文件

拯救珍贵回忆!免费开源工具Untrunc帮你修复损坏的MP4视频文件

拯救珍贵回忆!免费开源工具Untrunc帮你修复损坏的MP4视频文件 【免费下载链接】untrunc Restore a damaged (truncated) mp4, m4v, mov, 3gp video. Provided you have a similar not broken video. 项目地址: https://gitcode.com/gh_mirrors/unt/untrunc 你…

2026/7/28 2:11:03阅读更多 →
覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

🔹 工具基础介绍 OpenClaw 是开源生态中一款实用性较强的本地智能工具,凭借本地离线运行、可视化图形操作和任务自动化三大核心特性,赢得了众多用户的青睐。与普通在线对话AI工具不同,它属于能够直接操控本机软硬件的智能数字员工…

2026/7/27 1:14:34阅读更多 →
伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

所谓液压伺服阀体的精密激光焊接,是用激光束对阀座壳体(通常为不锈钢或铝合金)进行密封焊接,使阀体在21-35MPa的高压液压油或压缩气体中长期运行而不发生介质泄漏。液压伺服阀是高端液压系统的"大脑"。从航空航天飞行控…

2026/7/28 2:08:06阅读更多 →
D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南 【免费下载链接】d2dx D2DX is a complete solution to make Diablo II run well on modern PCs, with high fps and better resolutions. 项目地址: https://gitcode.com/gh_mirrors/d2/d2dx 你是否还在…

2026/7/28 1:38:28阅读更多 →
告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生

告别臃肿!3步让你的暗影精灵笔记本重获新生 【免费下载链接】OmenSuperHub Control Omen laptop performance, fan speeds, and keyboard lighting, and unlock power limits. 项目地址: https://gitcode.com/gh_mirrors/om/OmenSuperHub 你是否也曾为官方Om…

2026/7/28 0:00:29阅读更多 →
RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

RAG必踩坑!财报法规检索不准?这款开源工具让答案浮出水面,准确率飙升98.7%!

做 RAG 的人应该都踩过这个致命的坑:把几百页的财报、法规、技术手册扔给向量库,问一个具体问题,搜出来的全是沾边但没用的内容 —— 关键信息要么被硬切块拆碎了,要么藏在几十条结果的最下面。语义相似≠真正相关,这个…

2026/7/28 0:00:29阅读更多 →
抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

抖音视频文案提取工具全指南:免费2026版、手机App、在线工具一网打尽

2026年做短视频运营,从抖音上扒文案早就不是偷偷抄笔记的事了。我刚开始做内容的时候,每天刷半小时抖音,手动把爆款视频的口播敲进备忘录,一条2分钟的视频得花十来分钟,碰到语速快的还要反复回听。后来试了一圈工具&am…

2026/7/28 0:00:29阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/27 16:57:54阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/26 19:05:21阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/26 19:05:21阅读更多 →