我打算参加我的增强现实学位课程。它将使用标记,虚拟对象之间也会有交互。 (某种模拟)。
您是否建议使用ARToolkit,NyARToolkit,osgART等库来进行此类项目,因为它们具有跟踪,检测,校准等所有功能?从程序员的角度来看还有很多工作要做吗?
如果我使用OpenCV并从头开始进行标记检测,识别,校准和其他步骤,您怎么看?会难以处理吗?
答案 0 :(得分:3)
我不知道您对图像或视频处理的熟悉程度如何,但如果希望它能够返回可靠的结果,那么从头开始编写跟踪器将非常耗时。努力还取决于您计划使用哪种标记。 Artoolkit例如将从视频流中检测到的标记内容与您之前定义为标记的图像进行比较。因此,它尝试匹配图像并返回视频流的某个部分是预定义标记的概率值。根据您要使用的阈值和照明情况,标记并不总是正确识别。然后还有其他标记,如datamatrix,qrcode,帧标记(由QCAR使用),可以光学编码id。因此,不需要图像匹配,可以从视频流中检索所有必要的数据。然后有更复杂的方法,如自然特征跟踪,您可以使用预定义的图像,因为它们提供足够的对比度和兴趣点,以便后来跟踪器可以识别它们。
因此,如果您对实际应用程序或交互更感兴趣,而不是了解跟踪器的工作方式,那么您应该将工作建立在现有库的基础之上。
答案 1 :(得分:3)
我建议您使用OpenCV,您会发现高质量的算法并且速度很快。他们不断开发新方法,很快就可以在手机中实时运行。
您可以从本教程开始here。
答案 2 :(得分:0)
我做了完全相同的事情,发现本书的第2章非常有帮助。他们提供source code for the marker tracking project,我写了framemarker generator tool。在OpenGL,相机校准,投影矩阵,标记和扩展方面,还有很多要弄清楚,但它是标记跟踪部分的良好基础。