上下文:
我正在尝试为移动设备创建一个Unity应用,该应用可以通过设备的物理摄像头识别汽车等大物体。
我当时在看Wikitude和Vuforia,但它们似乎都只能与可放在桌面上的小物体一起使用。除非我错过了什么?
我也在看Open CV和ARCore,但它们似乎只适用于矩形“标记”。例如,汽车不是矩形的,尽管汽车的形状从相同的角度总是相同的,但是通过窗户看到的背景和在汽车后面的对象总是不同的,这导致AR库尝试匹配非像素汽车的一部分。
问题:
如何创建一个可以通过手机的物理相机识别大物体或非矩形图像的Unity应用?
答案 0 :(得分:2)
来自相机的图像不包含任何物体的比例-它只是从光检测设备(通常是Cmos传感器)捕获的像素阵列。应用程序无法知道对象是大还是小(至少直到我们进入深度相机之前),因此识别图像的方法对于大对象和小对象都是完全相同的。
就您问题的根源而言:基于图像识别对象是一个非常棘手的主题,只有在我们仅教算法识别标记或QRCode的情况下,这些对象才变得可管理-这些对象专门为轻松设计可以识别,这就是为什么更多的图书馆在做这种事情。
Vuforia尝试识别所有对象,这非常了不起,并且不会在乎对象的大小,因此您可以尝试使用它,就简单的解决方案而言,这几乎是全部。
但是,这很可能只能在相同的照明条件下工作,并且如果天气变化等原因,如果汽车脏,潮湿而不是潮湿的话,它将失败。
一般情况下,就像在向人类展示物体的识别能力一样,这是不可能的,人类在识别汽车之前会训练他们的神经网络很多年。
有关更多信息,请阅读有关图像识别的真正有用的信息(在这种情况下,可口可乐罐比普通的“汽车”要简单得多)
Image Processing: Algorithm Improvement for 'Coca-Cola Can' Recognition
这是一张图像,显示较大的东西在相机上看起来是相同的