掌桥专利:专业的专利平台
掌桥专利
首页

一种镜头清理方法、装置、设备及可读存储介质

文献发布时间:2024-04-18 20:01:23


一种镜头清理方法、装置、设备及可读存储介质

技术领域

本发明涉及镜头清理技术领域,具体而言,涉及一种镜头清理方法、装置、设备及可读存储介质。

背景技术

鱼眼镜头作为智能汽车重要的视觉传感器,成像质量尤为关键,但是由于其通常被安装在汽车外部,容易受到环境污染,影响相机的成像质量和图像算法的识别准确率。镜头污染检测多以传统学习方法为主,通过预测污染物的面积或概率来判断是否存在脏污,但是传统方法在复杂环境下的表现不佳,近几年,随着深度学习快速发展,镜头污染检测出现了基于图像分类算法的方法,但是这种方法难以判断污染物的具体位置,或是将镜头污染检测以多任务的方式将目标检测、语义分割融合,但是这种方法的模型过于复杂,计算量过大,同时,目前关于镜头污染检测的公开数据集较少,影响了进一步研究工作。因此亟需一种检测步骤简单、检测准确率高的检测方法和一种扩充镜头污染检测数据的方法。

发明内容

本发明的目的在于提供一种镜头清理方法、装置、设备及可读存储介质,以改善上述问题。

为了实现上述目的,本申请实施例提供了如下技术方案:

一方面,本申请实施例提供了一种镜头清理方法,所述方法包括:

获取鱼眼镜头在预设时间长度内采集的每一帧待检测图像;

将所述待检测图像输入训练后的语义分割模型中,得到输出图像;对所述输出图像依次进行均衡化和二值化处理,得到所述待检测图像中污染物的轮廓,根据所述轮廓计算污染物的面积和中心坐标;基于所述污染物的面积和中心坐标判断每一帧待检测图像是否需要清理污染物,得到多个判断结果;

对多个判断结果进行分析,当多个判断结果均为需要清理污染物则需要对镜头进行清理。

进一步的,将所述待检测图像输入训练后的语义分割模型中,得到输出图像,包括:

从公开数据集WoodScape获取图像,所述图像标签为三元图,三元图包括前景、背景和未分类区域,所述前景包括污染物,所述未分类区域包括污染物的模糊边缘;

针对每一张图像,选取所述图像中的的未分类区域,对所述未分类区域进行膨胀操作,得到膨胀后的未分类区域;根据所述图像和所述膨胀后的未分类区域,通过抠图算法抠出图像的前景alpha通道和前景图像;将所述前景图像叠加在所述鱼眼镜头所属的汽车采集的鱼眼图像上,并根据alpha通道的值调整前景图像的透明度,作为数据图像;同时,将alpha通道中值为1的像素设为黑色,值为0的像素设为白色,值在0-1范围内的设为不同程级的灰度,得到一张灰度图像,作为所述数据图像的标签,将添加标签的数据图像作为一个样本;

基于Resnet网络和Unet网络,构建语义分割模型,并利用全部的样本完成训练,得到训练后的语义分割模型;将所述待检测图像输入训练后的语义分割模型中,得到输出图像,所述输出图像为与待检测图像同样大小的灰度图像。

进一步的,基于Resnet网络和Unet网络,构建语义分割模型,并利用全部的样本完成训练,得到训练后的语义分割模型,包括:

在训练时,模型的输入到输出流程如下:

将样本依次经过三个Resnet Block模块,得到浅层特征;将浅层特征依次输入卷积层、BN层、ReLU层得到深层特征;

引入Unet网络中提到的跳跃连接,将得到的浅层特征与深层特征进行拼接,得到拼接后的特征;将所述拼接后的特征通过卷积层、BN层、ReLU层得到含有浅层特征空间信息和深层特征语义信息的特征图,再将所述特征图通过卷积层、BN层、ReLU层和上采样层,得到最终特征图;再将最终特征图引入sigmoid激活函数中,输出一个像素值在0-1的灰度图像,完成一次训练。

