cv2--特征点特征提取(Sift,Orb,Surf)

news2024/12/25 0:10:50

cv2–特征点特征提取(Sift,Orb,Surf)

文章目录

  • cv2--特征点特征提取(Sift,Orb,Surf)
    • 1. 关键点和关键点描述子
    • 2. Sift
      • 2.1 检测的步骤
      • 2.2 同时计算关键点kp和描述子des
    • 3. Surf
    • 4. Orb
    • 5. 总结

1. 关键点和关键点描述子

  • kp(关键点):位置、大小、方向
  • des(关键点描述子):记录了关键点周围对其有贡献的像素点的一组向量值,不受仿射变换、光照变换等影响。

2. Sift

  • Scale-Invariant Feature Transform :与缩放无关的特征转换
  • 解决问题:Harris角点检测,当图像缩放后,原来的角点可能会消失如下图所示。SIFT就是为了解决这一问题。

1

2.1 检测的步骤

# 1.创建SIFT对象  
sift = cv2.SIFT_create()

# 2.进行检测  
kp = sift.detect(img , mask) # mask感兴趣区域,默认None

# 3.绘制关键点  
drawKeypoints(gray , kp , img) # img是要绘制的图片

2.2 同时计算关键点kp和描述子des

kp, des = sift.detectAndCompute(img, mask=None)
# mask : 指明对img的哪个区域进行计算,其作用是进行特征匹配

3. Surf

  • Speeded-Up Robust Features
  • SIFT最大的问题是速度慢,所以有了该算法。
# 1.创建对象 
surf = cv2.xfeatures2d.SURF_create()

# 2.计算关键点和描述子  
kp,des = surf.detectAndCompute(img , mask)

检测结果同SIFT,检测到的角点会少一点。

4. Orb

  • Oriented FAST and Rotated BRIEF
  • 优点:可以做到实时检测。
orb = cv2.ORB_create()
kp,des = orb.detectAndCompute(gray,None)

orb看到检测到的特征点非常少,这是因为实时性提高了,计算量减少了,只留下关键点。

5. 总结

记录一下,方便自己使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/337276.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

61 UseSerialGc的新生代回收调试

前言 呵呵 很久之前看到这样的两篇文章 [讨论] HotSpot VM Serial GC的一个问题 新生代回收调试的一些心得 在第一篇帖子中 R大 详细的讲述了 cheney 算法, 以及自己编写的 cheney 算法, 以及 DefNewGeneration 的具体的一些细节, 以及 和现有的例子的对比 另外还有一些…

leaflet 加载topojson数据,显示图形(代码示例047)

第047个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+leaflet中加载topojson文件,将图形显示在地图上。TopoJSON文件格式是geoJSON的一种扩展,它可以对地理空间拓扑进行编码。TopoJSON文件包含数据属性和地理空间的属性。 直接复制下面的 vue+openlayers源代码,操作…

C语言入门(什么是C语言,C语言的编程机制以及一些基础计算机概念)

目录 一.什么是C语言 1.面向对象: 2.面向过程: 二.C语言特点 三.C语言开发时间 四.环境搭建 1.代码编辑器 2.C编译器 五.C语言标准 六.计算机补充知识 1.计算机构成 2.CPU工作 3.编译器 七.编写程序步骤 八.源文件,目标文件&a…

SpringBoot 三大开发工具,你都用过么?

本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址:https://github.com/…

Sentinel服务熔断功能(sentinel整合ribbon+openFeign+fallback)

目录 1、Sentinel服务熔断功能 一、Ribbon系列 (一)提供者9003/9004 (二)消费者84 二、OpenFeign系列 三、熔断框架比较 2、规则持久化 1、Sentinel服务熔断功能 一、Ribbon系列 (一)提供者9003/9004 …

DAMA数据管理知识体系指南之元数据管理

第11章 元数据管理 11.1简介 按照通常的说法,元数据的定义是“关于数据的数据”,但是其确切含义是什么?元数据与数据的关系就像数据与自然界的关系。数据反映了真实世界的交易、事件、对象和关系,而元数据则反映了数据的交易、事…

技术分享|终端安全防护|ChatGPT会创造出超级恶意软件吗?

ChatGPT是一个强大的人工智能聊天机器人,它使用大量的数据收集和自然语言处理与用户“交谈”,感觉像是和正常的人类对话。它的易用性和相对较高的准确性让用户可以利用它做任何事情,从解决复杂的数学问题,到写论文,创建…

【Linux】操作系统与进程的概念

