【问题标题】:Detect rotated vehicle images检测旋转的车辆图像
【发布时间】:2020-05-08 05:16:03
【问题描述】:

我想将我的车辆图像(90、180 或 270 度)旋转到正确的位置。
我使用了一个假设:将图像旋转 4 个角度(0、90、180、270),并将每个图像分配给一个对象检测神经网络,给出最大汽车对象置信度分数的角度将是我必须用于旋转我的图像。
问题是:一些旋转 180 度的图像比原始图像给出更好的分数,因为 NN 错误地检测到有 2 个轮子的道路是汽车。例如:
The original image
The rotated image but get better score

我怎样才能防止这种情况发生?
我的模型:ssd_resnet_50_fpn_coco 来自model zoo
以下是其他一些失败案例:
1 2 enter image description here

【问题讨论】:

  • 您在图片中寻找什么?
  • 一个简单的技巧可能是检查边界框的质心。如果它在图像的上三分之一处,那么图像已经旋转了 180 度——轮子不可能在空中!您也可以通过这种方式测试其他旋转。有趣的问题,我相信有更好的解决方案!训练另一个输出层也可以帮助您解决问题。
  • @MH304 我正在尝试使用我在问题中提到的假设来检测我的图像是否旋转
  • @SuhasC 感谢您的破解,我会检查一下并告诉您它是否有效
  • @SuhasC 这是一个糟糕的 hack,因为图片可能只是显示了更多的汽车下方的道路

标签: image-processing computer-vision object-detection


【解决方案1】:

我找到了一个有点棘手的解决方案。
首先,我创建了一个模型(例如 SSD),它将检测 4 个类别,它们是图像的旋转角度,即:class1 - 0 度、class2 - 90 度等。
然后,模型将在 4:0 和 180 中正确找到 2 个标签。如果标签遇到 90 或 270(有时会被识别为另一个),我会将它们再次旋转 90 度,让模型预测什么它们的标签在 0 到 180 之间。之后,我会用 90 度减去度数得到正确的标签。

【讨论】:

    【解决方案2】:

    在图片中搜索轮子并确定它们的中心是在车箱上方还是下方。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-16
      • 1970-01-01
      • 2014-10-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-13
      相关资源
      最近更新 更多