问题标签 [orb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - opencv 使用 c++ 进行 ORB 图像跟踪:示例?
我的目标是实时跟踪视频序列中的关键点。根据我在网上的搜索,ORB 可能是一个不错的选择。但是,似乎缺乏关于此事的重要文件。
有人可以指导我们找到有关此事的完整示例的链接,或者为我们提供一个独立的示例吗?
c++ - opencv 3.0/c++ 中的 ORB 特征跟踪
以下链接是关于两个图像之间的 ORB 检测和匹配: http ://docs.opencv.org/trunk/doc/tutorials/features2d/akaze_tracking/akaze_tracking.html?highlight=orb%20akaze
但是,尚不清楚如何遵循相同的跟踪程序。详细地说,对于我将执行的每个新框架
matcher.match(descriptors[0], descriptors[1], matches);
...然后提取好的匹配。
问题是如何从 (良好匹配)中获取descriptors[0]
/构建keypoints[0]
?matches
PS 对 orb-orb 检测和跟踪很感兴趣,因为据称它在速度和准确性/鲁棒性之间提供了很好的折衷。
android - OpenCV Android 在 AndroidStudio 中实现 ORB
在哪里可以找到在 AndroidStudio 中使用 ORB 和 OpenCV 的演示/教程。我尽我所能在网上搜索,但没有找到任何对我有帮助的东西。
我想编写一个 Android 应用程序,它将检测来自摄像机的实时视频流中的多个平面对象,并将它们的外观记录在日志文件中。
在网上研究了一下后,我相信最好的方法是使用 SURF 或 ORB。但是,SURF 我相信它现在不可用,因为它被 quallcom 收购了,它也不是开源的也不是免费的,我最好的选择是使用 ORB,但我找不到任何关于如何在 Android 上实现它的教程
任何帮助将不胜感激。
opencv - ORB FeatureDetector with Bag Of Words
BOWImgDescriptorExtractor
必须接收 32F 所以SURF
或SIFT
必须用于DescriptorExtractor
,但FeatureDetector
肯定可以是任何你想要的,对吧?
我只需要在这里澄清一下,我只见过有人说“你不能使用ORB
with Bow
”,但是在检测功能时,为什么要使用哪个呢?
java - WAS8.5.5 未包含 Jacorb 应用程序
我有一个与 jacorb 紧密耦合的应用程序,它与 Jboss 配合得很好。现在,我必须迁移此应用程序以在 Websphere 8.5.5 中部署相同的应用程序。一般流程是,我的应用程序将通过 corba usign jacorb 到达另一个系统(用 C++ 开发)。由于 IBM 拥有自己的 ORB 实现,因此我的应用程序正在部署在 websphere 中。如果我的应用程序被修改为使用 IBM orb jars,那么 80% 的应用程序必须更改。请建议我包含 jacord proeprties 和 jar 来解决错误的方法。
我的足迹:所有的足迹都是相互独立的。
1) 保留我的 orb.properties、jacorb.jar 并在 WAS->JAVA->JRE->lib 中删除 IBM orb.properties
2) 通过管理控制台将我的文件包含在 JVM 类路径中。(此更改后服务器无法启动)。
3) 使用 jacorb 属性修改了 IBM orb.properties,但获得了类转换异常。
错误:
提前感谢您的支持。
opencv - ORB - 物体需要非常靠近相机
我有一个从 RSTP 获取视频源并检查对象的程序。唯一的问题是物体需要距离相机大约 6 英寸,但是当我使用有线网络摄像头时,物体可能在几英尺之外。两个相机都以相同的分辨率传输,是什么导致了这个问题?
相机传输规格:
编辑:我使用的算法是 OpenCV ORB 算法,但我之前在 OpenCV 中使用 Haar 分类器方法时也看到了这种行为。
以下是网络摄像头无法再检测到对象的限制。(约 66 像素)
以下是 Glass 无法再检测到对象的限制。(约 68 像素)
查看图像,它看起来距离相似,但距离至少是网络摄像头图像中的两倍,在我看来,这是导致此问题的相机属性?如果是这样,相机的哪个部分会导致这种情况?
c++ - ORB 提供比 SIFT 更好的特征匹配 - 为什么?
我最近一直在尝试使用特征匹配来解决问题,利用 C++ 中 OpenCV 库提供的特征匹配算法。
现在有一个例子,ORB 给我的匹配比 SIFT 更好,这让我想知道。我认为 ORB 是一种尝试提供与 SIFT 相当的质量,同时需要更少的计算时间。这就是为什么我认为我的 SIFT 匹配可能做错了什么。但是,对于其他图像,效果很好。
我正在谈论的示例是二进制图像。以下是使用 SIFT 获得的结果:
这是使用 ORB 的结果:
第一个结果是使用 SIFT 特征检测器和 SIFT 描述符提取器获得的。对于匹配,我使用了具有 L2 范数的蛮力匹配器。对于第二个,我使用了 ORB 特征检测器和 ORB 描述符提取器以及蛮力匹配器,但具有汉明距离。
我通过使用 RANSAC 异常值过滤方法计算单应性来过滤这两种情况下的匹配,然后只保留选定的点对。
我试图摆弄描述符匹配器的参数,但结果并没有太大变化。
现在,您认为为什么 ORB 在这种情况下似乎表现更好有一个合理的解释吗?它可能更适合这种类型的图像吗?还是 SIFT 结果有问题?
编辑:一些代码:
从主要方面:
这是 sift 效果很好的另一种情况:
这是相同图像的两倍,但略微旋转和缩放。
c++ - opencv c++比较不同图像中的关键点位置
通过 比较 2 张图像时feature extraction
,您如何比较keypoint
距离以忽略那些明显不正确的距离?
我发现在比较相似的图像时,大多数时候它可以相当准确,但其他时候它可以抛出完全独立的匹配。
因此,我正在寻找一种方法来查看keypoints
两张图像中的 2 组图像,并确定匹配的图像是否keypoints
相对位于两者的相同位置。因为它知道keypoints
图像 1 上的 1、2 和 3 相距很远,所以在图像 2 上匹配的相应关键点应该又彼此相距相当相似的距离。
我过去曾使用过RANSAC
和minimum distance
检查过,但只是起到了一些作用,它们似乎不像我所追求的那样彻底。
(使用ORB
和BruteForce
)
编辑
将“x、y 和 z”更改为“1、2 和 3”
编辑 2——我将尝试通过快速绘制示例进一步解释:
假设我有这个作为我的形象:
我给它这张图片来比较:
它是原始版本的裁剪和压扁版本,但显然相似。
现在,假设您运行它feature detection
,它返回keypoints
了两个图像的以下结果:
两个图像上的keypoints
区域大致相同,并且彼此之间的距离也成比例地相同。拿keypoint
我圈出来的,我们称之为“Image 1 Keypoint 1”。
我们可以看到它周围有5个keypoints
。它与我想要获得的“图像 1 关键点 1”之间的这些距离,以便将它们与“图像 2 关键点 1”及其keypoints
在同一区域的 5 个环绕(见下文)进行比较,以便不只是将 akeypoint
与另一个进行比较keypoint
,但要根据keypoints
.
--
那有意义吗?
c++ - OpenCV 3 中的 FLANN 错误
我正在运行 Ubuntu 14.04。我正在尝试使用 openCV 3 运行 FLANN,但出现错误。
使用 AKAZE 和 ORB 尝试了下面的所有内容,但如果我尝试使用 ORB 则代码。
我使用 ORB 来查找描述符和关键点。
使用 ORB 后,我使用以下代码查找匹配项:
代码构建良好,一切正常。当我运行代码时,我收到此错误:
谁能告诉我为什么?OpenCV 3 是否处于 BETA 状态?有没有 FLANN 的替代品(BFMatcher 除外)
android - opencv中两幅图像之间的相似度
我正在尝试计算两个图像之间的相似度,但它每次都给我 0。
这是我的代码:
每次距离都是0。如果我给出相同的图像,它也会给我 0 的距离。