增强现实:仅标记识别
想想通常的增强现实实现:有一个或多个标记,软件识别标记并通常在标记上显示一些内容。
我只对第一部分感兴趣。我需要一个算法、组件、框架或类来确定照片中是否存在给定的标记。
我可以从哪里开始?我更喜欢 Java 或 C++ 组件,但我不受这些语言的限制。
Think about the usual augmented reality implementations: there's one or more marker, the software recognize the markers and usually shows something on top of them.
I'm interested just in the first part. I need an algorithm, component, framework or class to determine if a given marker is present or not in a photo.
Where can I start from? I prefer a component for Java or C++, but I'm not limited by these languages.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我想你应该看到 opencv' 检测器:特征检测(有示例,find_obj.cpp 示例随 opencv 包一起提供)。 ARToolKit 中描述并实现了最流行的算法(只需 google 即可)。
I guess you should see opencv' detectors: Feature Detection (there is example, find_obj.cpp sample shipped with opencv package). The most popular algorithm is described and implemented in ARToolKit (just google it).
我不确定这是否有帮助,但对于 Java,您可以查看 ZXing。它是一个条形码阅读器库,但读取 QR 码的任务相当于识别条形码中的 3-4 个标记。您可能会发现它的方法可以重用。
I'm not sure this if this is helpful or not, but for Java, you might look at ZXing. It is a barcode reader library, but the task of reading QR codes amounts to recognizing 3-4 markers in the barcode. You might find its approach reusable.
OpenCV for C++(也有 Python 绑定)将是一个很好的起点。
OpenCV for C++ (also has Python bindings) would be a good place to start.
您本质上需要通过视频来跟踪对象。有几种方法可以使用 OpenCV 来实现这一点,这些方法在他们的页面上有解释 运动分析和对象跟踪。
You essentially need to track an object through a video. There are several ways to do that with OpenCV which are explained in their page on Motion Analysis and Object Tracking.