我正在使用 Python(OpenCV、keras-retinanet、tensorflow)构建一个计算机视觉应用程序,它需要检测一个对象,然后计算该前面对象后面有多少个对象。因此,对象通常是重叠的。
例如:这个队列有多少人?
在这里,目的是检测队列前面(前景)的人,然后检测前面人后面的人数,尽管后面的人被遮挡了。
我已经使用 keras-retinanet 建立了一个对象识别模型来查找前景中的对象,但现在我需要计算该对象后面有多少。我的训练数据是成千上万的直线物体图像,类似于上面链接的图像。
但是,当前面的对象被部分遮挡时(队列中的其他人),我一直无法找到一种可行的方法来计算前面对象后面的对象。
到目前为止,我已经尝试计算边缘(使用自动阈值),降低我的对象检测模型的置信度阈值,并仅使用模糊对象作为训练来训练新的对象检测模型。这些方法都具有非常低的准确性。
你对我如何解决这个问题有什么建议或指导吗?