改进深度学习模型以检测可变条件下的火车车厢间隙

问题描述 投票:0回答:0

我们的团队从具有不同背景和距铁轨距离的不同摄像机位置记录行驶中的火车的视频流。我们的任务是收集每辆货车的信息,这需要检测它们之间的差距。我们使用 Yolov5 架构 和默认 数据增强 在包含 2000 多个标记图像以及无间隙的未标记图像的数据集上训练了一个深度神经网络。然而,我们遇到了一些误报和弱光条件下性能不佳的问题。

我们当前的后处理步骤包括运行 dbscan 算法以使用“耦合器”对帧进行分组(参见下图,了解耦合器周围的 bbox 示例),并根据平均置信度和标准差过滤掉低置信度示例。

此外,我们最近从不同位置收集了 50k 张图像,包括有耦合器和没有耦合器的图像。图像是使用当前应用程序动态收集的,如果我们以至少 60% 的置信度在其中找到耦合器,则图像将被分配为“GAP”类。耦合器置信度低于 60% 的图像被拒绝,没有耦合器的图像被分配到“NO_GAP”类。使用这些图像,我们使用 Yolov8 架构训练了带有标签 [GAP, NO_GAP] 的二元分类器。然而,我们不确定二元分类器是否可以很好地概括我们的任务,因为我们将许多不同的概念视为“NO_GAP”。

我们正在考虑其他深度学习架构,例如半监督学习和对比学习,作为我们问题的潜在解决方案。我们也有兴趣尝试不同的架构,例如使用补丁方法的 VIT,尽管我们对这些架构的经验有限。

我们的主要问题是:

  1. 您会推荐我们探索哪些深度学习架构或技术,以提高我们的模型在可变照明和环境条件下检测火车车厢间隙的准确性?

  2. 是否值得保留分类但使用不同的体系结构,例如带有修补方法的 VIT? 这些架构有没有具体的实现或者例子可以参考?

  3. 我们有很多未标记的数据。是否值得尝试使用自我监督学习作为“预训练”步骤?对于未标记/标记数据比率、所需的计算能力、选择算法以及如何确定何时停止预训练过程,是否有经验法则?

视频帧示例(检测到耦合器)

machine-learning deep-learning pytorch computer-vision self-supervised-learning
© www.soinside.com 2019 - 2024. All rights reserved.