如何训练张量流(或keras或caffe)模型来检测对象以及与相机的距离



我有一个带有1000张标签图像的数据集,只有一个类(汽车)以及它们在拍摄图片时距相机的距离。

我想训练一个张量流(keras或caffe示例也可以),以检测其他汽车(我已经知道这是如何),但也尝试尽可能准确地预测它们的距离从数据集中学到了什么。

有什么想法吗?

谢谢!

原则上,它不会太多地改变检测对象类的问题。您必须具有具有对象类型和距离的数据集才能训练。

但是,不要期望精确的精度距离是图像中未直接编码的东西。没有办法真正知道一个大球或近距离的小球之间的区别。知道对象的类可以帮助,因为特定对象具有典型的大小。因此,椅子的标准尺寸很大,因此图像中的相对大小可以更好地解释为距离。

可以帮助的另一件事是在配置中拥有多个摄像头,例如我们的眼睛。在这种配置中,您甚至不需要训练模型。相机之间的图像位移应该足以说出屏幕上所有内容的距离。可能有OpenSource软件可以实现此功能。

至于第一个想法的实现。您应该构建用于提取功能的TensorFlow图。并创建一些用于分类的额外层和一些额外的层来预测距离。(搜索多头网络以获取更多详细信息)

您的问题非常愤怒,因此我真的无法对要使用的架构或类似的架构给出更具体的答案。

可以估计可以使用以下方法的距离:

  1. 使用立体声摄像头。在这种情况下,使用图像位移计算距离
  2. 使用深度为单位模型的深度。这通常是一个对相应标记数据训练的深神经网络。
  3. 如果您校准了假设"平坦世界"的相机,则可以从边界框的高度位置估算距离。在这种情况下,Bbox的最低点投影在虚构地面上。

最新更新