目录 冯诺依曼体系 注意 为什么CPU不直接访问输入或输出设备? 跨主机间数据的传递 操作系统 管理 进程 描述进程 进程的查看和终止 bash 通过系统调用创建子进程 fork的辨析 冯诺依曼体系 🥖冯诺依曼结构也称普林斯顿结构,是一种将…

(超详细)Navicat的安装和激活,亲测有效

步骤一:准备安装包 下载Navicat,我用的v15最好一致(私信可以发你安装包和注册码)步骤二:关闭杀毒软件,然后需要断掉网络(一定断网) 步骤三:一路next安装,安装…

nodejs如何实现Digest摘要认证?

文章目录1.前言2. 原理3. 过程4. node实现摘要认证5. 前端如何Digest摘要登录认证(下面是海康的设备代码)1.前言 根据项目需求,海康设备ISAPI协议需要摘要认证,那么什么是摘要认证?估计不少搞到几年的前端连摘要认证都…

每日一个解决问题:事务无法回滚是什么原因?

今天在码代码时发现事务不回滚了,学过MySQL 事务小伙伴们都懂,通过 begin 开启事务,通过 commit 提交事务或者通过 rollback 回滚事务。 正常来说,当我们开启一个事务之后,需要 commit 或者 rollback 来结束一个事务的…

下面这段Python代码执行后的输出结果是?

点击上方“Python爬虫与数据挖掘”,进行关注回复“书籍”即可获赠Python从入门到进阶共10本电子书今日鸡汤几行归塞尽,念尔独何之。大家好,我是皮皮。一、前言前几天在Python青铜交流群【桐霄L】问了一个Python基础的问题,这里拿出…

TortoiseGit 使用教程

一、下载工具 这里给大家准备了所有安装包自取 链接:https://pan.baidu.com/s/1xrxxgyNXNQEGD_RjwKnPMg 提取码:qwer 也可在官网自行下载最新版 1.下载git,直接去官网下载Git - Downloads,根据自己的系统合理下载&#xff0c…

openGauss客户端安装

目录1. 准备两台Linux系统2. 安装openGauss客户端3. 设置客户端主机环境变量4. 修改服务端配置文件5. 测试客户端远程连接客户端环境:openEuler release 22.03 (LTS-SP1) 服务端环境: openEuler release 20.03 (LTS-SP3) openEuler系统官网下载 1. 准备两台Linux系…

尚医通(十)数据字典加Redis缓存 | MongoDB

目录一、Redis介绍二、数据字典模块添加Redis缓存1、service_cmn模块,添加redis依赖2、service_cmn模块,添加Redis配置类3、在service_cmn模块,配置文件添加redis配置4、通过注解添加redis缓存5、查询数据字典列表添加Redis缓存6、bug&#x…

[oeasy]python0080_设置RGB颜色_24bit_24位真彩色_颜色设置

RGB颜色 回忆上次内容 上次 首先了解了 索引颜色 \33[38;5;XXXm 设置 前景为索引色\33[48;5;XXXm 设置 背景为索引色 RGB每种颜色 可选0-5总共 6 级 想用 精确RGB值 真实地 大红色画个 大红桃心 ♥️ 有可能吗??🤔 rgb 模式 关于 RGB 模式…

07- 梯度下降优化(Lasso/Ridge/ElasticNet) (机器学习)

归一化: 减少数据不同数量级对预测的影响, 主要是将数据不同属性的数据都降到一个数量级。 最大值最小值归一化:优点是可以把所有数值归一到 0~1 之间,缺点受离群值影响较大。0-均值标准化: 经过处理的数据符合标准正态分布,即均值为0,标准差…

Android 逆向工具大整理,碉堡了

文章目录jadx打开 gui 界面把安装包打开双击变量名和方法名可以高亮所有出现的地方**强大的搜索功能****搜索资源****查看 APK 签名****查看 APK dex 数,方法数****查看资源,配置清单****展开包名**查找方式引用反混淆导出 Gradle 工程导出反编译资源cla…

腾讯云安全组配置参考版

官方文档参考: 云服务器 安全组应用案例-操作指南-文档中心-腾讯云 新建安全组时,您可以选择腾讯云为您提供的两种安全组模板: 放通全部端口模板:将会放通所有出入站流量。放通常用端口模板:将会放通 TCP 22端口(Lin…

JDBC(老版)

文章目录JDBC概述数据持久化Java中的数据存储技术JDBC介绍JDBC体系结构JDBC程序编写步骤获取数据库连接要素一:Driver接口实现类Driver接口介绍加载与注册JDBC驱动要素二:URL要素三:用户名和密码数据库连接方式举例使用PreparedStatement实现…