可以使用人工神经网络来确定照片中物体的大小吗?

人工智能 神经网络 计算机视觉 预言 物体识别
2021-10-18 03:17:53

我的问题与此处提出的问题有关,但不重复

我在谷歌上搜索了很多问题的答案:如果您不知道镜头和物体之间的距离,并且图像中没有“刻度”,您能找到照片中物体的尺寸吗?

对此的压倒性答案是“不”。据我了解,这是因为,为了用这个方程解决这个问题,

D一世s一个nCe  bjeC()=F()*re一个l He一世GH()*一世一个Ge He一世GH(p一世Xels)bjeC He一世GH(p一世Xels)*sensr He一世GH()

您将需要知道“真实高度”或“到物体的距离”。这是“两个未知数,一个方程”的古老问题。那是无解的。解决此问题的一种方法是将已知尺寸的物体放置在与未知物体相同的平面上,找到与该物体的距离并使用该距离来计算未知物体的大小(这与问题的答案有关我在上面链接)。这相当于将尺子放在照片中,这是轻松解决此问题的好方法。

这是我的问题仍未得到解答的地方。如果没有统治者怎么办?如果您想找到解决无法解决的问题的方法怎么办?我们能否在不使用物距值或使用比例尺的情况下训练人工神经网络来逼近真实高度的值?有没有办法利用我们从 AI 中获得的意想不到的解决方案来解决看似无法解决的问题?

这是一个巩固我的问题性质的例子:

我想做一个应用程序,有人可以拿出他们的手机,拍一张距离地面约 1-3 英尺的冰雹照片,然后让应用程序给他们冰雹的尺寸。我的项目负责人希望使应用程序易于访问,这意味着他不想强迫用户随身携带四分之一或已知尺寸的特殊物体用作秤。

为了避免使用比例尺,是否可以使用这些照片中的所有EXIF元数据来训练神经网络以在合理的容错范围内近似冰雹的大小?出于某种原因,我的想法是,如果有足够的相关变量,我们可以设计一个人工神经网络,它可以为这个问题挑选出一些我们人类无法识别的模式。有谁知道这是否可能?如果是这样,是否有最适合这个问题的深度学习模型?如果不是,请让我摆脱痛苦并告诉我为什么这是不可能的。

2个回答

可以使用人工神经网络来确定照片中物体的大小吗?

是:从单目图像中学习深度

最后,深度只是大小的一种特殊形式。

当然,您需要部分已知的东西,例如另一辆车。您不需要知道汽车的确切尺寸,但您知道汽车一般有哪些尺寸。如果您有没有任何参考的图像,那是不可能的。

在我的论文中,我实际上使用基于单个单目图像的 CNN 解决了​​深度估计问题,因此我可以分享我理解该问题的经验。

正如您通常所说的那样,您遇到的问题是您无法直接通过几何方法恢复图像中场景的比例。即使您知道相机和镜头的属性(例如焦距),但仍然不知道场景的任何绝对大小,情况仍然不是这样。然而,神经网络仍然能够解决基于单目图像的深度估计任务(至少对于固定的相机属性),因为它通过对数据集的训练学习到已知的对象大小。这意味着它可以使用学习到的特定对象的大小和相对深度关系来给出场景中深度的相当好的近似值。

但是,在您的特殊情况下,如果我理解正确,这种方法将不起作用。如果您只是拍摄可以具有任意尺寸的石头的照片,并且图像中没有深度提示或任何与深度相关的独特图案,那么就没有机会估计绝对深度。CNN 最终可能只会学习您使用的数据集的一些平均深度值或重复的深度模式,或者记住整个训练集以最小化训练错误,因为它根本无法解决此任务。所以你不会得到一个能以某种方式泛化到新场景的工具。神经网络仍然只是一个函数逼近器,而不是可以解决无法解决问题的神奇东西。

对于您的用例,可能有一些(复杂的)解决方案可以为您提供或多或少准确的深度估计。例如,您可以使用运动方法的结构,您可以通过手机的加速度计以某种方式测量绝对相机运动。或者最好是基于立体相机的设置,您知道相机位置的绝对相机位移,如果您的图像中有纹理,则可以解决此任务。有了它,您可以通过经典的立体深度估计或使用估计立体​​图像对深度的 CNN 来找到特定点的绝对深度。