进一步的,根据所述轮廓计算污染物的面积和中心坐标,包括:

根据所述轮廓确定包含所述污染物的最小矩形框,将所述最小矩形框的面积作为污染物的面积,将矩形框的中心坐标作为所述污染物的中心坐标。

进一步的,基于所述污染物的面积和中心坐标判断每一帧待检测图像是否需要清理污染物,得到多个判断结果,包括:

根据所述污染物的面积过滤掉小于预设面积的污染物,再将剩余的污染物进行排序,其中按照污染物的中心坐标与待检测图像的中心坐标的距离对污染物进行从近到远排序;

排序后将每个污染物依次进行判断,判断是否需要清理污染物。

进一步的,排序后将每个污染物依次进行判断,判断是否需要清理污染物,包括:

在待检测图像上设定红框、黄框和绿框,所述红框的长度为待检测图像长度的1/2,所述红框的宽度为待检测图像宽度的1/2;所述黄框的长度为待检测图像长度的3/4,所述黄框的宽度为待检测图像宽度的3/4;所述绿框的长宽与待检测图像长宽一样;所述红框、黄框和绿框的中心点与所述待检测图像的中心点重合;

排序后将每个污染物依次进行判断:根据所述污染物的中心坐标判断所述污染物的中心是否处于红框中,若处于红框中,则需要清理污染物,若不处于红框中则判断所述污染物的中心是否处于黄框中,若不处于黄框中,则执行第一判断步骤,所述第一判断步骤包括:

判断所述污染物的中心是否处于绿框中,若不处于绿框中,则判断污染物与黄框相交部分的面积是否大于第一数值,若大于则需要清理污染物,反之则判断污染物与绿框相交部分的面积是否大于第二数值,大于则需要清理污染物;

若处于黄框中,则执行第二判断步骤,所述第二判断步骤包括:

判断污染物与红框相交部分的面积是否大于第三数值,若大于则需要清理污染物,反之则判断污染物与黄框相交部分的面积是否大于第一数值,大于则需要清理污染物,反之执行所述第一判断步骤。

第二方面,本申请实施例提供了一种镜头清理装置,所述装置包括获取模块、判断模块和分析模块。

获取模块,用于获取鱼眼镜头在预设时间长度内采集的每一帧待检测图像;

判断模块,用于将所述待检测图像输入训练后的语义分割模型中,得到输出图像;对所述输出图像依次进行均衡化和二值化处理,得到所述待检测图像中污染物的轮廓,根据所述轮廓计算污染物的面积和中心坐标;基于所述污染物的面积和中心坐标判断每一帧待检测图像是否需要清理污染物,得到多个判断结果;

分析模块,用于对多个判断结果进行分析,当多个判断结果均为需要清理污染物则需要对镜头进行清理。

第三方面,本申请实施例提供了一种镜头清理设备,所述设备包括存储器和处理器。存储器用于存储计算机程序;处理器用于执行所述计算机程序时实现上述镜头清理方法的步骤。

第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述镜头清理方法的步骤。

本发明的有益效果为:

1、本发明提供了一种能够自动检测镜头脏污的算法,主要是解决传统方法检测效果不佳,检测步骤繁琐的缺点。本发明的检测方法只需要输入一张原始图像,就可以自动地检测出镜头上脏污的位置和面积,不需要人工设定阈值且不受污染物类型的影响,大大提高了检测效率和准确率。

2、鱼眼镜头由于广阔的视野,给自动驾驶任务带来了巨大优势,但是由于其安装位置相对较低,容易受到灰尘、污水、泥土等污染物的附着,从而影响小车的视野和驾驶员的驾驶体验,因此,对于自动驾驶领域,镜头的污染检测是一个至关重要的任务。目前市场上鲜有镜头污染检测的方法,已有的专利方法使用的多为图像分类算法,但是其预测的细粒度不够且难以判断污染物的具体位置,且多数方法是针对相机镜头进行污染检测判断,少有对车载鱼眼镜头污染进行检测,因此,本发明方法给车载鱼眼镜头污染检测提供了一次创新,同时提高自动驾驶任务的稳定性。

