对象检测 ARKit vs CoreML

我正在为iPhone开发一个ARKit应用程序。我需要检测特定的香水瓶,并根据检测结果显示内容。我使用了developer.apple.com上的演示应用来扫描现实世界的物体并导出.arobject文件,我可以在资产中使用。它工作得很好,尽管由于瓶子是玻璃制成的,检测效果非常差。它只能在扫描位置的2-30秒内检测到,或者根本无法检测到。扫描的合并并没有改善情况,反而有时使情况变得更糟。合并后的结果可能有奇怪的方向。

我该怎么解决这个问题呢?

如果没有办法,CoreML能帮我吗?我可以拍很多照片来训练模型。如果我对每一帧进行匹配检查,这种方法有机会成功吗?


回答:

关于玻璃折射

由于玻璃折射现象和不同的光照条件,香水瓶的对象识别过程(在ARKit和CoreML中)是最复杂的。

看看下面的图片 – 在不同位置有三个玻璃球:

enter image description here

这些玻璃球具有不同的菲涅耳折射率(IOR)、环境、相机的视角、大小和光照条件。但它们具有相同的形状、材质和颜色。

因此,加速识别过程的最佳方法是使用相同的背景/环境(例如单色浅灰色纸背景)、相同的光照条件(光的位置、强度、颜色和方向)、良好的形状可读性( благодаря бликам)以及相同的相机视角。

enter image description here

我知道,有时候无法遵循这些建议,但这些建议确实有效。

Related Posts

在使用k近邻算法时,有没有办法获取被使用的“邻居”?

我想找到一种方法来确定在我的knn算法中实际使用了哪些…

Theano在Google Colab上无法启用GPU支持

我在尝试使用Theano库训练一个模型。由于我的电脑内…

准确性评分似乎有误

这里是代码: from sklearn.metrics…

Keras Functional API: “错误检查输入时:期望input_1具有4个维度,但得到形状为(X, Y)的数组”

我在尝试使用Keras的fit_generator来训…

如何使用sklearn.datasets.make_classification在指定范围内生成合成数据?

我想为分类问题创建合成数据。我使用了sklearn.d…

如何处理预测时不在训练集中的标签

已关闭。 此问题与编程或软件开发无关。目前不接受回答。…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注