我正在检测BRISK和SURF特征点。我有以下代码进行检测。

im = imread('hammer.png');

pointsBRISK = detectBRISKFeatures(im, 'NumOctaves', 3);

pointsSURF = detectSURFFeatures(im, 'NumOctaves', 3);

这是我的原始图片:

这是危险点:

这是SURF要点:

我使用以下代码绘制这些点:

figure; imshow(im); hold on; plot(pointsBRISK); title('pointsBRISK');

figure; imshow(im); hold on; plot(pointsSURF); title('pointsSURF');

这些观点没有错。但是,当我查看点的比例时,BRISK和SURF的比例完全不同,但是从图像中我可以说比例应该相似。

这是BRISK点和SURF点的比例:

BRISK    SURF

11.9173  2.9333

11.9381  2.9333

12.3887  2.9333

12.4036  2.9333

12.5329  2.9333

26.8478  2.9333

31.8943  2.9333

36.0000  2.9333

48.0000  3.0667

72.0000  3.0667

72.0000  4.1333

72.0000  4.2667

72.0000  4.2667

72.0000  4.2667

72.0000  4.2667

4.2667

4.4000

4.4000

4.4000

6.1333

8.6667

8.8000

8.9333

11.6000

12.1333

12.2667

12.2667

较大的值表示图像中的较大圆圈。

看来它们处于完全不同的领域。如何将它们带到同一个域?或者,如果问题仍然存在,我该如何解决?

[编辑]

好吧,我已经看过extractFeatures函数。使用BRISKPoints或SURFPoints提取要素。函数内部有转换功能,例如pointsToBRISKPoints或parseSURFInputs。在这些功能中,刻度被转换。但是仍然有一个问题部分。

当将BRISK点转换为SURF点时,BRISK比例除以6。另一方面,当将SURF点转换为BRISK点时,SURF比例将乘以10!我想也应该是6!为什么不是6?

[编辑]

谢谢!

在BRISK和SURF之间,量表的表示方式有所不同。报告的BRISK比例基于BRISK采样模式的半径。 SURF标度由用于关键点检测的盒式滤波器的检测标度" s"表示。

可以在原始参考资料中找到有关此内容的详细信息:

(风险)http://www.robots.ox.ac.uk/~vgg/rg/papers/brisk.pdf

(SURF)http://www.vision.ee.ethz.ch/~surf/eccv06.pdf

SURF从半径为6s的区域估计方向。因此,将BRISK比例信息转换为SURF时,BRISK比例除以6以确保在类似大小的区域上估计方向。当SURF转换为BRISK时,这10个来自以下事实:SURF描述符是在20s窗口中提取的,因此乘以10可确保BRISK采样模式覆盖了20s窗口的大部分,因此描述符捕获了大部分相同的信息。

这些转换也可以通过其他方式完成。只需根据BRISKPoints对象中的信息创建SURFPoints对象。

话虽如此,BRISK是基于角点的检测器/描述符,而SURF是基于斑点的检测器/描述符,因此您无法真正获得始终有意义的"正确"映射。