3、本发明针对现有镜头污染检测方法检测步骤繁琐、检测精度不佳,表现不佳,设计了一种检测步骤简单、检测准确率高的镜头污染检测方法,同时由于公开污染检测数据集较少,设计了一种扩充镜头污染检测数据的方法,具体为设计了一种污染图像标注工具,构建了污染检测数据集。

本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本发明实施例中的镜头清理方法流程示意图;

图2是本发明实施例中不同处理方式对输出图像进行处理的对比结果图;

图3是本发明实施例中红框、黄框和绿框的划分示意图;

图4是本发明实施例中的镜头清理装置结构示意图;

图5是本发明实施例中的镜头清理设备结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号或字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

实施例1

如图1所示,本实施例提供了一种镜头清理方法,该方法包括步骤S1、步骤S2和步骤S3。

步骤S1、获取鱼眼镜头在预设时间长度内采集的每一帧待检测图像;

在本步骤中,预设时间长度可以根据用户需求进行自定义设置,本实施例中预设时间长度为1s;

步骤S2、将所述待检测图像输入训练后的语义分割模型中,得到输出图像;对所述输出图像依次进行均衡化和二值化处理,得到所述待检测图像中污染物的轮廓,根据所述轮廓计算污染物的面积和中心坐标;基于所述污染物的面积和中心坐标判断每一帧待检测图像是否需要清理污染物,得到多个判断结果;

在本步骤中,将所述待检测图像输入训练后的语义分割模型中,得到输出图像的具体实现步骤包括步骤S21、步骤S22和步骤S23;

步骤S21、从公开数据集WoodScape获取图像,所述图像标签为三元图,三元图包括前景、背景和未分类区域,所述前景包括污染物,所述未分类区域包括污染物的模糊边缘;

针对鱼眼镜头污染检测这一任务,当前公开数据集数量较少,难以满足现实中复杂多变的场景,因此,基于公开数据集的污染物标签,自建了鱼眼镜头污染检测数据集。公开数据集WoodScape共包括5000张图片,其图像标签为三元图(Trimap),分为前景(污染物)、背景和未分类区域(污染物的模糊边缘)。

步骤S22、针对每一张图像,选取所述图像中的的未分类区域,对所述未分类区域进行膨胀操作,得到膨胀后的未分类区域;根据所述图像和所述膨胀后的未分类区域,通过抠图算法抠出图像的前景alpha通道和前景图像;将所述前景图像叠加在所述鱼眼镜头所属的汽车采集的鱼眼图像上,并根据alpha通道的值调整前景图像的透明度,作为数据图像;同时,将alpha通道中值为1的像素设为黑色,值为0的像素设为白色,值在0-1范围内的设为不同程级的灰度,得到一张灰度图像,作为所述数据图像的标签,将添加标签的数据图像作为一个样本;

在本步骤中,针对每张图像均进行此操作,即可获得大量的样本集;

步骤S23、基于Resnet网络和Unet网络,构建语义分割模型,并利用全部的样本完成训练,得到训练后的语义分割模型;将所述待检测图像输入训练后的语义分割模型中,得到输出图像,所述输出图像为与待检测图像同样大小的灰度图像。

在本步骤中,基于Resnet网络和Unet网络,构建语义分割模型,并利用全部的样本完成训练,得到训练后的语义分割模型,包括步骤S231;

步骤S231、在训练时,模型的输入到输出流程如下:

将样本依次经过三个Resnet Block模块,得到浅层特征;将浅层特征依次输入卷积层、BN层、ReLU层得到深层特征;

引入Unet网络中提到的跳跃连接,将得到的浅层特征与深层特征进行拼接,得到拼接后的特征;将所述拼接后的特征通过卷积层、BN层、ReLU层得到含有浅层特征空间信息和深层特征语义信息的特征图,再将所述特征图通过卷积层、BN层、ReLU层和上采样层,得到最终特征图;再将最终特征图引入sigmoid激活函数中,输出一个像素值在0-1的灰度图像,完成一次训练。

在本步骤中,样本可以理解为一张大小为1280x960,通道数为3的样本图像;将所述样本图像经过三个Resnet Block模块,得到浅层特征,所述浅层特征包括160x120x32、80x60x64和40x30x128大小的特征图;将浅层特征依次输入卷积层、BN层、ReLU层得到深层特征,所述深层特征包括80x60x64,160x120x32大小的特征图;最终特征图为1280x960x1的特征图;

在本步骤中,考虑到污染物的边缘大多比较柔和,在步骤4得到的最后一层特征图后引入sigmoid激活函数,保证最终的输出结果在0~1范围内,而不是传统语义分割任务只有0、1两个数值的输出,相当于将是否存在污染物转换为污染物存在的概率,更符合车载镜头污染检测的实际场景。

在本步骤中,在训练的时候还可以将全部的样本进行划分,其中训练集和测试集的比例为9:1。训练的轮次为120次,损失函数为MSE loss,优化器旋转Adam优化器,学习率设为0.0001,训练的batch size设为128,模型的评价指标使用mse和mtntp,其中mtntp是通过混淆矩阵进行计算。模型的检测检出率为99.24%,误检率为1.54%。

在步骤S2中,使用限制对比度自适应直方图均衡化方法(Contrast LimitedAdaptive Histogram Equalization,CLAHE)主要是考虑到一些alpha值较小的污染物(如透光材质、雨水等),如果直接对灰度图像进行二值化,会过滤掉这些物体,同时使用直方图均衡化(Histogram Equalization,HE)的效果不如CLAHE。当图像像素值分布比较均衡时,HE的效果较好;但是如果图像的颜色比较集中,存在明显的暗区或亮区,效果不佳。使用二值化是为了获得更准确的污染物轮廓。对比结果如图2,因此选用CLAHE结合二值化进行处理,得到待检测图像中污染物的轮廓。

在步骤S2中,根据所述轮廓计算污染物的面积和中心坐标的具体实现步骤包括步骤S24;

步骤S24、根据所述轮廓确定包含所述污染物的最小矩形框,将所述最小矩形框的面积作为污染物的面积,将矩形框的中心坐标作为所述污染物的中心坐标。

在步骤S2中,基于所述污染物的面积和中心坐标判断每一帧待检测图像是否需要清理污染物,得到多个判断结果的具体实现步骤包括步骤S25和步骤S26;

步骤S25、根据所述污染物的面积过滤掉小于预设面积的污染物,再将剩余的污染物进行排序,其中按照污染物的中心坐标与待检测图像的中心坐标的距离对污染物进行从近到远排序;

在本步骤中,过滤掉面积小于32*32的污染物;按照污染物的中心坐标与待检测图像的中心坐标的直线距离污染物进行从近到远排序,其中距离越近,排列越靠前;

步骤S26、排序后将每个污染物依次进行判断,判断是否需要清理污染物。本步骤的具体实现步骤包括步骤S261和步骤S262;

步骤S261、在待检测图像上设定红框、黄框和绿框,所述红框的长度为待检测图像长度的1/2,所述红框的宽度为待检测图像宽度的1/2;所述黄框的长度为待检测图像长度的3/4,所述黄框的宽度为待检测图像宽度的3/4;所述绿框的长宽与待检测图像长宽一样;所述红框、黄框和绿框的中心点与所述待检测图像的中心点重合;

在本步骤中,将待检测图像划分为红色、黄色和绿色3个区域,表示图像不同区域受污染的重要程度,如图3所示。设定各个矩形框的中点均为待检测图像的中点。

步骤S262、排序后将每个污染物依次进行判断:根据所述污染物的中心坐标判断所述污染物的中心是否处于红框中,若处于红框中,则需要清理污染物,若不处于红框中则判断所述污染物的中心是否处于黄框中,若不处于黄框中,则执行第一判断步骤,所述第一判断步骤包括:

判断所述污染物的中心是否处于绿框中,若不处于绿框中,则判断污染物与黄框相交部分的面积是否大于第一数值,若大于则需要清理污染物,反之则判断污染物与绿框相交部分的面积是否大于第二数值,大于则需要清理污染物;

