计算机视觉——DiffYOLO 改进YOLO与扩散模型的抗噪声目标检测

概述

物体检测技术在图像处理和计算机视觉中发挥着重要作用。其中,YOLO 系列等型号因其高性能和高效率而备受关注。然而,在现实生活中,并非所有数据都是高质量的。在低质量数据集中,更难准确检测物体。为了解决这个问题,人们正在探索新的方法。例如,本文提出了一个名为 DiffYOLO 的框架。这可以提高低质量数据集上物体检测的准确性。

介绍

近年来,YOLO 被广泛应用于自动驾驶和医学图像处理等多个领域的物体检测任务中。例如,Alice Freudevaux 等人从卫星图像中检测车辆,Sudipto Paul 等人在核磁共振图像上识别脑肿瘤,Ethan Gruby 等人自动检测面部地标。然而,包括 YOLO 在内的物体检测模型仍然难以准确检测嘈杂图像中的物体。在高质量数据上训练出来的模型在噪声测试集上可能表现不佳。因此,本文提出了一个名为 DiffYOLO 的框架,旨在改进在高质量数据上训练的现有模型,提高它们在噪声测试集上的性能。该框架从预先训练好的扩散模型中提取特征,并将其纳入现有的目标检测模型,以提高它们对噪声的免疫力。实验结果表明,所提出的方法提高了在噪声图像中的性能。该方法有望以更少的资源实现更高的准确率,而无需自行训练模型。

相关研究

物体检测

物体检测是计算机视觉的基本任务之一,目前已经有许多方法可供参考。例如,有两步法(如 R-CNN 和快速 RCNN),也有一步法(如 YOLO);自 YOLOv1 以来,YOLO 更好、更快的模型不断涌现,如 YOLOx 和 PP-YOLOE。本文使用 YOLOv5 来提高噪声环境下的性能。

扩散模型

扩散模型旨在清除数据中的随机噪音。与以往的模型不同,扩散模型采用逐步实现目标的方法,每一步都使用深度学习来去除噪声。研究表明,扩散模型可以使其他模型更能抵御噪声。

抗噪

预先训练的模型很容易获得,但实际的目标检测需要清晰的图像。例如,在发送工业现场的图像时,传输过程中的问题、雾和阴暗天气都会造成噪音。因此,NoisyNet 和 IA-YOLO 模型等方法可以处理噪声。

建议方法

普通 YOLO 模型(YOLOv5)发现,图像噪声会影响物体检测。例如,很难检测到雨雾中的物体。因此,我们提出了一种新思路,以便在噪声环境中准确检测物体。

第一步是解释如何去除噪点。添加噪点前有一个准备过程,去除噪点后有一个后处理过程。这是一种清洁图像的方法,包括添加噪点的过程和去除噪点的过程。

接下来,利用(Dhariwal 和 Nichol,2021 年)提出的想法,提取图像特征。这包括找到图像的重要部分。这样就能生成具有特殊抗噪能力的图像。

最后,具有这种特殊能力的图像被用来训练普通的 YOLO 模型。这样,即使在嘈杂的图像中,普通模型也能准确检测到物体。使用这种方法,模型无需再次训练。这不仅节省了时间,还能在更多情况下使用。

试验

尝试并测试查找 PCB(印刷电路板)缺陷的方法,并将其与常规方法进行比较。

数据集

数据集 DeepPCB 包含 1500 张实际照片。其中包含印刷电路板中的常见故障(如断线、金属触点)。在本实验中,高质量照片被用来训练模型,并用不同类型的噪声进行测试。

实验结果

在实践中,为了有效地训练模型,某些特征被禁用。本文采用的方法不是生成特征,而是预先存储这些特征,并根据需要将其加载到模型中。

下表列出了检测结果。(a) Yolov5 模型的检测结果 (b) DiffYolo 模型的检测结果。

表 1:高质量数据集的检测结果

下表比较了两种模型在高质量数据集上的性能。

表 2:加西亚噪声下的检测结果

高斯噪声是随机添加到图像中的噪声,即从均值为 0 的高斯分布中随机添加到像素值中。这会导致整个图像出现轻微的模糊和细微的颜色变化。

表 3:使用椒盐噪声的检测结果

椒盐噪点是由图像中随机像素突然添加白色或黑色值造成的。这会导致亮点或暗点散布在图像中,从而降低图像的整体质量。

表 4:正噪声下的检测结果

在光线不足的条件下拍摄的图像中经常会出现 "占有噪声"。这种噪点是由遵循泊松分布的光强随机变化造成的。图像亮度的随机变化会降低图像质量。

每个表格都显示了模型在不同类型噪声和高质量数据集中的表现,通过比较结果,我们可以了解每个模型在不同情况下的表现。我们发现,当添加噪声时,模型的性能会下降,但 DiffYOLO 的性能优于基线。换句话说,某些方法可以使模型更能抵抗噪声。这种方法不仅能发现故障,还能提高模型本身的性能。

结论

本文提出了一种新方法来提高物体检测的准确性。实验结果表明,利用从这一特定模型中学到的信息,可以获得比通常更好的性能。这样就可以利用在高质量图像上训练的模型,在噪声环境中准确检测出物体。不过,人们也注意到,当使用模型的计算资源不足或数据容易变化时,这种方法就会受到限制。

相关推荐
ybdesire14 分钟前
nanoGPT用红楼梦数据从头训练babyGPT-12.32M实现任意问答
人工智能·深度学习·语言模型
shiming88791 小时前
MATLAB图像处理
图像处理·计算机视觉·matlab
geekrabbit2 小时前
机器学习和深度学习的区别
运维·人工智能·深度学习·机器学习·浪浪云
FL16238631292 小时前
智慧交通基于yolov8的行人车辆检测计数系统python源码+onnx模型+精美GUI界面
yolo
阿利同学3 小时前
自动泊车系统中的YOLOv8 pose关键点车位线检测
yolo·自动泊车·关键点检测·车位检测·yolov8 pose·自定义模型训练·联系 qq1309399183
点PY3 小时前
基于Sparse Optical Flow 的Homography estimation
人工智能·opencv·计算机视觉
独木三绝4 小时前
OpenCV第八章——腐蚀与膨胀
人工智能·opencv·计算机视觉
柠檬少少开发5 小时前
图像拼接算法及实现(一)
人工智能·算法·计算机视觉
Python极客之家5 小时前
基于深度学习的眼部疾病检测识别系统
人工智能·python·深度学习·毕业设计·卷积神经网络
红米煮粥5 小时前
OpenCV-直方图
人工智能·opencv·计算机视觉