首页 > 解决方案 > 如何识别形状相似但大小不同的两个不同对象

问题描述

我正在使用 Mask-RCNN 神经网络。我重新训练了我的网络来检测和掩盖压铸玩具车的车轮。我正在使用图像,显示汽车的侧面(左侧或右侧)。

有时汽车有不同尺寸的车轮,如下图所示。前轮比后轮小得多。我想将前轮检测为“前轮”,将后轮检测为“后轮”。如果照片上只有一个轮子(由于裁剪不当),那么我想将这个轮子检测为“轮子”。

如果图像包含两个看起来相似的轮子,我应该怎么做才能掩盖 2 个轮子(并为它们分配适当的标签)?

汽车形象

标签: tensorflowmachine-learningkerasneural-networkcomputer-vision

解决方案


Mask-RCNN 可以单独分割对象的每个实例,而与对象的大小无关。它不根据透视对物体进行分类,它将两个轮子都分类为轮子。

如果你用前轮和后轮这样的两个类训练模型,当条件为真时它会正常工作,但当轮子大小相同时,它不会产生预期的输出。

您可以为不同的汽车组训练两种不同的模型,例如如果汽车有不同尺寸的车轮,那么它将车轮分类为前轮和后轮,这将是下一个模块。这种分割和分类将基于汽车后轮的尺寸总是比前轮大而不是小的逻辑。但是如果汽车不属于该类别,那么车轮将不会按尺寸进行细分,在这种情况下,它将仅将它们归类为车轮。


推荐阅读