CN115761270A - 色卡的检测方法、装置、电子设备及存储介质 - Google Patents
色卡的检测方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115761270A CN115761270A CN202211477818.3A CN202211477818A CN115761270A CN 115761270 A CN115761270 A CN 115761270A CN 202211477818 A CN202211477818 A CN 202211477818A CN 115761270 A CN115761270 A CN 115761270A
- Authority
- CN
- China
- Prior art keywords
- color
- position information
- color block
- target image
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
本申请提供色卡的检测方法、装置、电子设备及存储介质。本申请的技术方案中,电子设备获取包括待测试色卡的目标图像,该待测试色卡中包括至少一个颜色块;基于K‑means聚类算法对目标图像进行区域分割,确定每个颜色块在目标图像中的位置,得到至少一个位置信息;然后根据至少一个位置信息,在目标图像中标记至少一个颜色块。本申请提供的色卡的检测方法能够提高色卡检测的准确度,以及检测效率。
Description
技术领域
本申请涉及图像技术领域,尤其涉及色卡的检测方法、装置、电子设备及存储介质。
背景技术
色卡是自然界存在的颜色在某种材质上的体现,用于色彩选择、比对、沟通,是色彩实现在一定范围内统一标准的工具。以ColorChecker色卡为例,ColorChecker色卡是由许多不同颜色块组成的卡片,主要用于检查相机、镜头及光学系统的色彩还原情况,数码相机的图像色彩校正,对比测试目标白平衡,在色彩还原系统中再现真实色彩。同时,ColorChecker色卡也是数码图像评测软件中色彩还原、饱和度、白平衡等图像参数测量的重要模块。
ColorChecker色卡在数码图像评测软件中使用时,需要首先对其颜色块进行检测提取,常用的检测方法中需要工作人员手动选择图片中ColorChecker色卡的四个角,然后在此基础上,进行颜色块提取。
然而,在上述的技术方案中,当工作人员面对大量的测试ColorChecker色卡图像时,靠肉眼人为的手动确定色卡的位置区域难免出现误差,影响检测精度。
发明内容
基于此,有必要针对上述技术问题,提供一种色卡的检测方法、装置、电子设备及存储介质。
本申请实施例提供了一种色卡的检测方法,所述方法包括:获取包括待测试色卡的目标图像,所述待测试色卡中包括至少一个颜色块;基于K-means聚类算法对所述目标图像进行区域分割,确定每个颜色块在所述目标图像中的位置,得到至少一个位置信息;根据所述至少一个位置信息,在所述目标图像中标记所述至少一个颜色块。
该实施例中,通过使用K-means聚类算法对目标图像进行区域分割,最终在目标图像中标记至少一个颜色块,这种自动化检测标记颜色块的方法可以提高色卡检测的准确度,以及检测效率。
在一个实施例中,所述至少一个位置信息包括初始的颜色块的位置信息和缺失的颜色块的位置信息。
在一个实施例中,所述基于K-means聚类算法对所述目标图像进行区域分割,确定每个颜色块在所述目标图像中的位置,得到至少一个位置信息,包括:基于K-means聚类算法对所述目标图像进行区域分割,得到分割处理后的图像,所述K-means聚类算法中的n个聚类中心是根据将多个目标概率从大到小顺序排列后位于前n位对应的像素点确定的,所述多个目标概率包括所述目标图像中的各个像素点被选为聚类中心的概率,n为正整数,所述分割处理后的图像为二值图像;对所述分割处理后的图像进行图像连通域分析,确定所述初始的颜色块的位置信息;基于所述初始的颜色块的位置信息,确定所述缺失的颜色块的位置信息。
在一个实施例中,所述基于所述初始的颜色块的位置信息,确定所述缺失的颜色块的位置信息,包括:根据所述初始的颜色块的位置信息,对所述初始的颜色块进行直线拟合,建立区域坐标模型,所述区域坐标模型用于对所述每个颜色块在所述目标图像中的位置进行定位;根据所述区域坐标模型,确定所述缺失的颜色块的位置信息。
在一个实施例中,所述根据所述初始的颜色块的位置信息,对所述初始的颜色块进行直线拟合,建立区域坐标模型,包括:基于边缘提取算法和最小二乘法,对所述初始的颜色块进行直线特征提取,得到拟合的直线;基于所述拟合的直线,建立所述区域坐标模型。
在一个实施例中,所述在对所述分割处理后的图像进行图像连通域分析,确定所述初始的颜色块的位置信息之前,所述方法还包括:对所述分割处理后的图像进行去噪处理,得到去噪后的图像。
在一个实施例中,所述根据所述至少一个位置信息,在所述目标图像中标记所述至少一个颜色块,包括:根据所述至少一个位置信息和预设标记区域,在所述目标图像中标记所述至少一个颜色块,所述预设标记区域为颜色块的感兴趣区域ROI。
本申请实施例提供了一种色卡的检测装置,所述装置包括:获取模块,用于获取包括待测试色卡的目标图像,所述待测试色卡中包括至少一个颜色块;确定模块,用于基于K-means聚类算法对所述目标图像进行区域分割,确定每个颜色块在所述目标图像中的位置,得到至少一个位置信息;标记模块,用于根据所述至少一个位置信息,在所述目标图像中标记所述至少一个颜色块。
本申请实施例提供了一种电子设备,包括处理器和存储器,所述存储器用于存储代码指令;所述处理器用于运行所述代码指令,以实现本申请任意实施例所提供的方法。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序(也可以称为代码,或指令)当其在计算机上运行时,使得计算机执行本申请任意实施例所提供的方法。
本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序(也可以称为代码,或指令),当计算机程序被运行时,使得计算机执行本申请任意实施例所提供的方法。
本申请实施例所提供的色卡的检测方法、装置、电子设备及存储介质,通过使用K-means聚类算法对目标图像进行区域分割,最终在目标图像中标记至少一个颜色块的检测方法,能够提高色卡检测的准确度,以及检测效率。
附图说明
图1为本申请一个实施例提供的色卡的检测方法示意性流程图;
图2为本申请一个实施例提供的待测试色卡的示例性示意图;
图3为本申请另一个实施例提供的色卡的检测方法示意性流程图;
图4为本申请一个实施例提供的分割处理后的图像示意图;
图5为本申请一个实施例提供的初始的颜色块的位置示意图;
图6为本申请一个实施例提供的边缘检测算法效果示意图;
图7为本申请一个实施例提供的最小二乘法拟合的直线示意图;
图8为本申请一个实施例提供的区域坐标模型示意图;
图9为本申请一个实施例提供的至少一个颜色块的示意图;
图10为本申请又一个实施例提供的色卡的检测方法示意性流程图;
图11为本申请一个实施例提供的标记后的至少一个颜色块的示意图;
图12为本申请一个实施例提供的去噪处理后的目标图像示意图;
图13为本申请又一个实施例提供的色卡的检测方法示意性流程图;
图14为本申请一个实施例提供的色卡的检测装置的结构框图;
图15为本申请另一个实施例提供的装置的结构性示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一指令和第二指令是为了区分不同的用户指令,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
此外,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a、b和c中的至少一项(个),可以表示:a,或b,或c,或a和b,或a和c,或b和c,或a、b和c,其中a,b,c可以是单个,也可以是多个。
在图像技术领域,色卡是传递颜色信息的一种参照物,是自然界存在的颜色在某种材质上的体现。以ColorChecker色卡为例,ColorChecker色卡是由许多不同颜色块组成的卡片,主要用于检查相机、镜头及光学系统的色彩还原情况,数码相机的图像色彩校正,对比测试目标白平衡,在色彩还原系统中再现真实色彩。同时,ColorChecker色卡也是数码图像评测软件中色彩还原、饱和度、白平衡等图像参数测量的重要图卡,例如,Imatest是美国Imatest LCC公司开发的一款被广泛应用的数码图像评测软件,其整个系统基于Matlab建立,包含了多个功能模块,其中ColorCheck是色彩还原、饱和度、白平衡等图像参数测量的重要模块,ColorChecker色卡是被广泛应用于色彩简易评估的图卡,且Imatest的ColorCheck模块只支该类型图卡。
通常情况下,在使用ColorChecker色卡还原色彩图像时,只需正常的构图和采光,然后把ColorChecker色卡放在拍照现场,它不需要填满取景器,只要保证相机可以拍到所有的颜色块,且它位于构图中有代表性的部分而不是处于阴影中或是在曝光过度的高光位置,同时还要确保其他物体反射的颜色没有投到色卡上,然后进行拍照。将拍照得到的色卡图片导入相应的电子设备中的数码图像评测软件中,然后进行颜色块提取,进而根据ColorChecker色卡的颜色对照片进行颜色校正。
然而,拍摄得到的ColorChecker色卡的图片中ColorChecker色卡的大小和旋转是随机的,为保证色彩校正的准确性,在对ColorChecker色卡进行颜色块提取时,常常需要手动标记ColorChecker色卡的位置区域,例如在一种色块的检测方法中,工作人员需要手动选择图片中ColorChecker色卡的四个角,然后在此基础上,射影几何方法估计色块的坐标,通过伽马校正和直方图拉伸将彩色图像转换为具有额外对比度增强的灰度图像,使用Sobel滤波器进行边缘检测,通过使用Otsu方法进行阈值处理,并通过网格投影方法确定缺失色块的信息,进而最终进行颜色块提取。
在上述技术方案中,当工作人员面对大量的测试ColorChecker色卡图像时,靠肉眼手动确定色卡的位置区域难免出现误差,影响检测精度,且效率较低。
有鉴于此,本申请提供了一种色卡的检测方法,电子设备可以获取包括待测试色卡的目标图像,该待测试色卡中包括至少一个颜色块;基于K-means聚类算法对目标图像进行区域分割,确定每个颜色块在目标图像中的位置,得到至少一个位置信息;然后根据至少一个位置信息,在目标图像中标记至少一个颜色块。该色卡的检测方法能够提高色卡检测的准确度,以及检测效率。
在一个实施例中,如图1所示,提供了一种色卡的检测方法,该方法可以应用于上述使用ColorChecker色卡还原色彩图像的应用场景,除此之外还可以应用于其他场景,本申请实施例对此不做限定。为方便说明,下文中以该方法应用在上述使用ColorChecker色卡还原色彩图像的场景中为例,相应地,该色卡的检测方法可以由电子设备执行。本实施例中,该色卡的检测方法包括下列步骤:
S101,获取包括待测试色卡的目标图像,该待测试色卡中包括至少一个颜色块。
其中,待测试色卡是自然界存在的颜色在某种材质上的体现,是实现色彩在一定范围内统一标准的工具。比如,具体可以是潘通色卡、瑞典RAL色卡、ColorChecker24色测试卡等,本申请实施例以待测试色卡为ColorChecker24色测试卡为例进行说明。
示例性地,ColorChecker24色测试卡包括24个不同颜色的纯色的颜色块,从左到右再从上到下,分别标记为1-24,其示意图如图2所示,该ColorChecker24色测试卡包括颜色1至颜色24的24个颜色块。同时,该ColorChecker24色测试卡主要用于检查相机、镜头及光学系统的色彩还原情况,数码相机的图像色彩校正,对比测试目标白平衡,在色彩还原系统中再现真实色彩,以及检查摄像机静态与动态彩色的重现质量,检查摄像机及其光学系统的色彩还原情况和放映系统的色彩还原等。
在一种可能的实施方式中,电子设备获取包括待测试色卡的目标图像,也就是说,该目标图像中包含了待测试色卡,也可能包含了需要色彩校正的图像,本申请对此不做限制。
S102,基于K-means聚类算法对目标图像进行区域分割,确定每个颜色块在目标图像中的位置,得到至少一个位置信息。
应理解,K-means聚类算法也称k均值聚类算法,是集简单和经典于一身的基于距离的聚类算法,它采用距离作为评价指标,即认为两个对象的距离越近,其相似度就越大。具体地,K-means聚类算法是一种迭代求解的聚类分析算法,其步骤是随机选取K个对象作为初始的聚类中心,然后计算每个对象与各个种子聚类中心之间的距离,把每个对象分配给距离它最近的聚类中心。聚类中心以及分配给它们的对象就代表一个聚类,每分配一个样本,聚类的聚类中心会根据聚类中现有的对象被重新计算,这个过程将不断重复直到满足某个终止条件,该终止条件可以是没有(或最小数目)对象被重新分配给不同的聚类,或没有(或最小数目)聚类中心再发生变化,或误差平方和局部最小等。
理解性地,图像的区域分割是一种图像处理技术。图像区域分割的目的是从图像中划分出某个物体的区域,即找出那些对应于物体或物体表面的像元集合,它们表现为二维的团块状,这是区域基本形状特点之一。相应地,电子设备基于K-means聚类算法对上述包含待测试色卡的目标图像进行区域分割,进而确定待测试色卡中每个颜色块在目标图像中的位置区域,得到至少一个位置信息。
S103,根据至少一个位置信息,在目标图像中标记至少一个颜色块。
应理解,电子设备根据上个步骤得到的至少一个位置信息,在该至少一个位置信息对应的位置区域中进行标记,该标记方法可以是在对应的位置区域进行绘制图框、编号等操作,也即标记出至少一个颜色块。
需要说明的是,本申请对具体的标记方法不做限制。
在上述技术方案中,利用K-means聚类算法对目标图像进行区域分割,得到颜色块对应的位置信息,再进行标记,与常规的检测方案中手动确定色卡的位置区域相比,可以提高色卡检测的准确性和检测效率,用户体验更好。
基于上述实施例,图3为本申请另一个实施例提供的色卡的检测方法的示意性流程图,在图3所示的实施例中,以至少一个位置信息包括初始的颜色块的位置信息和缺失的颜色块的位置信息为例,下面详细说明图3所示的方法中的各个步骤,该流程图包括:
S301,获取包括待测试色卡的目标图像,该待测试色卡中包括至少一个颜色块。
该步骤和图1所示的实施例中的步骤S101相似,在此不再赘述。
S302,基于K-means聚类算法对目标图像进行区域分割,得到分割处理后的图像,该K-means聚类算法中的n个聚类中心是根据将多个目标概率从大到小顺序排列后位于前n位对应的像素点确定的,多个目标概率包括目标图像中的各个像素点被选为聚类中心的概率,n为正整数,该分割处理后的图像为二值图像。
应理解,该步骤中基于K-means聚类算法对目标图像进行区域分割时,采用的K-means聚类算法是一种改进的K-means聚类算法,具体算法如下:
1)从包括待测试色卡的目标图像的像素点集合中选取一个像素点样本作为初始的聚类中心c1。
2)计算像素点集合中每个像素点样本与已选取聚类中心c1的距离,用D(x)表示。
3)计算每个像素点样本被选为下一个聚类中心的概率,其中,与当前已有聚类中心距离较远的像素点样本有更大概率被选为下一个聚类中心。具体概率计算公式如下:
其中,p(x)表示像素点样本被选为下一个聚类中心的概率,x表示像素点样本点,D(x)表示像素点样本点到聚类中心的距离。
4)重复步骤2)和步骤3),直到选择出n个聚类中心,该n个聚类中心根据像素点样本被选为下一个聚类中心的概率得到,具体地,将步骤3)中得到的概率按照从大到小顺序排列后位于前n位对应的像素点即为该n个聚类中心。
5)计算每个像素点样本分别到n个聚类中心的距离,将各像素点样本划分到与其距离最近的聚类中心所属类别中。
6)针对每个类别计算其所有像素点样本特征均值,将该均值作为该类别新的聚类中心。其均值计算公式如下:
其中,i表示该类别中的像素点样本点数,x表示像素点样本点。
7)重复步步骤5)、步骤6),直到聚类中心位置不再发生变化。
理解性地,还以待测试色卡为ColorChecker24色测试卡为例,上述通过改进的K-means聚类算法得到的n个聚类中心为2个聚类中心,也就是说,基于K-means聚类算法对目标图像进行区域分割后得到的分割处理后的图像为二值图像。其示例性示意图如图4所示,目标图像如图4(a)(ColorChecker24色测试卡在D65光源下拍摄的图像)经过K-means聚类算法处理后分成了2类,如图4(b),视白色连通域部分为前景区域,黑色连通域区域为背景区域,最终实现前景与背景分割,也即得到了分割处理后的图像。
S303,对分割处理后的图像进行图像连通域分析,确定初始的颜色块的位置信息。
应理解,图像连通域分析是一种常见的图像处理操作,一般针对二值图像,将具有相同像素值且相邻的像素找出来并标记。也就是说,连通域是相同像素值的相邻像素组成的集合,将每个连通域设置一个标记,就完成了连通域分析。
示例性地,根据二值图像统计各连通区域的像素大小,得到各个模块的像素区域面积信息,以及连通区域的长轴与短轴的像素长度信息。其中,ColorChecker 24色测试卡中的模块从左到右再从上到下,分别标记为模块1-模块24。ColorChecker24色测试卡二值图的区域信息统计如下表1所示,表中的单位为像素长度。
表1
检测模块 | 区域面积 | 长轴长度 | 短轴长度 |
1 | 60593 | 290.4153 | 280.3048 |
2 | 61419 | 291.2693 | 280.9982 |
3 | 59849 | 287.6317 | 277.2756 |
4 | 61456 | 288.6198 | 283.8781 |
5 | 59558 | 284.8042 | 278.7855 |
6 | 58844 | 282.5934 | 277.8171 |
7 | 61086 | 286.7153 | 284.1130 |
8 | 60248 | 290.3462 | 291.4512 |
9 | 59204 | 289.3451 | 286.4874 |
10 | 60842 | 286.3517 | 283.5841 |
11 | 58699 | 282.1121 | 277.4175 |
12 | 61187 | 287.0035 | 284.3765 |
13 | 60498 | 288.4560 | 283.6542 |
14 | 59794 | 284.2236 | 280.3692 |
15 | 60791 | 289.5461 | 286.1515 |
16 | 58546 | 281.9752 | 276.6508 |
17 | 60795 | 290.7510 | 288.6432 |
18 | 60831 | 287.0146 | 282.5422 |
19 | 61001 | 287.4762 | 283.1427 |
20 | 60299 | 289.0470 | 278.0952 |
21 | 61806 | 292.0070 | 282.0545 |
22 | 62859 | 293.1853 | 285.8041 |
根据表1得到的ColorChecker24色测试卡二值图信息,设定面积、长轴与短轴的阈值信息范围,筛选属于这个范围的像素连通域,最终筛选得到的结果如图5所示,由图5可知,采用改进K-means聚类算法结合图像连通域分实现了初始的颜色块的提取(即模块1至模块22),23模块与24模块由于其灰度值与背景相似造成漏检。
S304,基于初始的颜色块的位置信息,确定缺失的颜色块的位置信息。
应理解,在上述步骤中确定了初始的颜色块(即模块1至模块22)的位置信息之后,还需对ColorChecker24色测试卡中缺失的颜色块(即模块23和模块24)进一步检测。
在一种可能的实施方式中,根据初始的颜色块的位置信息,对初始的颜色块进行直线拟合,建立区域坐标模型,进而确定缺失的颜色块的位置信息,其中,区域坐标模型用于对ColorChecker24色测试卡中每个颜色块在目标图像中的位置进行定位。
示例性地,对于区域坐标模型的建立,首先需要对已经检测出来的初始的颜色块进行直线拟合,实现方式如下:
使用边缘提取算法,对图5中的图像的轮廓边缘提取直线特征。例如,使用二值化边界扫描,采用Sobel纵向+Sobel水平算子边缘检测,设定梯度阈值为3来排除假边界像素,检测出更贴近真实边缘的像素点集,同时,为验证算法的有效性,在边缘检测之前,选择较多的缺失模块进行边缘检测,如图6所示为边缘检测算法效果图。
进一步地,使用最小二乘法通过使误差的平方和最小化,寻找数据的最佳函数匹配,利用最小二乘法,可以方便地求出未知的数据,并将所得数据与实际数据之差的平方累积和最小。
应理解,使用最小二乘法除了计算比较方便外,还能给出在统计意义上最好的参数拟合结果。如图7所示为使用最小二乘法拟合的一条水平底边直线和一条垂直直线。
理解性地,在得到拟合的直线后,基于图7中拟合的直线,以左下角模块为基准建立区域坐标模型,分别将已知的初始的颜色块的中心左边映射在所建立坐标之上,未知模块的中心坐标x与y值分别取所在行与列模块x与y值的均值,由此便可以得出各个未检测到缺失的颜色块的中心坐标,其区域坐标模型的示意图如图8所示,x轴有x1至x6的坐标值,y轴有y1至y4的坐标值。
根据区域坐标模型以及边缘拟合结果,延长边缘交叉点即可得到缺失的颜色块的顶点坐标,进而得到如图9所示的包括了初始的颜色块和缺失的颜色块的至少一个颜色块,也即得到了包括了初始的颜色块的位置信息和缺失的颜色块的位置信息的至少一个位置信息。
S305,根据至少一个位置信息,在目标图像中标记至少一个颜色块。
该步骤和图1所示的实施例中的步骤S103相似,在此不再赘述。
该实施例中,通过使用改进的K-means聚类算法对目标图像进行区域分割,然后进一步进行图像连通域分析以及建立区域坐标模型确定目标图像中的至少一个颜色块的位置信息,这种自动化的检测方法,可以提高色卡检测的准确性和检测效率。
在上述实施例的基础上,请参考图10,图10为本申请又一个实施例提供的色卡的检测方法的示意性流程图,在图10所示的实施例中,以怎么根据位置信息标记颜色块为例,下面详细说明图10所示的方法中的各个步骤,该流程图包括:
S1001,获取包括待测试色卡的目标图像,该待测试色卡中包括至少一个颜色块。
该步骤和图1所示的实施例中的步骤S101相似,在此不再赘述。
S1002,基于K-means聚类算法对目标图像进行区域分割,确定每个颜色块在目标图像中的位置,得到至少一个位置信息。
该步骤和图1所示的实施例中的步骤S102相似,在此不再赘述。
S1003,根据至少一个位置信息和预设标记区域,在目标图像中标记至少一个颜色块,该预设标记区域为颜色块的感兴趣区域ROI。
应理解,感兴趣区域(region of interest,ROI)是机器视觉、图像处理中,从被处理的图像以方框、圆、椭圆、不规则多边形等方式勾勒标记出需要处理的区域,是图像分析所关注的重点区域。
该步骤中,确定了目标图像中的至少一个颜色块对应的至少一个位置信息后,需要对至少一个位置信息对应的位置区域进行标记,标记区域一般为预设区域,即感兴趣区域。也就是说,电子设备中预设了标记区域的边界与所提取出的颜色块的区域边缘的距离阈值,设置的距离阈值越大,所标记的区域越小。以方框勾勒标记出感兴趣区域为例,标记后的目标图像如图11所示。
该实施例中,对检测提取出的颜色块的感兴趣区域进行标记,可以使得ColorChecker24色测试卡在校正图像色彩时更加准确。
在上述图10所示的实施例的基础上,在对分割处理后的图像进行图像连通域分析,确定初始的颜色块的位置信息之前,电子设备还可以对分割处理后的图像进行去噪处理,得到去噪后的图像。
示例性地,可以采用形态学运算技术对该分割处理后的图像进行去噪,以去除图像边界中的非色卡颜色块区域和可能由于阈值而出现的孤立像素轮廓,具体按照以下步骤实施:
步骤1、使用形态学开运算,首先对分割处理后的图像进行开运算,开运算是先腐蚀后膨胀,可滤掉图像中小的“突刺”,操作如下:
其中,A表示图像,B表示预设的结构元。
步骤2、使用形态学闭运算,对步骤1操作后的图像进行闭运算操作,闭运算是先膨胀再腐蚀,可填充图像中的孔洞缺口像素,形态学闭操作如下:
其中,A表示图像,B表示预设结构元。
示例性地,经过形态学运算技术对该分割处理后的图像(图4(b)所示的图像)进行去噪处理后,可以得到如图12所示的图像,如图12所示,图像中滤除了除颜色块区域以外的瑕疵,使得后续确定初始的颜色块的位置信息和缺失的颜色块的位置信息更加准确。
基于上述实施例,图13为本申请一个实施例提供的色卡的检测方法的完整流程图,在图13所示的实施例中,以自动化实现ColorChecker24色测试卡检测为例,该检测方法由电子设备执行,下面详细说明图13所示的方法中的各个步骤,该流程图包括:
S1301,获取包括ColorChecker24色测试卡的目标图像。
S1302,基于改进的K-means聚类算法对目标图像进行区域分割,得到分割处理后的图像。
该步骤和图3所示的实施例中的步骤S302相似,在此不再赘述。
S1303,对分割处理后的图像进行形态学处理,得到形态学处理后的图像。
该步骤和上述实施例中的“采用形态学运算技术对该分割处理后的图像进行去噪,以去除图像边界中的非色卡颜色块区域和可能由于阈值而出现的孤立像素轮廓”的实现步骤相似,在此不再赘述。
S1304,对形态学处理后的图像进行图像连通域分析,确定初始的颜色块的位置信息。
该步骤和图3所示的实施例中的步骤S303相似,在此不再赘述。
S1305,根据初始的颜色块的位置信息,对初始的颜色块进行直线拟合,建立区域坐标模型。
该步骤和图3所示的实施例中的步骤S304中建立区域坐标模型的步骤相似,在此不再赘述。
S1306,根据区域坐标模型,确定缺失的颜色块的位置信息。
该步骤和图3所示的实施例中的步骤S304中确定缺失的颜色块的位置信息相似,在此不再赘述。
S1307,根据初始的颜色块的位置信息和缺失的颜色块的位置信息以及预设标记区域,在目标图像中标记24个颜色块,该预设标记区域为颜色块的感兴趣区域ROI。
该步骤和图10所示的实施例中的步骤S1003相似,在此不再赘述。
该实施例中,利用改进的K-means聚类算法对ColorChecker24色测试卡进行区域分割,然后利用形态学图像处理技术对分割处理后的图像进行去噪处理,接下来对区域进行分析筛选得到ColorChecker24色测试卡的各颜色块区域,通过建立区域坐标模型对缺失颜色块的区域以及中心坐标估计,最终通过各颜色块的中心坐标以及边缘区域,标记了各颜色块的ROI区域。解决了需要人为定位ColorChecker24色测试卡区域的问题,实现了自动化ColorChecker 24色测试卡检测,提高了检测的准确性和检测效率。
应该理解的是,虽然图1、图3、图10和图13的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1、图3、图10和图13中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一种可能的实施方式中,上述对目标图像进行区域分割时还可以采用语义分割算法,本申请对此不做限制。
在一种可能的实施方式中,为了评估了本申请所提出的色卡的检测方法的性能,通过在不同光源下拍摄104张ColorChecker24色测试卡的数据建立数据集,并对每一张包括ColorChecker24色测试卡的目标图片进行标注,使用衡量精度的常用指标平均交并比(mean Intersection over Union,mIoU)来评估网络性能,其计算的是标记区域与本申请实施例中提供的算法分割区域2个集合的交集与其并集的重合比例,计算如下:
其中,mIoU表示平均交并比,q+1表示包括背景在内的分割类别总数,pij表示属于类别但被预测为类别j的像素数量。
将本申请实施例中的色卡检测方法与半自动的检测方法做对比,可以得到下表2所示的数据。
表2
由表2可知,本申请实施例中的色卡检测方法对于目前的半自动方法在精度上获得了明显的提升,mIoU提升了7.9%,平均每张图像的测试时间减少了3.4秒,同时说明了本申请提出的色卡检测方法在计算效率以及分割精度方面均有优势,且通过测试,发现在标记ROI方面,本申请实施例提供的方法不需要人为二次调整算法标记的ROI区域,进一步实现了检测流程的自动化,提高了检测效率。
在一个实施例中,如图14所示,提供了一种色卡的检测装置,包括:获取模块1401、确定模块1402和标记模块1403。
其中:获取模块1401,用于获取包括待测试色卡的目标图像,所述待测试色卡中包括至少一个颜色块;确定模块1402,用于基于K-means聚类算法对所述目标图像进行区域分割,确定每个颜色块在所述目标图像中的位置,得到至少一个位置信息;标记模1403,用于根据所述至少一个位置信息,在所述目标图像中标记所述至少一个颜色块。
在一些实施例中,所述至少一个位置信息包括初始的颜色块的位置信息和缺失的颜色块的位置信息。
在一些实施例中,确定模块1402具体用于:基于K-means聚类算法对所述目标图像进行区域分割,得到分割处理后的图像,所述K-means聚类算法中的n个聚类中心是根据将多个目标概率从大到小顺序排列后位于前n位对应的像素点确定的,所述多个目标概率包括所述目标图像中的各个像素点被选为聚类中心的概率,n为正整数,所述分割处理后的图像为二值图像;对所述分割处理后的图像进行图像连通域分析,确定所述初始的颜色块的位置信息;基于所述初始的颜色块的位置信息,确定所述缺失的颜色块的位置信息。
在一些实施例中,确定模1402具体还用于:根据所述初始的颜色块的位置信息,对所述初始的颜色块进行直线拟合,建立区域坐标模型,所述区域坐标模型用于对所述每个颜色块在所述目标图像中的位置进行定位;根据所述区域坐标模型,确定所述缺失的颜色块的位置信息。
在一些实施例中,所述装置还包括:建立模块,用于基于边缘提取算法和最小二乘法,对所述初始的颜色块进行直线特征提取,得到拟合的直线;基于所述拟合的直线,建立所述区域坐标模型。
在一些实施例中,所述装置还包括:处理模块,用于在对所述分割处理后的图像进行图像连通域分析,确定所述初始的颜色块的位置信息之前,对所述分割处理后的图像进行去噪处理,得到去噪后的图像。
在一些实施例中,标记模块1403具体用于:根据所述至少一个位置信息和预设标记区域,在所述目标图像中标记所述至少一个颜色块,所述预设标记区域为颜色块的感兴趣区域ROI。
应理解,这里的装置1400以功能模块的形式体现。这里的术语“模块”可以指应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。在一个可选例子中,本领域技术人员可以理解,装置1400可以具体为上述实施例中的电子设备,或者,上述实施例中电子设备的功能可以集成在装置1400中,装置1400可以用于执行上述方法实施例中与电子设备对应的各个流程和/或步骤,为避免重复,在此不再赘述。
上述装置1400具有实现上述方法中电子设备端执行的相应步骤的功能;上述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块。
图15为本申请另一个实施例提供的装置的结构性示意图。图15所示的装置可以用于执行前述任意一个实施例的方法。
如图15所示,本实施例的装置1500包括:存储器1501、处理器1502、通信接口1503以及总线1504。其中,存储器1501、处理器1502、通信接口1503通过总线1504实现彼此之间的通信连接。
存储器1501可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器1501可以存储程序,当存储器1501中存储的程序被处理器1502执行时,处理器1502用于执行上述实施例中所示的方法的各个步骤。
处理器1502可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例中所示的各个方法。
处理器1502还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请实施例的方法的各个步骤可以通过处理器1502中的硬件的集成逻辑电路或者软件形式的指令完成。
上述处理器1502还可以是通用处理器、数字信号处理器(digital signalprocessing,DSP)、ASIC、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器1501,处理器1502读取存储器1501中的信息,结合其硬件完成本申请装置包括的单元所需执行的功能。
通信接口1503可以使用但不限于收发器一类的收发装置,来实现装置1500与其他设备或通信网络之间的通信。
总线1504可以包括在装置1500各个部件(例如,存储器1501、处理器1502、通信接口1503)之间传送信息的通路。
应理解,本申请实施例所示的装置1500可以是电子设备,或者,也可以是配置于电子设备中的芯片。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种色卡的检测方法,其特征在于,所述方法包括:
获取包括待测试色卡的目标图像,所述待测试色卡中包括至少一个颜色块;
基于K-means聚类算法对所述目标图像进行区域分割,确定每个颜色块在所述目标图像中的位置,得到至少一个位置信息;
根据所述至少一个位置信息,在所述目标图像中标记所述至少一个颜色块。
2.根据权利要求1所述的方法,其特征在于,所述至少一个位置信息包括初始的颜色块的位置信息和缺失的颜色块的位置信息。
3.根据权利要求2所述的方法,其特征在于,所述基于K-means聚类算法对所述目标图像进行区域分割,确定每个颜色块在所述目标图像中的位置,得到至少一个位置信息,包括:
基于K-means聚类算法对所述目标图像进行区域分割,得到分割处理后的图像,所述K-means聚类算法中的n个聚类中心是根据将多个目标概率从大到小顺序排列后位于前n位对应的像素点确定的,所述多个目标概率包括所述目标图像中的各个像素点被选为聚类中心的概率,n为正整数,所述分割处理后的图像为二值图像;
对所述分割处理后的图像进行图像连通域分析,确定所述初始的颜色块的位置信息;
基于所述初始的颜色块的位置信息,确定所述缺失的颜色块的位置信息。
4.根据权利要求3所述的方法,其特征在于,基于所述初始的颜色块的位置信息,确定所述缺失的颜色块的位置信息,包括:
根据所述初始的颜色块的位置信息,对所述初始的颜色块进行直线拟合,建立区域坐标模型,所述区域坐标模型用于对所述每个颜色块在所述目标图像中的位置进行定位;
根据所述区域坐标模型,确定所述缺失的颜色块的位置信息。
5.根据权利要求4所述的方法,其特征在于,根据所述初始的颜色块的位置信息,对所述初始的颜色块进行直线拟合,建立区域坐标模型,包括:
基于边缘提取算法和最小二乘法,对所述初始的颜色块进行直线特征提取,得到拟合的直线;
基于所述拟合的直线,建立所述区域坐标模型。
6.根据权利要求3所述的方法,其特征在于,在对所述分割处理后的图像进行图像连通域分析,确定所述初始的颜色块的位置信息之前,所述方法还包括:
对所述分割处理后的图像进行去噪处理,得到去噪后的图像。
7.根据权利要求1所述的方法,其特征在于,根据所述至少一个位置信息,在所述目标图像中标记所述至少一个颜色块,包括:
根据所述至少一个位置信息和预设标记区域,在所述目标图像中标记所述至少一个颜色块,所述预设标记区域为颜色块的感兴趣区域ROI。
8.一种色卡的检测装置,其特征在于,所述装置包括:
获取模块,用于获取包括待测试色卡的目标图像,所述待测试色卡中包括至少一个颜色块;
确定模块,用于基于K-means聚类算法对所述目标图像进行区域分割,确定每个颜色块在所述目标图像中的位置,得到至少一个位置信息;
标记模块,用于根据所述至少一个位置信息,在所述目标图像中标记所述至少一个颜色块。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器用于存储代码指令;所述处理器用于运行所述代码指令,以执行如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序包括用于实现如权利要求1至7中任一项所述的方法的指令。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211477818.3A CN115761270A (zh) | 2022-11-23 | 2022-11-23 | 色卡的检测方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211477818.3A CN115761270A (zh) | 2022-11-23 | 2022-11-23 | 色卡的检测方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115761270A true CN115761270A (zh) | 2023-03-07 |
Family
ID=85336386
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211477818.3A Pending CN115761270A (zh) | 2022-11-23 | 2022-11-23 | 色卡的检测方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115761270A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117058255A (zh) * | 2023-08-17 | 2023-11-14 | 摩尔线程智能科技(北京)有限责任公司 | 一种色卡识别方法及装置、电子设备和存储介质 |
CN117095186A (zh) * | 2023-08-18 | 2023-11-21 | 摩尔线程智能科技(北京)有限责任公司 | 一种色卡识别方法及装置、电子设备和存储介质 |
-
2022
- 2022-11-23 CN CN202211477818.3A patent/CN115761270A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117058255A (zh) * | 2023-08-17 | 2023-11-14 | 摩尔线程智能科技(北京)有限责任公司 | 一种色卡识别方法及装置、电子设备和存储介质 |
CN117095186A (zh) * | 2023-08-18 | 2023-11-21 | 摩尔线程智能科技(北京)有限责任公司 | 一种色卡识别方法及装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109978839B (zh) | 晶圆低纹理缺陷的检测方法 | |
CN115761270A (zh) | 色卡的检测方法、装置、电子设备及存储介质 | |
CN110689037A (zh) | 用于使用深度网络的自动对象注释的方法和系统 | |
CN111325717B (zh) | 手机缺陷位置识别方法及设备 | |
CN111027546B (zh) | 一种字符分割方法、装置以及计算机可读存储介质 | |
CN109461133B (zh) | 桥梁螺栓脱落检测方法及终端设备 | |
CN107862235B (zh) | 二维码的位置定位方法、装置及终端设备 | |
JP2024050880A (ja) | 文字分割方法、装置、および、コンピュータ可読記憶媒体 | |
CN111259891B (zh) | 一种自然场景下身份证识别方法、装置、设备和介质 | |
CN112580383B (zh) | 二维码识别方法、装置、电子设备及存储介质 | |
CN111784675A (zh) | 物品纹理信息处理的方法、装置、存储介质及电子设备 | |
CN111126393A (zh) | 车辆外观改装判断方法、装置、计算机设备及存储介质 | |
CN110570442A (zh) | 一种复杂背景下轮廓检测方法、终端设备及存储介质 | |
CN112288724A (zh) | 缺陷检测方法及装置、电子设备和存储介质 | |
CN114359412A (zh) | 一种面向建筑数字孪生的相机外参自动标定方法及系统 | |
WO2021195873A1 (zh) | 识别sfr测试卡图像中感兴趣区域的方法及装置、介质 | |
CN111222507A (zh) | 数字式仪表读数的自动识别方法、计算机可读存储介质 | |
CN110991437B (zh) | 字符识别方法及其装置、字符识别模型的训练方法及其装置 | |
CN114581415A (zh) | Pcb缺陷的检测方法、装置、计算机设备及存储介质 | |
CN113283439B (zh) | 基于图像识别的智能计数方法、装置及系统 | |
CN114821274A (zh) | 一种用于识别分合指示牌的状态的方法和设备 | |
CN111738310B (zh) | 物料分类方法、装置、电子设备和存储介质 | |
CN111695374B (zh) | 监控视角中斑马线区域的分割方法、系统、介质及设备 | |
CN111062984A (zh) | 视频图像区域面积的测量方法、装置、设备及存储介质 | |
CN113689378B (zh) | 试纸带精准定位的判定方法、装置、存储介质及终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |