图像检测方法及装置与流程
未命名
08-27
阅读:105
评论:0
1.本说明书一个或多个实施方式涉及计算机视觉技术领域,尤其涉及一种图像检测方法及装置。
背景技术:
2.随着视频拍摄与制作技术的发展,用户对超高清视频的质量要求和观看体验越来越关注,因此针对视频质量的检测尤为重要。视频质量检测主要针对视频帧图像中存在的缺陷进行发现和定位,相关技术中主要依赖人工实现,视频质量检测的精度和效率较低。
技术实现要素:
3.为提高图像局部缺陷的检测精度及效率,本说明书一个或多个实施方式提供一种图像检测方法、装置、电子设备及存储介质。
4.第一方面,本说明书一个或多个实施方式提供了一种图像检测方法,包括:
5.对待检测图像进行图像检测,得到所述待检测图像上的各个局部区域对应的缺陷图和缺陷分值,所述缺陷图用于表征所述局部区域上的图像缺陷,所述缺陷分值用于表示所述局部区域上的图像缺陷的程度;
6.根据各个局部区域对应的缺陷图和缺陷分值,确定所述局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数;
7.根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定所述待检测图像对应的缺陷检测结果。
8.本说明书一个或多个实施方式中,所述对待检测图像进行图像检测,得到所述待检测图像上的各个局部区域对应的缺陷图和缺陷分值,包括:
9.以预设图像尺度对所述待检测图像进行分块处理,得到所述待检测图像包括的各个局部图像块,所述局部图像块包括所述局部区域;
10.对于每个局部图像块,确定所述局部图像块对应的图像特征和亮度值误差;
11.根据所述图像特征和所述亮度值误差进行融合处理,得到所述局部区域对应的所述缺陷图和所述缺陷分值。
12.本说明书一个或多个实施方式中,所述缺陷检测结果包括所述待检测图像在每个缺陷类别所对应的缺陷严重度;所述根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定所述待检测图像对应的缺陷检测结果,包括:
13.对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数;
14.根据各个局部区域在该缺陷类别所对应的缺陷程度参数,确定所述待检测图像在该缺陷类别所对应的缺陷严重度。
15.本说明书一个或多个实施方式中,所述缺陷检测结果包括所述待检测图像在各个缺陷类别所对应的热力图;所述根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定所述待检测图像对应的缺陷检测结果,包括:
16.对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数;
17.对于所述热力图中的每个像素,基于包括该像素的各个局部区域对应的所述缺陷程度参数,确定该像素的热力值;
18.根据每个像素对应的热力值,生成所述待检测图像在所述缺陷类别所对应的热力图。
19.本说明书一个或多个实施方式中,图像检测方法还包括:
20.对于每个缺陷类别,对所述缺陷类别所对应的热力图进行图像检测,确定所述热力图上包括的图像缺陷的位置信息;
21.根据所述位置信息在所述待检测图像上生成各个图像缺陷所对应的缺陷检测框。
22.本说明书一个或多个实施方式中,所述缺陷检测结果包括所述待检测图像对应的整图缺陷图和整图缺陷分值,图像检测方法还包括:
23.基于各个局部区域对应的缺陷图进行融合处理,得到所述待检测图像对应的整图缺陷图;
24.基于各个局部区域对应的缺陷分值,得到所述待检测图像对应的整图缺陷分值。
25.本说明书一个或多个实施方式中,所述对于每个所述局部图像块,确定所述局部图像块对应的图像特征和像素误差,包括:
26.将所述局部图像块输入预先训练的特征提取子网络,得到所述特征提取子网络输出的所述图像特征;
27.将所述局部图像块输入预先训练的误差检测子网络,得到所述误差检测子网络输出的所述亮度值误差;
28.所述根据所述图像特征和所述亮度值误差进行融合处理,得到所述局部图像块对应的所述缺陷图和所述缺陷分值,包括:
29.将所述图像特征和所述亮度值误差输入预先训练的融合子网络,得到所述融合子网络输出的所述缺陷图和所述缺陷分值。
30.本说明书一个或多个实施方式中,对所述特征提取子网络、所述误差检测子网络以及所述融合子网络进行网络训练的过程,包括:
31.获取样本数据集;所述样本数据集中的每个样本数据包括:样本图像、所述样本图像对应的像素误差标签以及所述样本图像对应的质量分值;
32.将所述样本图像输入待训练的误差检测子网络,得到所述误差检测子网络输出的亮度值误差;将所述样本图像输入待训练的特征提取子网络,得到所述特征提取子网络输出的图像特征;将所述亮度值误差和所述图像特征输入待训练的融合子网络,得到融合子网络输出的缺陷分值;
33.基于所述亮度值误差与所述像素误差标签之间的第一差异,以及所述缺陷分值与所述质量分值之间的第二差异,对所述特征提取子网络、所述误差检测子网络以及所述融合子网络的参数进行调整,直至满足收敛条件。
34.本说明书一个或多个实施方式中,所述根据各个局部区域对应的缺陷图和缺陷分值,确定所述局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数,包括:
35.对于每个所述局部图像块,将所述局部图像块及其对应的所述缺陷图、所述缺陷分值,输入预先训练的多任务检测网络,得到所述多任务检测网络输出的所述局部图像块
在每个缺陷类别对应的缺陷程度参数。
36.本说明书一个或多个实施方式中,对所述多任务检测网络进行网络训练的过程,包括:
37.获取样本数据集;所述样本数据集中的每个样本数据包括:样本图像、所述样本图像对应的缺陷类别标签以及在各个缺陷类别所对应的缺陷程度标签;
38.将所述样本图像输入训练后的特征提取子网络和所述误差检测子网络,得到所述特征提取子网络输出的图像特征以及所述误差检测子网络输出的亮度值误差;将所述图像特征和所述亮度值误差输入训练后的融合子网络,得到所述融合子网络输出的缺陷图和缺陷分值;
39.将所述样本图像及其对应的所述缺陷图和所述缺陷分值输入待训练的多任务检测网络,得到所述多任务检测网络输出的缺陷类别和缺陷程度参数,基于所述缺陷类别与所述缺陷类别标签的差异,和/或,所述缺陷程度参数与所述缺陷程度标签的差异,对所述多任务检测网络的参数进行调整,直至满足收敛条件,得到训练后的多任务检测网络。
40.本说明书一个或多个实施方式中,所述获取样本数据集包括:
41.获取至少一个原始图像;
42.对所述原始图像进行失真处理,得到所述原始图像对应的所述样本图像;
43.根据所述原始图像和所述样本图像进行质量评价,得到所述样本图像对应的像素误差标签和质量分值;
44.对所述样本图像进行标注得到所述样本图像对应的缺陷类别标签和缺陷程度标签。
45.本说明书一个或多个实施方式中,所述待检测图像为视频流序列中的帧图像,所述方法还包括:
46.根据每一帧待检测图像对应的缺陷检测结果,得到所述视频流序列对应的质量检测结果。
47.第二方面,本说明书一个或多个实施方式提供了一种图像检测装置,包括:
48.图像检测模块,被配置为对待检测图像进行图像检测,得到所述待检测图像上的各个局部区域对应的缺陷图和缺陷分值,所述缺陷图用于表征所述局部区域上的图像缺陷,所述缺陷分值用于表示所述局部区域上的图像缺陷的程度;
49.参数确定模块,被配置为根据各个局部区域对应的缺陷图和缺陷分值,确定所述局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数;
50.结果确定模块,被配置为根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定所述待检测图像对应的缺陷检测结果。
51.本说明书一个或多个实施方式中,所述图像检测模块被配置为:
52.以预设图像尺度对所述待检测图像进行分块处理,得到所述待检测图像包括的各个局部图像块,所述局部图像块包括所述局部区域;
53.对于每个局部图像块,确定所述局部图像块对应的图像特征和亮度值误差;
54.根据所述图像特征和所述亮度值误差进行融合处理,得到所述局部区域对应的所述缺陷图和所述缺陷分值。
55.本说明书一个或多个实施方式中,所述缺陷检测结果包括所述待检测图像在每个
缺陷类别所对应的缺陷严重度;所述结果确定模块被配置为:
56.对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数;
57.根据各个局部区域在该缺陷类别所对应的缺陷程度参数,确定所述待检测图像在该缺陷类别所对应的缺陷严重度。
58.本说明书一个或多个实施方式中,所述缺陷检测结果包括所述待检测图像在各个缺陷类别所对应的热力图;所述结果确定模块被配置为:
59.对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数;
60.对于所述热力图中的每个像素,基于包括该像素的各个局部区域对应的所述缺陷程度参数,确定该像素的热力值;
61.根据每个像素对应的热力值,生成所述待检测图像在所述缺陷类别所对应的热力图。
62.本说明书一个或多个实施方式中,所述结果确定模块被配置为:
63.对于每个缺陷类别,对所述缺陷类别所对应的热力图进行图像检测,确定所述热力图上包括的图像缺陷的位置信息;
64.根据所述位置信息在所述待检测图像上生成各个图像缺陷所对应的缺陷检测框。
65.本说明书一个或多个实施方式中,所述缺陷检测结果包括所述待检测图像对应的整图缺陷图和整图缺陷分值;所述结果确定模块被配置为:
66.基于各个局部区域对应的缺陷图进行融合处理,得到所述待检测图像对应的整图缺陷图;
67.基于各个局部区域对应的缺陷分值,得到所述待检测图像对应的整图缺陷分值。
68.本说明书一个或多个实施方式中,所述图像检测模块被配置为:
69.将所述局部图像块输入预先训练的特征提取子网络,得到所述特征提取子网络输出的所述图像特征;
70.将所述局部图像块输入预先训练的误差检测子网络,得到所述误差检测子网络输出的所述亮度值误差;
71.所述根据所述图像特征和所述亮度值误差进行融合处理,得到所述局部图像块对应的所述缺陷图和所述缺陷分值,包括:
72.将所述图像特征和所述亮度值误差输入预先训练的融合子网络,得到所述融合子网络输出的所述缺陷图和所述缺陷分值。
73.本说明书一个或多个实施方式中,所述图像检测模块被配置为:
74.获取样本数据集;所述样本数据集中的每个样本数据包括:样本图像、所述样本图像对应的像素误差标签以及所述样本图像对应的质量分值;
75.将所述样本图像输入待训练的误差检测子网络,得到所述误差检测子网络输出的亮度值误差;将所述样本图像输入待训练的特征提取子网络,得到所述特征提取子网络输出的图像特征;将所述亮度值误差和所述图像特征输入待训练的融合子网络,得到融合子网络输出的缺陷分值;
76.基于所述亮度值误差与所述像素误差标签之间的第一差异,以及所述缺陷分值与所述质量分值之间的第二差异,对所述特征提取子网络、所述误差检测子网络以及所述融合子网络的参数进行调整,直至满足收敛条件。
77.本说明书一个或多个实施方式中,所述参数确定模块被配置为:
78.对于每个所述局部图像块,将所述局部图像块及其对应的所述缺陷图、所述缺陷分值,输入预先训练的多任务检测网络,得到所述多任务检测网络输出的所述局部图像块在每个缺陷类别对应的缺陷程度参数。
79.本说明书一个或多个实施方式中,所述参数确定模块被配置为:
80.获取样本数据集;所述样本数据集中的每个样本数据包括:样本图像、所述样本图像对应的缺陷类别标签以及在各个缺陷类别所对应的缺陷程度标签;
81.将所述样本图像输入训练后的特征提取子网络和所述误差检测子网络,得到所述特征提取子网络输出的图像特征以及所述误差检测子网络输出的亮度值误差;将所述图像特征和所述亮度值误差输入训练后的融合子网络,得到所述融合子网络输出的缺陷图和缺陷分值;
82.将所述样本图像及其对应的所述缺陷图和所述缺陷分值输入待训练的多任务检测网络,得到所述多任务检测网络输出的缺陷类别和缺陷程度参数,基于所述缺陷类别与所述缺陷类别标签的差异,和/或,所述缺陷程度参数与所述缺陷程度标签的差异,对所述多任务检测网络的参数进行调整,直至满足收敛条件,得到训练后的多任务检测网络。
83.本说明书一个或多个实施方式中,图像检测装置还包括数据集构建模块,所述数据集构建模块被配置为:
84.获取至少一个原始图像;
85.对所述原始图像进行失真处理,得到所述原始图像对应的所述样本图像;
86.根据所述原始图像和所述样本图像进行质量评价,得到所述样本图像对应的像素误差标签和质量分值;
87.对所述样本图像进行标注得到所述样本图像对应的缺陷类别标签和缺陷程度标签。
88.本说明书一个或多个实施方式中,所述结果确定模块被配置为:
89.根据每一帧待检测图像对应的缺陷检测结果,得到所述视频流序列对应的质量检测结果。
90.第三方面,本说明书一个或多个实施方式提供了一种电子设备,包括:
91.处理器;和
92.存储器,存储有计算机指令,所述计算机指令用于使所述处理器执行根据第一方面任意一个或多个实施方式所述的方法。
93.第四方面,本说明书一个或多个实施方式提供了一种存储介质,存储有计算机指令,所述计算机指令用于使计算机执行根据第一方面任意一个或多个实施方式所述的方法。
94.本说明书一个或多个实施方式的图像检测方法,包括对待检测图像进行图像检测得到待检测图像上的各个局部区域对应的缺陷图和缺陷分值,根据各个局部区域对应的缺陷图和缺陷分值确定局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数,根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定待检测图像对应的缺陷检测结果。本说明书实施方式中,基于图像局部区域进行多类别的缺陷检测,有效对图像上存在的各类局部缺陷进行检测,相较于传统单一缺陷类别的检测,降低漏检风险,提高缺陷检
测准确性,并且可针对各类缺陷提供细粒度的缺陷检测结果,用于指导针对图像缺陷的修复。
附图说明
95.图1是本说明书一示例性实施方式中图像检测方法的流程图。
96.图2是本说明书一示例实施方式中图像检测网络的结构示意图。
97.图3是本说明书一示例性实施方式中图像检测方法的流程图。
98.图4是本说明书一示例性实施方式中图像检测方法的流程图。
99.图5是本说明书一示例实施方式中多任务检测网络的结构示意图。
100.图6是本说明书一示例性实施方式中图像检测方法的流程图。
101.图7是本说明书一示例性实施方式中图像检测方法的流程图。
102.图8是本说明书一示例性实施方式中图像检测方法的流程图。
103.图9是本说明书一示例性实施方式中图像检测方法的流程图。
104.图10是本说明书一示例性实施方式中原始图像与样本图像的示意图。
105.图11是本说明书一示例性实施方式中图像检测装置的结构框图。
106.图12是本说明书一示例性实施方式中电子设备的结构框图。
具体实施方式
107.这里将详细地对示例性实施方式进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施方式中所描述的实施方式并不代表与本说明书一个或多个实施方式相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施方式的一些方面相一致的装置和方法的例子。
108.需要说明的是:在其他实施方式中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施方式中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施方式中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施方式中也可能被合并为单个步骤进行描述。
109.另外,需要说明的是,本说明书所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。
110.随着视频拍摄与制作技术的发展,用户对超高清视频的质量要求和观看体验越来越关注,因此针对视频质量的检测尤为重要。例如,视频平台方为保证片源质量,需要对制片方提供的视频介质进行质量检测,确定视频介质是否满足相应上线标准。又例如,对于老片修复场景,需要对修复后的视频介质进行质量检测,确定视频介质是否满足修复标准。
111.目前,针对视频质量的检测主要是通过大量人工对视频逐片段打分来完成,往往耗时巨大,而且依赖于人工经验导致检测精度和效果不佳。为解决人工检测存在效果和效
率欠佳的缺陷,相关技术中部分方案基于计算机视觉(cv,computer vision)实现视频质量评估,但是其往往只是针对视频提供主观质量分,无法针对视频帧图像上的局部缺陷进行定位和检测,输出细粒度的缺陷检测结果。更为重要的是,图像局部缺陷类别繁多,且在图像上分布不规律,相关技术往往只是针对某一类图像缺陷进行检测,导致缺陷检测效果受限。
112.基于相关技术中存在的上述缺陷,本说明书一个或多个实施方式提供了一种图像检测方法、装置、电子设备及存储介质,旨在针对多种缺陷类别进行图像局部缺陷检测,得到细粒度的缺陷检测结果,提高缺陷检测精度及效果。
113.在一些实施方式中,本说明书提供了一种图像检测方法,基于该图像检测方法实现对图像中存在的一种或多种类型的图像缺陷的检测识别。本说明书的图像检测方法可应用于电子设备,所述电子设备可以是任何适于实施的设备类型,例如计算机、服务器、移动终端、可穿戴设备等,本说明书对此不作限制。
114.如图1所示,在一些实施方式中,本说明书示例的图像检测方法,包括:
115.s110、对待检测图像进行图像检测,得到待检测图像上的各个局部区域对应的缺陷图和缺陷分值。
116.s120、根据各个局部区域对应的缺陷图和缺陷分值,确定局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数。
117.s130、根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定待检测图像对应的缺陷检测结果。
118.本说明书实施方式中,待检测图像是指基于本说明书的图像检测方法对其进行缺陷检测的图像,待检测图像可以是单张图像,也可以是视频序列中的帧图像。
119.例如一个示例中,待检测图像为单张图像,从而基于本说明书实施方式的方法,实现对待检测图像中存在的一类或多类局部缺陷的检测识别。例如另一个示例中,待检测图像为视频序列中的帧图像,从而基于本说明书实施方式的方法,对视频序列中各帧图像进行缺陷检测,进而实现对视频序列的质量检测评估。
120.待检测图像的局部区域是指待检测图上包括的局部图像范围,值得说明的是,对于图像缺陷检测场景,图像上存在的缺陷类别较多,而且这些图像缺陷往往无规律分布在图像各个局部区域。例如,常见的图像缺陷类别可包括锯齿、色斑、色块、条带等,锯齿是指图像边缘出现锯齿状,线条不平滑;色斑是指由于连续像素值变为离散值引起的量化失真;色块是指图像内的像素值被变换压缩引起细节丢失等块状失真;条带是指图像上出现条状波纹。
121.可以理解,对于一张图像,其可能同时包括多种类别的缺陷,因此若是仅针对其中某一类缺陷进行检测和评价,很容易遗漏其他图像缺陷,导致检测结果无法准确反映真实图像质量。另外,图像上存在的缺陷也可能分布在任意的图像区域,因此本说明书实施方式中,基于待检测图像的局部区域进行图像检测,从而得到每个局部区域对应的缺陷图和缺陷分值。
122.在一些实施方式中,可以通过对待检测图像进行分块的方式,将待检测图像划分为多个局部图像块,每个局部图像块即包含局部图像信息。例如一个示例中,以预设图像尺度对待检测图像进行分块处理,预设图像尺度小于待检测图像的图像尺度,从而按照预设
图像尺度即可将待检测图像划分为多个图像块,本说明书下文实施方式进行说明。
123.在对待检测图像进行分块之后,每一个局部图像块包含待检测图像上的局部图像信息,然后针对每个局部图像块进行图像检测,即可得到每个局部图像块对应的缺陷图和缺陷分值。
124.缺陷图是指针对待检测图像的局部图像信息生成的特征图像,用于表征局部区域上的图像缺陷,缺陷图为灰度图,其灰度可以反映图像上的缺陷程度。缺陷分值是指针对待检测图像的局部图像信息生成的评价分值,用于表示局部区域上的图像缺陷的程度,缺陷分值越高,说明该图像局部区域对应的缺陷程度越高。
125.在一些实施方式中,可以基于深度神经网络(dnn,deep neural network)的网络模型实现对待检测图像的图像检测,从而得到各个局部区域对应的缺陷图和缺陷分值,本说明书下文对此进行说明。
126.值得说明的是,本说明书实施方式中,对待检测图像进行检测得到的缺陷检测结果,包括待检测图像在每种缺陷类别所对应的缺陷严重度,也即,针对待检测图像的缺陷检测结果,可以提供待检测图像在多种缺陷类别上的缺陷严重度。因此,本说明书实施方式中,针对待检测图像的缺陷检测任务至少包括两个:一是缺陷类别;二是缺陷严重度。
127.缺陷类别可以预先根据场景需求进行设置,常见的缺陷类别例如包括锯齿、色斑、色块、条带等,本说明书实施方式中对于缺陷类别的数量及具体类别不作限制。缺陷严重度则是指针对某个缺陷类别的缺陷程度,例如某个缺陷类别对应的缺陷严重度越大,表示图像在该缺陷类别的缺陷程度越高。
128.根据前述可知,每个局部区域对应的缺陷图表示该局部区域对应的缺陷特征图像,缺陷分值表示该局部区域对应的缺陷严重度,本说明书实施方式中,即可根据每个局部区域的缺陷图和缺陷分值,得到该局部区域在每个缺陷类别所对应的缺陷程度参数。
129.以待检测图像任意一个局部区域为例,基于s110得到该局部区域对应的缺陷图和缺陷分值,然后可以基于该局部区域的缺陷图和缺陷分值,确定该局部区域在每个缺陷类别对应的缺陷程度参数。例如一个示例中,共设置有n个缺陷类别,从而即可根据该局部区域的缺陷图和缺陷分值,得到该局部区域在这n个缺陷类别中的每个缺陷类别所对应的缺陷程度参数。缺陷程度参数即可反映出该局部区域在某个缺陷类别上的缺陷程度,缺陷程度参数越大,表示该局部区域在对应缺陷类别的缺陷程度越严重。
130.在一些实施方式中,可以基于深度神经网络(dnn,deep neural network)的网络模型得到各个局部区域的缺陷程度参数,本说明书下文对此进行说明。
131.基于上述过程,即可得到待检测图像的每个局部区域在每个缺陷类别所对应的缺陷程度参数。然后针对某一个缺陷类别,即可根据该缺陷类别下所有局部区域的缺陷程度参数,得到待检测图像在该缺陷类别所对应的缺陷严重度,缺陷严重度表示整个待检测图像在对应缺陷类别下的缺陷程度。如此对n个缺陷类别分别执行上述过程,即可得到每个缺陷类别下待检测图像对应的缺陷严重度,根据n个缺陷类别对应的缺陷严重度,得到待检测图像的缺陷检测结果。
132.换言之,本说明书实施方式中,针对待检测图像得到的缺陷检测结果中,至少包括待检测图像在每个缺陷类别下的缺陷严重度,例如共设置有n个缺陷类别,从而缺陷检测结果中至少包括待检测图像在这n个缺陷类别下分别对应的缺陷严重度。
133.结合前述可以看到,由于图像缺陷存在“缺陷种类多”、“在图像局部随机分布”的特点,从而本说明书实施方式的图像检测方法,针对图像局部区域进行检测,有效发现图像局部存在的缺陷,而且针对多种缺陷类别进行检测,可以有效针对图像上存在的各类缺陷进行检测识别,并且针对各类缺陷提供细粒度的缺陷检测结果。
134.通过上述可知,本说明书实施方式中,基于图像局部区域进行多类别的缺陷检测,有效对图像上存在的各类局部缺陷进行检测,相较于传统单一缺陷类别的检测,降低漏检风险,提高缺陷检测准确性,并且可针对各类缺陷提供细粒度的缺陷检测结果,用于指导针对图像缺陷的修复。
135.在一些实施方式中,本说明书的图像检测方法可以利用基于深度神经网络的图像检测网络实现,图2示出了本说明书一些实施方式中的图像检测网络结构,下面结合图2进行说明。
136.如图2所示,在一些实施方式中,本公开示例的图像检测网络可以采用基于nriqa(no reference image quality assessment,无参考图像质量评价)架构的神经网络模型。值得说明的是,区别于传统的全参考(fullreference)、半参考(reduced reference)图像质量评价模型,基于nriqa的图像检测网络无需依赖于无损的参考图像,对于实际的视频/图像质量检测场景鲁棒性更好。
137.参见图2所示,本说明书示例中的图像检测网络主要包括两个部分,一是整图检测网络100,二是多任务检测网络200。
138.整图检测网络100用于实现对待检测图像的各个局部区域的图像检测,得到各个局部区域的缺陷图和缺陷分值,另外,整图检测网络100也可以输出针对整个待检测图像的整图缺陷图和整图缺陷分值,本说明书下文对此进行说明。整图检测网络100的输入为待检测图像的各个局部图像块,输出为各个局部图像块对应的缺陷图和缺陷分值。
139.多任务检测网络200用于根据局部区域的缺陷图和缺陷分值,确定待检测图像的缺陷检测结果,缺陷检测结果至少可包括待检测图像在每个缺陷类别对应的缺陷严重度。多任务检测网络200的输入局部图像块及其对应的缺陷图和缺陷分值,其输出为待检测图像的缺陷检测结果。
140.可以理解,整图检测网络100的输入为待检测图像的局部区域,因此在将待检测图像输入整图检测网络100之前,预处理模块300可对待检测图像进行分块处理,从而将待检测图像划分为多个局部图像块,将局部图像块输入整图检测网络100,下面结合图3对此进行说明。
141.如图3所示,在一些实施方式中,本说明书示例的图像检测方法,对待检测图像进行图像检测,得到各个局部区域的缺陷图和缺陷分值的过程,包括:
142.s111、以预设图像尺度对待检测图像进行分块处理,得到待检测图像包括的各个局部图像块。
143.s112、对于每个局部图像块,确定局部图像块对应的图像特征和亮度值误差。
144.s113、根据图像特征和亮度值误差进行融合处理,得到局部区域对应的缺陷图和缺陷分值。
145.本说明书实施方式中,预设图像尺度是指预先设置的用于对待检测图像进行分块处理的滑动窗口的尺寸,因此预设图像尺度小于待检测图像的尺度。在一些实施方式中,预
设图像尺度可以基于整图检测网络100的输入图像尺寸要求设置,例如一个示例中,整图检测网络100的输入图像尺寸为235像素*235像素,则预设图像尺度即可为235像素*235像素。
146.在一些实施方式中,可以采用预设图像尺度的滑动窗口在待检测图像上按照固定步长滑动,从而将待检测图像划分为一个一个的图像块,这些图像块也即本说明书中的局部图像块。例如一个示例中,待检测图像的尺寸为4096像素*2160像素,以235像素*235像素大小、5为步长的滑动窗口在待检测图像上滑动,实现对待检测图像的分块处理,每一块局部图像块即为包含待检测图像上局部区域的图像块。
147.预处理模块300即可按照上述过程对待检测图像进行分块处理,从而得到待检测图像包括的各个局部图像块,然后将局部图像块输入整图检测网络100中。
148.结合图2所示,整图检测网络100包括特征提取子网络101、误差检测子网络102和融合子网络103。特征提取子网络101用于对局部图像块进行特征提取,得到局部图像块对应的图像特征,误差检测子网络102用于预测局部图像块的亮度值误差,融合子网络103则基于图像特征和亮度值误差进行融合处理,用于输出局部图像块对应的缺陷图和缺陷分值。
149.以待检测图像包括的其中一个局部图像块为例,局部图像块输入特征提取子网络101,特征提取子网络101的网络结构主要包括几层串联的卷积层(convolutional layer),从而对输入的局部图像块进行特征提取,得到对应的图像特征,图像特征可包括例如图像纹理特征、语义特征等。图像特征表示为t(i,j),(i,j)表示局部图像块在待检测图像上的位置。
150.同时,局部图像块输入误差检测子网络102,误差检测子网络102用于根据局部图像块的线性亮度值预测得到对应的亮度值误差。亮度是指图像画面的明亮程度,亮度值参数是图像必不可少的参数,误差检测子网络102即可提取局部图像块的亮度值,并以像素为单位输出局部图像块对应的亮度值误差,亮度值误差表示局部图像块的亮度值与无缺陷图像的亮度值的差异。亮度值误差表示为δ(i,j),(i,j)表示局部图像块在待检测图像上的位置。
151.融合子网络103的输入为特征提取子网络101输出的图像特征t(i,j)和误差检测子网络102输出的亮度值误差δ(i,j),融合子网络103对图像特征t(i,j)和亮度值误差δ(i,j)进行融合处理,输出局部图像块对应的缺陷图和缺陷分值。融合子网络103对图像特征t(i,j)和亮度值误差δ(i,j)的融合处理表示为:
[0152][0153]
公式(1)中,k为融合常数。dmos(i,j)表示缺陷分值,缺陷分值越大表示局部图像块对应的缺陷程度越高。融合子网络103通过上述过程对局部图像块的图像特征和亮度值误差进行融合处理,得到局部图像块的缺陷图和缺陷分值。
[0154]
上述以待检测图像的其中一个局部图像块为例进行了说明,对于待检测图像的每个局部图像块依次执行上述方法过程,即可得到每个局部图像块对应的缺陷图和缺陷分值,然后,即可基于每个局部图像块的缺陷图和缺陷分值输入至多任务检测网络200实现图像缺陷检测。
[0155]
值得说明的是,在一些实施方式中,在得到每个局部图像块对应的缺陷图和缺陷
分值之后,还可以构建整图缺陷图和整图缺陷分值。可以理解,每个局部图像块的缺陷图和缺陷分值,是用于反映某个局部区域的缺陷特征图和缺陷程度,为了反映出整图的缺陷情况,整图检测网络100还可以基于每个局部图像块对应的缺陷图和缺陷分值构建整图缺陷图和整图缺陷分值,也即,针对待检测图像得到的缺陷检测结果中可以包括该整图缺陷图和整图缺陷分值,下面结合图4实施方式进行说明。
[0156]
如图4所示,在一些实施方式中,本说明书示例的图像检测方法,还包括:
[0157]
s410、基于各个局部区域对应的缺陷图进行融合处理,得到待检测图像对应的整图缺陷图。
[0158]
s420、基于各个局部区域对应的缺陷分值,得到待检测图像对应的整图缺陷分值。
[0159]
通过图3实施方式过程,可以得到每个局部图像块对应的缺陷图和缺陷分值。可以理解,每个局部图像块的缺陷图表示局部区域的缺陷特征图,从而对所有的局部图像块的缺陷图进行融合,即可得到与待检测图像相同尺度的整图缺陷图,该整图缺陷图即可从整图的尺度反映出待检测图像的缺陷特征,对于图像缺陷修复具有一定的参考价值。
[0160]
同样,每个局部图像块的缺陷分值表示局部区域的缺陷程度,从而对所有的局部图像块的缺陷分值进行融合,例如求取平均值得到的整图缺陷分值,即可从反映出整图的缺陷程度。但是,由于并未对缺陷类别进行检测,因此整图缺陷分值只能从整体上作为对待检测图像的主观质量评价,无法实现细粒度的缺陷分析。
[0161]
整图检测网络100通过上述得到的整图缺陷图和整图缺陷分值可以从一定程度上反映出待检测图像的缺陷情况,具有一定的参考价值,因此在一些实施方式中,可以将该整图缺陷图和整图缺陷分值也作为针对待检测图像的缺陷检测结果。
[0162]
继续参照图2,多任务检测网络200的输入包括局部图像块及其对应的缺陷图和缺陷分值,输出为局部图像块在每个缺陷类别对应的缺陷程度参数。在一些实施方式中,多任务检测网络200的网络结构可如图5所示,下面结合图5进行说明。
[0163]
如图5所示,在本说明书示例实施方式中,多任务检测网络200包括2个卷积层、2个池化层、2个全连接层和1个输出层。第一卷积层conv 1包括8个卷积核,每个卷积核大小为3*3。然后是第一池化层pooling 1,其核大小为2*2。之后连接第二卷积层conv 2,其包括32个卷积核,每个卷积核大小为3*3。第二卷积层conv 2提取的32个特征图经过第二池化层pooling 2被汇聚为32个最大值和32个最小值,也即每个特征图对应一个最大值和最小值,形成下一层的64个输入。两个全连接层fc 1和fc 2分别有128和512个修正线性单元(relu)。最后的输出层包括两个任务的输出,输出层task 1用于输出缺陷类别,输出层task2用于输出缺陷程度参数,两个任务共享所有内部结构,因此可同时进行网络训练。
[0164]
在上述多任务检测网络200基础上,以待检测图像包括的其中一个局部图像块为例,多任务检测网络200的输入包括该局部图像块以及该局部图像块对应的缺陷图和缺陷分值,多任务检测网络200通过包含两个任务的输出层,输出该局部图像块在每个缺陷类别所对应的缺陷程度参数scoren(i,j),n表示缺陷类别。在得到每个局部图像块在各个缺陷类别对应的缺陷程度参数之后,即可得到针对待检测图像的缺陷检测结果,下面结合图6实施方式进行说明。
[0165]
如图6所示,在一些实施方式中,本说明书示例的图像检测方法,确定待检测图像的缺陷检测结果的过程,包括:
[0166]
s131、对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数。
[0167]
s132、根据各个局部区域在该缺陷类别所对应的缺陷程度参数,确定待检测图像在该缺陷类别所对应的缺陷严重度。
[0168]
本说明书实施方式中,以某个缺陷类别n为例,经过多任务检测网络200可以得到每个局部图像块在该缺陷类别n下的缺陷程度参数scoren(i,j),从而结合所有局部图像块的缺陷程度参数scoren(i,j),即可得到待检测图像在该缺陷类别n下的缺陷严重度score(n)。
[0169]
例如一些实施方式中,可以对缺陷类别n下所有局部图像块的缺陷程度参数scoren(i,j)求取平均值,将该平均值作为待检测图像在该缺陷类别n下的缺陷严重度score(n),该缺陷严重度score(n)即表示待检测图像在该缺陷类别n下的缺陷程度。
[0170]
上述以多个缺陷类别中的其中一个缺陷类别为例进行了说明,对于每个缺陷类别重复执行上述过程,即可得到每个缺陷类别下,待检测图像对应的缺陷严重度,进而得到缺陷检测结果。
[0171]
例如一个示例中,缺陷类别包括“色块”、“色斑”、“锯齿”、“条带”共4类,待检测图像的缺陷检测结果中包括:在缺陷类别“色块”的缺陷严重度score(1)、在缺陷类别“色斑”的缺陷严重度score(2)、在缺陷类别“锯齿”的缺陷严重度score(3)以及在缺陷类别“条带”的缺陷严重度score(4)。
[0172]
通过上述可知,本说明书实施方式中,基于图像局部区域进行多类别的缺陷检测,有效对图像上存在的各类局部缺陷进行检测,相较于传统单一缺陷类别的检测,降低漏检风险,提高缺陷检测准确性。并且可以针对各类缺陷提供细粒度的缺陷检测结果,基于缺陷检测结果可以直观且针对性地确定图像缺陷及严重度,从而精准指导图像缺陷修复。
[0173]
在上述实施方式中,缺陷检测结果主要针对待检测图像在各个缺陷类别的缺陷严重度,对待检测图像进行定量的质量评价,无法提供对缺陷类别的可视化及定位,因此在另一些实施方式中,缺陷检测结果还可以包括每个缺陷类别的热力图,热力图上的热力值可以反映缺陷位置及严重程度。
[0174]
结合图2所示,图像检测网络还包括后处理模块400,后处理模块400连接于多任务检测网络之后,从而后处理模块400可以根据各个局部图像块的缺陷程度参数,确定待检测图像对应的热力图,下面结合图7实施方式进行说明。
[0175]
如图7所示,在一些实施方式中,本公开示例的图像检测方法,确定待检测图像对应的缺陷检测结果的过程,包括:
[0176]
s710、对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数。
[0177]
s720、对于热力图中的每个像素,基于包括该像素的各个局部区域对应的缺陷程度参数,确定该像素的热力值。
[0178]
s730、根据每个像素对应的热力值,生成待检测图像在缺陷类别所对应的热力图。
[0179]
本说明书实施方式中,热力图是指以灰度形式表示图像上缺陷位置及缺陷程度的图像,每个缺陷类别对应生成一张热力图,从而基于热力图的灰度情况可以直观看到该缺陷类别下的缺陷位置以及缺陷程度。
[0180]
根据前述实施方式可知,多任务检测网络200输出各个局部图像块在每个缺陷类别所对应的缺陷程度参数scoren(i,j),其表示局部图像块(i,j)在缺陷类别n对应的缺陷程度参数为scoren(i,j)。
[0181]
以多个缺陷类别中的某个缺陷类别n为例,在该缺陷类别n下,可以得到每个局部图像块的缺陷程度参数scoren(i,j)。对于热力图中的任意一个像素的热力值,其表示为:
[0182][0183]
公式(2)中,pk第k个像素的热力值,k表示包含该像素的局部图像块的总数,sm表示第m个局部图像块的缺陷程度参数,也即前文得到的scoren(i,j)。也即,对于热力图中的任意一个像素,可以获取包括该像素的k个局部图像块的缺陷程度参数,然后基于计算这k个局部图像块的缺陷程度参数的平均值,得到该像素的热力值pk。基于上述过程,可以计算得到热力图上的每个像素的热力值,从而得到缺陷类别n所对应的热力图。
[0184]
上述以多个缺陷类别中的其中一个缺陷类别为例进行了说明,对于每个缺陷类别,重复执行上述过程,即可得到每个缺陷类别所对应的热力图,进而得到包括这些热力图的缺陷检测结果。也即,针对待检测图像的缺陷检测结果中,包括每个缺陷类别所对应的热力图,例如一个示例中,缺陷类别包括“色块”、“色斑”、“锯齿”、“条带”共4类,待检测图像的缺陷检测结果中包括:缺陷类别“色块”的热力图p1、缺陷类别“色斑”的热力图p2、缺陷类别“锯齿”的热力图p3以及缺陷类别“条带”的热力图p4。
[0185]
通过每个缺陷类别的热力图,可以直观对缺陷位置进行定位,而且可以通过热力图的热力值反映出缺陷程度,实现缺陷定位及可视化,有效指导图像缺陷的修复。
[0186]
在一些实施方式中,在得到上述热力图的基础上,可以进一步对每个热力图进行图像检测,针对待检测图像上的图像缺陷生成对应的缺陷检测框,下面结合图8进行说明。
[0187]
如图8所示,在一些实施方式中,本公开示例的图像检测方法,还包括:
[0188]
s810、对于每个缺陷类别,对缺陷类别所对应的热力图进行图像检测,确定热力图上包括的图像缺陷的位置信息。
[0189]
s820、根据位置信息在待检测图像上生成各个图像缺陷所对应的缺陷检测框。
[0190]
以某一个缺陷类别为例,在一些实施方式中,可以对该缺陷类别所对应的热力图进行图像检测,从而确定图像上的图像缺陷的位置信息。
[0191]
例如一个示例实施方式中,可以预先设置热力值的阈值,通过该阈值对热力图进行检测,将热力值大于该阈值的像素筛选出来,然后在通过像素合并、筛除等方式,确定图像缺陷在图像上的位置信息。可以理解,通过热力图检测得到的位置信息,即为该缺陷类别对应的各个图像缺陷在图像上的位置信息。
[0192]
通过上述过程对热力图上的图像缺陷检测之后,可以将各个位置信息映射回原本的待检测图像中,并基于各个位置信息生成对应的最小外包矩形框,该矩形框即为针对图像缺陷的缺陷检测框。对于生成缺陷检测框的过程,本领域技术人员参照相关技术即可理解并实现,本公开对此不再赘述。
[0193]
本说明书实施方式中,通过缺陷检测框可以实现对各类缺陷的缺陷位置的精准定位,提高缺陷检测精度和效果。
[0194]
通过上述可知,本说明书实施方式中,可以提供包括多种信息的缺陷检测结果,例如结合上文实施方式,缺陷检测结果可包括:待检测图像在每个缺陷类别对应的缺陷严重度,用于对待检测图像包括的各类缺陷的程度进行量化;整图缺陷图和整图缺陷分值,用于反映待检测图像的整图缺陷及质量评估;待检测图像在每个缺陷类别对应的热力图,用于反映待检测图像上各类缺陷的分布位置即程度;待检测图像上各个缺陷的缺陷检测框,用于反映缺陷局部位置。通过该缺陷检测结果输出细粒度的缺陷检测报告,从而有效指导图像缺陷修复工作。
[0195]
在上述实施方式示例中,以单张待检测图像的图像检测过程进行了说明,在一些实施方式中,本说明书的图像检测方法可以应用于视频检测,得到整个视频流序列对应的质量检测结果。
[0196]
例如一个示例中,对于视频流序列中包括的各帧图像,可以将视频流序列中的每一帧图像均作为待检测图像,从而对每帧待检测图像执行上述的图像检测方法过程;也可以间隔若干帧抽取一帧作为待检测图像,从而仅对抽取的待检测图像执行上述的图像检测方法过程,以降低计算量。
[0197]
在得到每帧待检测图像对应的缺陷检测结果之后,可以综合所有帧待检测图像对应的缺陷检测结果得到视频流序列的质量检测结果。例如一个示例中,可以根据每帧待检测图像的缺陷检测结果包括的缺陷严重度求取平均值,将该平均值作为视频流序列对应的缺陷严重度分值。
[0198]
通过上述可知,本说明书实施方式中,可以实现针对视频流序列的缺陷检测,并且针对图像局部的多类缺陷进行检测,提高缺陷检测精度和视频质量检测效果。
[0199]
参照图2所示的图像检测网络结构,本说明书一些实施方式中提供了针对图像检测网络进行网络训练的方法,对于图像检测网络的网络训练主要包括两个阶段:一是样本数据集构建,用于构建训练样本的数据集;二是网络训练,基于样本数据集对图像检测网络进行网络训练。下面分别进行说明。
[0200]
1)样本数据集构建
[0201]
如图9所示,在一些实施方式中,本说明书示例的图像检测方法,获取样本数据集的过程,包括:
[0202]
s910、获取至少一个原始图像。
[0203]
s920、对原始图像进行失真处理,得到原始图像对应的样本图像。
[0204]
s930、根据原始图像和样本图像进行质量评价,得到样本图像对应的像素误差标签和质量分值。
[0205]
s940、对样本图像进行标注得到样本图像对应的缺陷类别标签和缺陷程度标签。
[0206]
首先,可以从视频流序列中选取高清无失真的帧图像作为原始图像,换言之,原始图像为无缺陷的标准图像。原始图像的数量可以根据具体场景需求进行选取,本说明书对此不作限制。
[0207]
以一张原始图像为例,通过对原始图像进行失真处理,可以在原始图像中引入局部缺陷,得到包含有各类缺陷的样本图像。例如一个示例中,缺陷类型可包括条带、锯齿、色斑和色块4种。
[0208]
对于“条带”缺陷,可以通过平滑梯度的方式合成,例如可对原始图像使用高斯滤
波器对随机噪声进行平滑,以产生丰富的梯度多样性,并通过预设变换因子量化这些梯度,从而在原始图像中引入“条带”缺陷。对于“锯齿”缺陷,可以通过对原始图像进行不带抗锯齿滤波器的下采样来创建,下采样范围可以根据具体需求选取。对于“色块”缺陷,可以通过编码器对原始图像进行变换域量化和去块滤波创建。对于“色斑”缺陷,可以通过预设变换因子对原始图像进行变换来创建。
[0209]
可以理解,上述对原始图像进行失真处理时,可以仅对原始图像引入任意一种缺陷类型,也可以同时引入任意多种缺陷类型,同一种缺陷类型也可以在图像不同位置创建多个,本领域技术人员对此可以理解,本说明书不再赘述。
[0210]
在通过上述失真处理的方式对原始图像进行处理之后,即可得到原始图像对应的样本图像,也即样本图像是在原始图像中叠加缺陷后得到的图像。例如一个示例中,原始图像可如图10中(a)所示,对原始图像进行失真处理之后得到的样本图像可如图10中(b)所示。
[0211]
hdr-vdp(high dynamic range-visual difference predictor,高动态范围-视觉差异性度量)是目前最常用、准确性最高的适用于hdr图像质量评价的算法,但是hdr-vdp算法依赖于双路图像输入,也即需要无损的参考图像和引入失真的失真图像作为输入,从而得到质量评价分数。但是对于实际的视频/图像质量检测场景,无法获取到无损的参考图像,因此无法利用hdr-vdp实现视频/图像质量检测。
[0212]
在本说明书实施方式中,在通过前述得到原始图像及样本图像之后,即可利用hdr-vdp算法,基于原始图像和样本图像得到样本图像的标签(label),从而节省大量的人工标注工作,并且标签精度更高,为图像检测网络的精度打下数据基础。
[0213]
例如一些实施方式中,以一张样本图像为例,可以基于hdr-vdp算法对原始图像和样本图像进行处理,从而得到质量分值q-score,该质量分值q-score即可作为样本图像的质量分数标签值。同时,还可以通过hdr-vdp得到样本图像与原始图像之间的亮度值差异,例如将原始图像的亮度值与样本图像的亮度值作差即可得到亮度值差异,该亮度值差异即可作为样本图像的像素误差标签。对于hdr-vdp算法的具体原理和过程,本领域技术人员参照相关技术即可,在此不再赘述。
[0214]
另外,可以通过人工标注的方式,基于原始图像和样本图像标注得到缺陷类别标签和缺陷程度标签,基于人工标注得到的标签值更加接近于人眼观感,从而训练得到的网络与人眼主观感受一致性更强。
[0215]
通过上述过程即可完成对样本数据的构建,也即,一个样本数据中包括:原始图像、样本图像、像素误差标签、质量分值、缺陷类别标签、缺陷程度标签。从而基于上述过程构建得到多个样本数据,即可得到样本数据集。
[0216]
2)网络训练
[0217]
在完成上述样本数据集的构建之后,即可基于样本数据集对图2所示的图像检测网络进行网络训练,由于图像检测网络包括整图检测网络100和多任务检测网络200,需要依次分别对整图检测网络100和多任务检测网络200进行网络训练。
[0218]
整图检测网络100的训练过程:
[0219]
以样本数据集中的一个样本数据为例,样本数据的样本图像经过预处理模块300之后分块得到多个局部图像块,局部图像块输入待训练的误差检测子网络102中,误差检测
子网络102输出每个局部图像块对应的亮度值误差(i,j)表示局部图像块在样本图像上的位置。同时,样本数据中包括样本图像对应的像素误差标签δ,该像素误差标签δ为真值(ground truth),基于样本图像的像素误差标签δ即可得到局部图像块(i,j)对应的像素误差标签δ(i,j),从而损失函数定义为:
[0220][0221]
公式(3)的损失函数表示,局部图像块(i,j)的像素值误差与像素误差标签δ(i,j)的第一差异。
[0222]
同时,将样本图像的局部图像块特征提取子网络101,得到特征提取子网络101输出的图像特征t(i,j),然后将图像特征t(i,j)和亮度值误差输入融合子网络103,得到融合子网络输出的缺陷分值dmos(i,j)。同时,样本数据中包括样本图像对应的质量分值q-score,该质量分值q-score为真值(ground truth),从而损失函数定义为:
[0223]
loss
overall_distortion
=dmos―q_score
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0224]
公式(3)的损失函数表示,缺陷分值dmos与质量分值q-score之间的第二差异,结合公式(3)和公式(4)得到的最终的损失函数定义为:
[0225]
loss1=w1loss
pixel
+w1loss
overall_distortion
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0226]
公式(5)中,w1和w2为网络参数。基于上述损失函数反向传播对特征提取子网络101、误差检测子网络102以及融合子网络103的网络参数进行调整。
[0227]
上述仅以其中一个样本数据的训练过程进行说明,对于样本数据集中的每个样本数据,重复执行上述过程即可完成对特征提取子网络101、误差检测子网络102以及融合子网络103的不断迭代优化,直至满足收敛条件,完成对特征提取子网络101、误差检测子网络102以及融合子网络103的网络训练,得到训练后的特征提取子网络101、误差检测子网络102以及融合子网络103。在完成上述对特征提取子网络101、误差检测子网络102以及融合子网络103的训练之后,即完成对整图检测网络100的网络训练。
[0228]
多任务检测网络200的训练过程:
[0229]
在完成对整图检测网络100的网络训练之后,可固定整图检测网络100的网络参数,利用样本数据集对多任务检测网络200进行网络训练。
[0230]
仍以一个样本数据为例,将样本数据的样本图像输入训练后的整图检测网络100,得到整图检测网络100输出的图像特征和亮度值误差,然后将样本图像及其图像特征和亮度值误差输入未训练的多任务检测网络200,即可得到多任务检测网络200输出的缺陷类别及缺陷程度参数。同时,样本数据中预先标注有缺陷类别标签和缺陷程度标签,从而基于多任务检测网络200的输出与标签之间的差异,对多任务检测网络200进行训练,损失函数定义为:
[0231]
loss2=w3loss
score
+w4loss
cls
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0232]
公式(5)中,w3和w4为网络参数,loss
score
表示缺陷程度参数与缺陷程度标签之间的差异,loss
cls
表示缺陷类别与缺陷类别标签之间的差异,基于上述损失函数反向传播对多任务检测网络200的网络参数进行调整。
[0233]
上述仅以其中一个样本数据的训练过程进行说明,对于样本数据集中的每个样本数据,重复执行上述过程即可完成对多任务检测网络200的不断迭代优化,直至满足收敛条
件,完成对多任务检测网络200的网络训练,进而完成对图像检测网络的网络训练。
[0234]
基于上述网络训练过程可以看到,本说明书的图像检测网络具有很强的可扩展性,通过对样本数据集中缺陷类别的构建,可以灵活支持增量缺陷类别的数据。例如原部署的图像检测网络仅支持4种缺陷类别的检测,仅需引入新缺陷类别的样本数据集,对部署的图像检测网络进行训练,即可增加图像检测网络对新缺陷类别的检测和识别,实现对局部缺陷类别的增量部署,对图像检测网络的精度进行优化,可扩展性强,具备产品化落地能力。
[0235]
另外,值得说明的是,本说明书实施方式中,利用hdr-vdp与基于nriqa架构的图像检测网络结合,在数据集构建过程中,通过hdr-vdp算法构建高精度的样本数据集,为图像检测网络的精度打下数据基础。而在图像检测阶段,基于nriqa架构的图像检测网络无需依赖于参考图像,实现无参考图像的视频/图像质量检测,鲁棒性更强。
[0236]
在一些实施方式中,本说明书提供了一种图像检测装置,如图11所示,图像检测装置可包括:
[0237]
图像检测模块10,被配置为对待检测图像进行图像检测,得到待检测图像上的各个局部区域对应的缺陷图和缺陷分值,缺陷图用于表征局部区域上的图像缺陷,缺陷分值用于表示局部区域上的图像缺陷的程度;
[0238]
参数确定模块20,被配置为根据各个局部区域对应的缺陷图和缺陷分值,确定局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数;
[0239]
结果确定模块30,被配置为根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定待检测图像对应的缺陷检测结果。
[0240]
本说明书一个或多个实施方式中,图像检测模块10被配置为:
[0241]
以预设图像尺度对待检测图像进行分块处理,得到待检测图像包括的各个局部图像块,局部图像块包括局部区域;
[0242]
对于每个局部图像块,确定局部图像块对应的图像特征和亮度值误差;
[0243]
根据图像特征和亮度值误差进行融合处理,得到局部区域对应的缺陷图和缺陷分值。
[0244]
本说明书一个或多个实施方式中,缺陷检测结果包括待检测图像在每个缺陷类别所对应的缺陷严重度;结果确定模块30被配置为:
[0245]
对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数;
[0246]
根据各个局部区域在该缺陷类别所对应的缺陷程度参数,确定待检测图像在该缺陷类别所对应的缺陷严重度。
[0247]
本说明书一个或多个实施方式中,缺陷检测结果包括待检测图像在各个缺陷类别所对应的热力图;结果确定模块30被配置为:
[0248]
对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数;
[0249]
对于热力图中的每个像素,基于包括该像素的各个局部区域对应的缺陷程度参数,确定该像素的热力值;
[0250]
根据每个像素对应的热力值,生成待检测图像在缺陷类别所对应的热力图。
[0251]
本说明书一个或多个实施方式中,结果确定模块30被配置为:
[0252]
对于每个缺陷类别,对缺陷类别所对应的热力图进行图像检测,确定热力图上包
括的图像缺陷的位置信息;
[0253]
根据位置信息在待检测图像上生成各个图像缺陷所对应的缺陷检测框。
[0254]
本说明书一个或多个实施方式中,缺陷检测结果包括待检测图像对应的整图缺陷图和整图缺陷分值;结果确定模块30被配置为:
[0255]
基于各个局部区域对应的缺陷图进行融合处理,得到待检测图像对应的整图缺陷图;
[0256]
基于各个局部区域对应的缺陷分值,得到待检测图像对应的整图缺陷分值。
[0257]
本说明书一个或多个实施方式中,图像检测模块10被配置为:
[0258]
将局部图像块输入预先训练的特征提取子网络,得到特征提取子网络输出的图像特征;
[0259]
将局部图像块输入预先训练的误差检测子网络,得到误差检测子网络输出的亮度值误差;
[0260]
根据图像特征和亮度值误差进行融合处理,得到局部图像块对应的缺陷图和缺陷分值,包括:
[0261]
将图像特征和亮度值误差输入预先训练的融合子网络,得到融合子网络输出的缺陷图和缺陷分值。
[0262]
本说明书一个或多个实施方式中,图像检测模块10被配置为:
[0263]
获取样本数据集;样本数据集中的每个样本数据包括:样本图像、样本图像对应的像素误差标签以及样本图像对应的质量分值;
[0264]
将样本图像输入待训练的误差检测子网络,得到误差检测子网络输出的亮度值误差;将样本图像输入待训练的特征提取子网络,得到特征提取子网络输出的图像特征;将亮度值误差和图像特征输入待训练的融合子网络,得到融合子网络输出的缺陷分值;
[0265]
基于亮度值误差与像素误差标签之间的第一差异,以及缺陷分值与质量分值之间的第二差异,对特征提取子网络、误差检测子网络以及融合子网络的参数进行调整,直至满足收敛条件。
[0266]
本说明书一个或多个实施方式中,参数确定模块20被配置为:
[0267]
对于每个局部图像块,将局部图像块及其对应的缺陷图、缺陷分值,输入预先训练的多任务检测网络,得到多任务检测网络输出的局部图像块在每个缺陷类别对应的缺陷程度参数。
[0268]
本说明书一个或多个实施方式中,参数确定模块20被配置为:
[0269]
获取样本数据集;样本数据集中的每个样本数据包括:样本图像、样本图像对应的缺陷类别标签以及在各个缺陷类别所对应的缺陷程度标签;
[0270]
将样本图像输入训练后的特征提取子网络和误差检测子网络,得到特征提取子网络输出的图像特征以及误差检测子网络输出的亮度值误差;将图像特征和亮度值误差输入训练后的融合子网络,得到融合子网络输出的缺陷图和缺陷分值;
[0271]
将样本图像及其对应的缺陷图和缺陷分值输入待训练的多任务检测网络,得到多任务检测网络输出的缺陷类别和缺陷程度参数,基于缺陷类别与缺陷类别标签的差异,和/或,缺陷程度参数与缺陷程度标签的差异,对多任务检测网络的参数进行调整,直至满足收敛条件,得到训练后的多任务检测网络。
[0272]
本说明书一个或多个实施方式中,图像检测装置还包括数据集构建模块,数据集构建模块被配置为:
[0273]
获取至少一个原始图像;
[0274]
对原始图像进行失真处理,得到原始图像对应的样本图像;
[0275]
根据原始图像和样本图像进行质量评价,得到样本图像对应的像素误差标签和质量分值;
[0276]
对样本图像进行标注得到样本图像对应的缺陷类别标签和缺陷程度标签。
[0277]
本说明书一个或多个实施方式中,结果确定模块30被配置为:
[0278]
根据每一帧待检测图像对应的缺陷检测结果,得到视频流序列对应的质量检测结果。
[0279]
在一些实施方式中,本说明书提供了一种电子设备,包括:
[0280]
处理器;和
[0281]
存储器,存储有计算机指令,计算机指令用于使处理器执行上述任意一个或多个实施方式的方法。
[0282]
在一些实施方式中,本说明书提供了一种存储介质,存储有计算机指令,计算机指令用于使计算机执行上述任意一个或多个实施方式的方法。
[0283]
图12是一示例性实施方式提供的一种电子设备的示意结构图。请参考图12,在硬件层面,该设备包括处理器702、内部总线704、网络接口706、内存708以及非易失性存储器710,当然还可能包括其他场景所需要的硬件。本说明书一个或多个实施方式可以基于软件方式来实现,比如由处理器702从非易失性存储器710中读取对应的计算机程序到内存708中然后运行。当然,除了软件实现方式之外,本说明书一个或多个实施方式并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
[0284]
上述实施方式阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
[0285]
在一个典型的配置中,计算机包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
[0286]
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。内存是计算机可读介质的示例。
[0287]
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带、磁盘存储、量子存储器、基于石墨烯的
存储介质或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0288]
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0289]
上述对本说明书特定实施方式进行了描述。其它实施方式在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施方式中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
[0290]
在本说明书一个或多个实施方式使用的术语是仅仅出于描述特定实施方式的目的,而非旨在限制本说明书一个或多个实施方式。在本说明书一个或多个实施方式和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0291]
应当理解,尽管在本说明书一个或多个实施方式可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施方式范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
[0292]
以上所述仅为本说明书一个或多个实施方式的较佳实施方式而已,并不用以限制本说明书一个或多个实施方式,凡在本说明书一个或多个实施方式的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书一个或多个实施方式保护的范围之内。
技术特征:
1.一种图像检测方法,其特征在于,包括:对待检测图像进行图像检测,得到所述待检测图像上的各个局部区域对应的缺陷图和缺陷分值,所述缺陷图用于表征所述局部区域上的图像缺陷,所述缺陷分值用于表示所述局部区域上的图像缺陷的程度;根据各个局部区域对应的缺陷图和缺陷分值,确定所述局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数;根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定所述待检测图像对应的缺陷检测结果。2.根据权利要求1所述的方法,其特征在于,所述对待检测图像进行图像检测,得到所述待检测图像上的各个局部区域对应的缺陷图和缺陷分值,包括:以预设图像尺度对所述待检测图像进行分块处理,得到所述待检测图像包括的各个局部图像块,所述局部图像块包括所述局部区域;对于每个局部图像块,确定所述局部图像块对应的图像特征和亮度值误差;根据所述图像特征和所述亮度值误差进行融合处理,得到所述局部区域对应的所述缺陷图和所述缺陷分值。3.根据权利要求1所述的方法,其特征在于,所述缺陷检测结果包括所述待检测图像在每个缺陷类别所对应的缺陷严重度;所述根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定所述待检测图像对应的缺陷检测结果,包括:对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数;根据各个局部区域在该缺陷类别所对应的缺陷程度参数,确定所述待检测图像在该缺陷类别所对应的缺陷严重度。4.根据权利要求1所述的方法,其特征在于,所述缺陷检测结果包括所述待检测图像在各个缺陷类别所对应的热力图;所述根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定所述待检测图像对应的缺陷检测结果,包括:对于每个缺陷类别,获取各个局部区域在该缺陷类别所对应的缺陷程度参数;对于所述热力图中的每个像素,基于包括该像素的各个局部区域对应的所述缺陷程度参数,确定该像素的热力值;根据每个像素对应的热力值,生成所述待检测图像在所述缺陷类别所对应的热力图。5.根据权利要求4所述的方法,其特征在于,还包括:对于每个缺陷类别,对所述缺陷类别所对应的热力图进行图像检测,确定所述热力图上包括的图像缺陷的位置信息;根据所述位置信息在所述待检测图像上生成各个图像缺陷所对应的缺陷检测框。6.根据权利要求1所述的方法,其特征在于,所述缺陷检测结果包括所述待检测图像对应的整图缺陷图和整图缺陷分值;所述方法还包括:基于各个局部区域对应的缺陷图进行融合处理,得到所述待检测图像对应的整图缺陷图;基于各个局部区域对应的缺陷分值,得到所述待检测图像对应的整图缺陷分值。7.根据权利要求2所述的方法,其特征在于,所述对于每个所述局部图像块,确定所述局部图像块对应的图像特征和像素误差,包括:
将所述局部图像块输入预先训练的特征提取子网络,得到所述特征提取子网络输出的所述图像特征;将所述局部图像块输入预先训练的误差检测子网络,得到所述误差检测子网络输出的所述亮度值误差;所述根据所述图像特征和所述亮度值误差进行融合处理,得到所述局部图像块对应的所述缺陷图和所述缺陷分值,包括:将所述图像特征和所述亮度值误差输入预先训练的融合子网络,得到所述融合子网络输出的所述缺陷图和所述缺陷分值。8.根据权利要求7所述的方法,其特征在于,所述根据各个局部区域对应的缺陷图和缺陷分值,确定所述局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数,包括:对于每个所述局部图像块,将所述局部图像块及其对应的所述缺陷图、所述缺陷分值,输入预先训练的多任务检测网络,得到所述多任务检测网络输出的所述局部图像块在每个缺陷类别对应的缺陷程度参数。9.根据权利要求8所述的方法,其特征在于,还包括利用样本数据集对所述特征提取子网络、所述误差检测子网络、所述融合子网络以及所述多任务检测网络进行网络训练;所述样本数据集中的每个样本数据包括:样本图像、所述样本图像对应的像素误差标签以及质量分值、所述样本图像对应的缺陷类别标签以及在各个缺陷类别所对应的缺陷程度标签;所述样本数据集通过以下过程得到:获取至少一个原始图像;对所述原始图像进行失真处理,得到所述原始图像对应的所述样本图像;根据所述原始图像和所述样本图像进行质量评价,得到所述样本图像对应的像素误差标签和质量分值;对所述样本图像进行标注得到所述样本图像对应的缺陷类别标签和缺陷程度标签。10.根据权利要求1所述的方法,其特征在于,所述待检测图像为视频流序列中的帧图像,所述方法还包括:根据每一帧待检测图像对应的缺陷检测结果,得到所述视频流序列对应的质量检测结果。11.一种图像检测装置,其特征在于,包括:图像检测模块,被配置为对待检测图像进行图像检测,得到所述待检测图像上的各个局部区域对应的缺陷图和缺陷分值,所述缺陷图用于表征所述局部区域上的图像缺陷,所述缺陷分值用于表示所述局部区域上的图像缺陷的程度;参数确定模块,被配置为根据各个局部区域对应的缺陷图和缺陷分值,确定所述局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数;结果确定模块,被配置为根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定所述待检测图像对应的缺陷检测结果。12.一种电子设备,其特征在于,包括:处理器;和存储器,存储有计算机指令,所述计算机指令用于使所述处理器执行根据权利要求1至
10任一项所述的方法。13.一种存储介质,其特征在于,存储有计算机指令,所述计算机指令用于使计算机执行根据权利要求1至10任一项所述的方法。
技术总结
本说明书一个或多个实施方式涉及计算机视觉领域,具体提供了一种图像检测方法及装置,图像检测方法包括对待检测图像进行图像检测得到待检测图像上的各个局部区域对应的缺陷图和缺陷分值,根据各个局部区域对应的缺陷图和缺陷分值确定局部区域在多个缺陷类别中的每个缺陷类别所对应的缺陷程度参数,根据各个局部区域在每个缺陷类别所对应的缺陷程度参数,确定待检测图像对应的缺陷检测结果。本说明书实施方式中,基于图像局部区域进行多类别的缺陷检测,有效对图像上存在的各类局部缺陷进行检测,降低漏检风险,提高缺陷检测准确性,并且可针对各类缺陷提供细粒度的缺陷检测结果,用于指导针对图像缺陷的修复。用于指导针对图像缺陷的修复。用于指导针对图像缺陷的修复。
技术研发人员:谭深 李亚旻 李嘉伟 李静 江文斐
受保护的技术使用者:北京优酷科技有限公司
技术研发日:2023.05.06
技术公布日:2023/8/24
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