brisk matlab,关于计算机视觉:MATLAB中SURF和BRISK点的比例域相关推荐

  1. matlab中surf x,matlab中surf什么意思

    欢迎来到阿八个人博客网站.本 阿八个人博客 网站提供最新的站长新闻,各种互联网资讯. 喜欢本站的朋友可以收藏本站,或者加QQ:我们大家一起来交流技术! URL链接:https://www.abboke ...

  2. matlab中surf和mesh,matlab surf和mesh区别

    matlab plot3 mesh surf三种作图方法有什么区别 plot3(x1,y1,z1,x2,y2,z2,-,xn,yn,zn):例:t=0:0.1:1;x=sin(t);y=cos(t); ...

  3. python识别视频中某个物体的轨迹_用Matlab来识别视频中物体的运动轨迹!

    对于很多生命科学领域的研究者来说,研究生物的行为是很多人研究工作中必不可少的部分.在进行生物行为研究工作的时候,生物的运动又是重中之重.这这里我以小鼠的一段运动视频为例,教大家用Matlab来分析视频 ...

  4. matlab三维可视化,MATLAB中三维数据可视化及应用

    Value Engineering -----------------------作者简介:张晓利(1976-),女,陕西临潼人,硕士研究生,讲师,研究方向为 计算机应用. 0引言 MATLAB 在数 ...

  5. matlab hilb,MATLAB在科学计算中的应用:第2章 MATLAB 语言程序设计基础

    <MATLAB在科学计算中的应用:第2章 MATLAB 语言程序设计基础>由会员分享,可在线阅读,更多相关<MATLAB在科学计算中的应用:第2章 MATLAB 语言程序设计基础(7 ...

  6. matlab在输电线路故障测距中应用,Matlab在输电线路故障测距中的应用.doc

    Matlab在输电线路故障测距中的应用 毕业设计(论文) 题目 Matlab在输电线路故障测距中的应用 二级学院 电子信息与自动化学院 专 业 电气工程及其自动化 班 级 110070401 学生姓名 ...

  7. dst matlab,DSTcode DST跟踪算法MATLAB代码,复杂环境中仿多目标 实现的单 Other systems 其他 272万源代码下载- www.pudn.com...

    文件名称: DSTcode下载  收藏√  [ 5  4  3  2  1 ] 开发工具: matlab 文件大小: 82 KB 上传时间: 2017-03-17 下载次数: 0 提 供 者: Mar ...

  8. “输入字符不是 MATLAB 语句或表达式中的有效字符”的解决办法

    写在这里的初衷,一是备忘,二是希望得到高人指点,三是希望能遇到志同道合的朋友. 问题描述: 输入字符不是 MATLAB 语句或表达式中的有效字符 原因分析: 标点符号:采用了中文的标点符号 解决方案: ...

  9. matlab在线性系统理论中的应用,线性系统理论相关的matlab应用.ppt

    控制系统的分析方法 早期的控制系统分析过程复杂而耗时,如想得到一个系统的冲激响应曲线,首先需要编写一个求解微分方程的子程序,然后将已经获得的系统模型输入计算机,通过计算机的运算获得冲激响应的响应数据, ...

最新文章

  1. MySQL5.5加主键锁读问题
  2. eclipse egit提交方法
  3. Ruby on Rails入门(2.1)
  4. AI CC2018软件安装教程
  5. mysql datatable_MySQL-数据表操作
  6. Oracle 入面既一d函数
  7. [转]常用OCR软件介绍
  8. html如何取消盒子间的间隔,使用flexbox时,多行子元素之间的间距如何控制?
  9. API信息全掌控,方便你的日志管理——阿里云推出API网关打通日志服务
  10. 记一次线上请求偶尔变慢的排查
  11. Config Server高可用
  12. 使用ANT编译项目报错 com.sun.image.codec.jpeg does not exist 解决方法
  13. 【计算机组成原理】第1章 计算机系统概论
  14. 使用TScopy访问已锁定的文件
  15. JVM监控及诊断工具GUI篇之Arthas(一):基础指令
  16. S3C2440 ADC采样光敏电阻传感器驱动
  17. 牛客寒假集训营 牛牛战队的比赛地
  18. oracle 列转行
  19. cyusb3014 设备插入 westbridge未识别问题220514
  20. JAVA:实现线性丢番图方程求解器算法(附完整源码)

热门文章

  1. Centos设置成图形化界面(graphical.target)
  2. @OneToOne使用报错
  3. 2018之江杯全球人工智能大赛
:零样本图像目标识别 baseline 全部代码+注释+招队友
  4. 开源自主导航小车MickX4(八)LeGo-LOAM 室外3D建图
  5. 康复训练的未来:VR和元宇宙如何帮助患者康复
  6. Verilog 除法器设计(包含单步设计和流水线设计)
  7. matlab遗传算法(例题及代码)
  8. 单目相机成像模型——针孔相机模型
  9. 【面经】远景能源一面(Java开发)
  10. 将温度传感器获取室温显示在手机APP上