android - AR Android应用程序的3D对象识别

标签 android opencv augmented-reality object-recognition

我正在尝试开发AR Android应用程序。
它应该检测并识别相机捕获的对象,为此,我正在使用OpenCV,但我对AR Realm 中的移动设备的对象识别不是很熟悉。

我有两个问题:

1- SIFT,SURF,FAST,ORB或其他算法中哪种算法更好(在精度和速度方面都有意义)?

2-我想知道检测和跟踪的过程是否会像这样:
拍摄相机帧,检测其关键点,计算其描述符,然后将其与数据库中可用的每张图像(描述符垫)进行匹配,以找到其所属的图像。
我觉得上述步骤在计算上会很繁琐,尤其是在每一帧都重复执行这些步骤以保持跟踪对象的情况下。

请向我提供一些最适合我目标的算法和步骤的详细信息。
提前致谢

最佳答案

我知道这是一个老问题,但我认为它可以为他人提供帮助。

有一个很好的教程,它使用Android,OpenCV和OpenGL ES 3.0使用NDK与Android Studio一起构建了一个小型AR应用程序。
它有很好的解释和一个Github仓库来检查代码。

http://www.anandmuralidhar.com/blog/android/simple-ar/

它使用ORB功能检测/匹配标记以在场景中生成3D对象。
关于第二点,本教程可以使您了解该过程如何工作。

关于android - AR Android应用程序的3D对象识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38028752/

相关文章:

android - 应用程序在后台时无法导航

java - 想要使用 GoogleMaps - OnMyLocationChangeListener 但无法实现?任何其他选项

android - 如何开始幻灯片放映 SD 卡中文件夹中的图片

Android:为什么 View 的ID应该是正数?

opencv - 如何在opencv中计算复数的绝对值

python - 无法使用 OpenCV 创建基本视频文件

OpenCV相机标定世界坐标系原点

swift - 我无法在加载的 SceneKit 模型中移动

java - Android FrameLayout 中的分层 SurfaceView

java - ARCore 是否有像 ARKit 那样的 session 委托(delegate)方法?