若处于黄框中,则执行第二判断步骤,所述第二判断步骤包括:

判断污染物与红框相交部分的面积是否大于第三数值,若大于则需要清理污染物,反之则判断污染物与黄框相交部分的面积是否大于第一数值,大于则需要清理污染物,反之执行所述第一判断步骤。

在本步骤中,待检测图像大小为1280*960,因为输出图像为与待检测图像同样大小的灰度图像,因此可以据此来判断污染物与红框、黄框和绿框的关系;污染物图案主要从公开数据上抠取,根据统计分析,污染物尺寸分为5类,从小到大分别为32*32,64*64,128*128,256*256,512*512。因此,将第一数值设置为128*128,第二数值设置为512*512,第三数值设置为32*32;同时,在本步骤中,每一帧待检测图像对应有至少一个污染物,当其中一个污染物检测结果为需要清理污染物时,则这一待检测图像对应的检测结果即为需要清理污染物。

步骤S3、对多个判断结果进行分析,当多个判断结果均为需要清理污染物则需要对镜头进行清理。

本步骤中,考虑到单帧图像的检测结果不够准确,规定当连续1秒内采集到的待检测图像都判断需要清理污染物时,则进行镜头清理。

实施例2

如图4所示,本实施例提供了一种镜头清理装置,所述装置包括获取模块701、判断模块702和分析模块703。

获取模块701,用于获取鱼眼镜头在预设时间长度内采集的每一帧待检测图像;

判断模块702,用于将所述待检测图像输入训练后的语义分割模型中,得到输出图像;对所述输出图像依次进行均衡化和二值化处理,得到所述待检测图像中污染物的轮廓,根据所述轮廓计算污染物的面积和中心坐标;基于所述污染物的面积和中心坐标判断每一帧待检测图像是否需要清理污染物,得到多个判断结果;

分析模块703,用于对多个判断结果进行分析,当多个判断结果均为需要清理污染物则需要对镜头进行清理。

需要说明的是,关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

实施例3

相应于上面的方法实施例,本公开实施例还提供了一种镜头清理设备,下文描述的镜头清理设备与上文描述的镜头清理方法可相互对应参照。

图5是根据一示例性实施例示出的一种镜头清理设备800的框图。如图5所示,该镜头清理设备800可以包括:处理器801,存储器802。该镜头清理设备800还可以包括多媒体组件803,I/O接口804,以及通信组件805中的一者或多者。

其中,处理器801用于控制该镜头清理设备800的整体操作,以完成上述的镜头清理方法中的全部或部分步骤。存储器802用于存储各种类型的数据以支持在该镜头清理设备800的操作,这些数据例如可以包括用于在该镜头清理设备800上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如联系人数据、收发的消息、图片、音频、视频等等。该存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。多媒体组件803可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器802或通过通信组件805发送。音频组件还包括至少一个扬声器,用于输出音频信号。I/O接口804为处理器801和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件805用于该镜头清理设备800与其他设备之间进行有线或无线通信。无线通信,例如Wi-Fi,蓝牙,近场通信(NearFieldCommunication,简称NFC),2G、3G或4G,或它们中的一种或几种的组合,因此相应的该通信组件805可以包括:Wi-Fi模块,蓝牙模块,NFC模块。

在一示例性实施例中,该镜头清理设备800可以被一个或多个应用专用集成电路(Application Specific Integrated Circuit,简称ASIC)、数字信号处理器(DigitalSignal Processor,简称DSP)、数字信号处理设备(Digital Signal ProcessingDevice,简称DSPD)、可编程逻辑器件(Programmable Logic Device,简称PLD)、现场可编程门阵列(Field Programmable Gate Array,简称FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的镜头清理方法。

在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的镜头清理方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器802,上述程序指令可由该镜头清理设备800的处理器801执行以完成上述的镜头清理方法。

实施例4

相应于上面的方法实施例,本公开实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的镜头清理方法可相互对应参照。

一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的镜头清理方法的步骤。

该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术分类

06120116546605