【发布时间】:2023-03-15 01:58:01
【问题描述】:
我是 Tensorflow 新手,我正在尝试训练一个用于对象检测的 1 类模型。特别是我试图识别如下箭头:
我需要非常快速的识别,所以我开始想知道预训练的模型是否可以包含这种形状。 不幸的是没有找到任何类似的东西,因此我开始使用faster_rcnn_inception_v2_coco_2018_01_28作为模型自己训练箭头。
我正在使用他的管道配置,我也在使用他的fine_tune_checkpoint,考虑到我必须训练一个完全不同的对象,这是对的吗?
结果是训练的准确性非常好,但速度非常慢。我需要提高帧率,但我还不明白“训练损失”是否越少,“物体识别速度”是否越多。
关于如何加快检测速度的任何建议?
【问题讨论】:
-
我想到的第一件事:Faster-RCNN 模型对于识别普通箭头的任务来说可能是一种过度杀伤力。也许尝试为实时使用而制作的对象检测模型(如 YOLO 或 SSD 'Single Shot Detector')可能是另一种选择。如果您不局限于使用 NN,您还可以考虑使用更简单的方法,例如 OpenCV 的 Haar Cascade Classifier,它应该足以识别简单的形状。
-
谢谢,您认为 OpenCV HCC 会检测到他不同位置的箭头吗?最后的需要是跟随机器人进入太空。我将箭头贴在机器人的头部,并在 3m 高 45° 的位置放置相机,我需要识别箭头并跟踪机器人的运动。对于该任务,您有更好的解决方案吗?
-
所以您不仅遇到了检测问题,而且还想检测旋转。 (不确定 Faster-RCNN 是否能够做到这一点,HCC 都不是)跟踪机器人的位置并根据其相对运动估计方向可能就足够了。
-
易于识别的形状是 AprilTags [april.eecs.umich.edu/software/apriltag] 或类似的代码。它们易于识别,并且可以包含方向信息。此外,还有许多语言的强大库。如果您想自己设计形状,使用两种颜色进行方向检测可能会有所帮助:一端带有红点的黄线可能比单色箭头更容易。
-
抱歉,我从未使用过 AprilTags,也不知道它的检测细节。这只是我脑海中浮现的一个想法。但我想有一些关于检测率的研究等待通过谷歌搜索找到:) 我想你的图像中代表 aprilTag 的一位的像素数是至关重要的。
标签: python opencv tensorflow deep-learning training-data