一种颜色识别方法、装置、设备及存储介质与流程

未命名 07-28 阅读:85 评论:0


1.本技术涉及机器视觉领域,具体涉及一种颜色识别方法、装置、设备及存储介质。


背景技术:

2.随着人工智能技术以及监控摄像头的普及,需要对颜色进行识别的场景与日俱增。例如,在车牌识别的业务场景中,将车牌检测出来之后,还需要判断车牌的颜色,是黄牌、蓝牌、绿牌还是黑牌等;在工厂生产线上,也可以利用颜色识别来对产品进行分类,从而进行对应的处理;在安防监控的人物属性识别场景中,检测到人后,还要识别其肤色、发色以及所穿衣服的颜色。
3.在以往的方案中,主要有基于深度学习的和基于人工规则的两种方法。基于深度学习的方法,一般是先采集样本数据,然后进行人工标注,再进行有监督式训练,最后将该深度学习神经网络模型进行部署,以此来对目标图像的颜色进行识别。这种方法只能用在专用的业务场景上,不同的业务场景需要训练不同的深度学习神经网络模型,例如车牌颜色识别的模型就无法用在衣服颜色识别的业务上,通用性不强且研发成本极高。而基于人工规则的方法,不同颜色之间的分界不好界定,且颜色变化是不连续的和非线性的,简单的规则无法覆盖所有的颜色范围,也无法适应复杂的业务场景。


技术实现要素:

4.本技术的目的之一在于提供一种颜色识别方法、装置、设备及存储介质,以解决现有技术中颜色识别通用性不强且无法适应复杂业务场景的技术问题。
5.根据本技术的一方面,提供了一种颜色识别方法,包括:对颜色数据进行分类,得到多种颜色类型的颜色通道的取值;获取待识别图像的像素点的所有颜色通道的值;基于多种颜色类型的颜色通道的取值、以及所述像素点的所有颜色通道的值确定所述像素点的颜色类型。
6.在本技术一实施例中,对颜色数据进行分类,得到多种颜色类型的颜色通道的取值,包括:对hls色彩模型的色调通道进行划分,得到多个色调类型以及每个色调类型对应的色调值范围;构建每个色调类型对应的一个或者多个彩色图,其中,每个彩色图对应一个或者多个色调值,每个彩色图包括多个彩色像素点,所述多个彩色像素点的色调通道的取值限定在对应的色调值范围中,所述多个彩色像素点的其他颜色通道的取值覆盖其他颜色通道的所有取值;分别对每个色调类型对应的彩色图中的所有彩色像素点进行聚类,得到每个色调类型对应的多个颜色类型及每个颜色类型对应的颜色通道取值。
7.在本技术一实施例中,所述颜色数据的颜色通道包括色调通道、亮度通道和饱和
度通道,其中,基于多种颜色类型的颜色通道的取值、以及所述像素点的所有颜色通道的值确定所述像素点的颜色类型,包括:建立与色调通道对应的第一集合、以及与亮度通道和饱和度通道对应的第二集合,其中,所述第一集合包括多个第一筛选器,所述第二集合包括多个第二筛选器,每个第一筛选器对应一种颜色类型的色调取值,每个第二筛选器对应一种颜色类型的饱和度取值和亮度取值;基于所述多个第一筛选器确定所述像素点的色调值对应的颜色类型,并基于所述多个第二筛选器确定所述像素点的饱和度值和亮度值对应的颜色类型;基于所述像素点的色调值对应的颜色类型、以及饱和度值和亮度值对应的颜色类型确定所述像素点的颜色类型。
8.在本技术一实施例中,所述第一筛选器基于在所述第一集合中的位置与对应颜色类型的色调取值对应,所述第二筛选器通过在所述第二集合中的位置与对应颜色类型的饱和度取值和亮度取值对应。
9.在本技术一实施例中,基于所述多个第一筛选器确定所述像素点的色调值对应的颜色类型,并基于所述多个第二筛选器确定所述像素点的饱和度值和亮度值对应的颜色类型,包括:基于所述像素点的色调值定位至所述多个第一筛选器中的第一目标筛选器;并基于所述像素点的饱和度值和亮度值定位至所述第二筛选器中的第二目标筛选器,其中,所述第一目标筛选器在所述第一集合中的位置对应的色调取值与所述像素点的色调值一致,所述第二目标筛选器在所述第二集合中的位置对应的亮度取值和饱和度取值与所述像素点的亮度值和饱和度值分别一致;将所述第一目标筛选器对应的颜色类型作为所述像素点的色调值对应的颜色类型,并将所述第二目标值筛选器对应的颜色类型作为所述像素点的饱和度值和亮度值对应的颜色类型。
10.在本技术一实施例中,基于所述像素点的色调值对应的颜色类型、以及饱和度值和亮度值对应的颜色类型确定所述像素点的颜色类型,包括:确定所述像素点的色调值对应的多种颜色类型的第一集合,并确定所述像素点的饱和度值和亮度值对应的多种颜色类型的第二集合;确定所述第一集合和所述第二集合的交集,得到所述像素点的颜色类型。
11.在本技术一实施例中,还包括:确定所述待识别图像中每一个像素点的颜色类型;对所述待识别图像中每一个像素点的颜色类型进行统计,得到所述待识别图像的所有颜色类型、以及每一个颜色类型的占比,所述占比为每一个颜色类型的像素点数量与像素点总数量之比。
12.本技术的另一方面,还提供一种颜色识别装置,包括:分类模块,用于对颜色数据进行分类,得到多种颜色类型的颜色通道的取值;获取模块,用于获取待识别图像的像素点的所有颜色通道的值;像素识别模块,用于基于多种颜色类型的颜色通道的取值、以及所述像素点的所有颜色通道的值确定所述像素点的颜色类型。
13.本技术的另一方面,还提供一种电子设备,包括:处理器;以及存储程序的存储器,其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行本技术实施例的方法。
14.本技术的另一方面,还提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行本技术实施例的方法。
15.本技术的有益效果为:本技术通过预先将色彩数据划分为多个颜色类型,并确定每个颜色类型的颜色通道的取值;在对图像进行识别时,将图像中每一个像素点的每个颜色通道的值进行提取,并基于像素点的每个颜色通道的值、以及多种颜色类型的颜色通道的取值来确定像素点的颜色类型。本技术通过采用人工划分及聚类算法相结合的方式来解决不同颜色之间界限难以界定的问题,同时,基于像素点进行分类,使得本技术的通用性更强、颜色覆盖范围更加全面、可识别颜色的种类更多。
附图说明
16.图1为本技术的一示例性实施例示出的颜色识别方法的流程图;图2为本技术的另一示例性实施例示出的构建颜色数据的流程图;图3为本技术的另一示例性实施例示出颜色数据示意图;图4为本技术的另一示例性实施例示出的颜色识别的流程图;图5为本技术的一示例性实施例示出的目标图像的识别结果示意图;图6为本技术的一示例性实施例示出的颜色识别装置的结构图;图7示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。
具体实施方式
17.以下将参照附图和优选实施例来说明本技术的实施方式,本领域技术人员可由本说明书中所揭露的内容轻易地了解本技术的其他优点与功效。本技术还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本技术的精神下进行各种修饰或改变。应当理解,优选实施例仅为了说明本技术,而不是为了限制本技术的保护范围。
18.需要说明的是,以下实施例中所提供的图示仅以示意方式说明本技术的基本构想,遂图式中仅显示与本技术中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
19.图1为本技术的一示例性实施例示出的颜色识别方法的流程图,如图1所示,本实施例中的颜色识别方法,包括步骤s110至步骤s140。
20.s110,对颜色数据进行分类,得到多种颜色类型的颜色通道的取值;颜色数据是指色彩模型所包含的数据,通过对色彩模型进行划分,得到多种颜色类型与像素颜色通道的取值关系。以hls色彩模型为例,hls色彩模型包括色调(hue)通道、亮度(lightness)通道、以及饱和度(saturation)通道。
21.以hls色彩模型为例,对颜色数据进行分类,得到多种颜色类型的颜色通道的取值
的过程包括:对hls色彩模型的色调通道进行划分,得到多个色调类型以及每个色调类型对应的色调值范围;通过对hls色彩模型进行手动划分,得到多个色调类型。在hls色彩模型中,色调通道的取值范围是 0-360
°
,每一种色调类型对应一个色调值范围。
22.例如,按照色调的排布规律将红、黄、绿、青、蓝、紫六种主色调以及主色调之间的混合颜色从 0-360
°
中划分出来,得到n种色调类型、以及n种色调类型的取值范围。
23.构建每个色调类型对应的一个或者多个彩色图,其中,每个彩色图对应一个或者多个色调值,每个彩色图包括多个彩色像素点,所述多个彩色像素点的色调通道的取值限定在对应的色调值范围中,所述多个彩色像素点的其他颜色通道的取值覆盖其他颜色通道的所有取值;分别对每个色调类型对应的彩色图中的所有彩色像素点进行聚类,得到每个色调类型对应的多个颜色类型及每个颜色类型对应的颜色通道取值。
24.基于色调类型构建的彩色图代表了该色调值范围内存在的所有颜色。
25.例如,彩色图水平方向是亮度,取值范围从0-100,从左往右依次递增,彩色图竖直方向是饱和度,取值范围从0-100,从上到下依次递增。
26.分别对每个色调类型对应的彩色图中的所有彩色像素点进行聚类,得到每个色调类型对应的多个颜色类型及每个颜色类型对应的颜色通道取值。
27.本实施例中,采用聚类算法对彩色图中的彩色像素点进行聚类,将彩色图中的多种颜色聚类为颜色类型,从而得到每一种色调类型对应的多种颜色类型。
28.聚类算法可以是k-means聚类算法,通过k-means聚类算法将每一种色调类型对应的彩色图所包含的颜色信息聚类为m种颜色类型,从而将hls色彩模型划分为n*m个颜色类型。
29.基于对色彩模型建立的颜色数据,具有通用性强、分界清晰、颜色覆盖范围全面、可识别的颜色种类多等优点。
30.s120,获取待识别图像的像素点的所有颜色通道的值;待识别图像的像素点的颜色是有多个颜色通道来决定的,因此本实施例通过获取待识别图像的像素点的所有颜色通道的值来识别像素点的颜色。
31.待识别图像对应的颜色模型应该与颜色数据对应的颜色模型一致,以保证像素点的颜色通道与集合对应的颜色通道一致,例如颜色数据属于hls色彩模型,那么待识别图像对应的颜色模型也应该是hls模型。如果待识别图像对应的颜色模型为rgb模型,那么需要先将待识别图像由rgb色彩模型转换为hls色彩模型。从而得到像素点的色调通道的值、亮度通道的值、以及饱和度通道的值。
32.s130,基于多种颜色类型的颜色通道的取值、以及所述像素点的所有颜色通道的值确定所述像素点的颜色类型。
33.确定的颜色类型的颜色通道的取值应包含像素点对应颜色通道的值,例如,确定的颜色类型色调通道的取值应包括像素点的色调通道的值、确定的颜色类型的亮度通道的取值应包括像素点的亮度通道的值、确定的颜色类型的饱和度通道的取值应包括像素点的饱和度通道的值。
34.具体的确定过程包括如下步骤:建立与色调通道对应的第一集合、以及与亮度通道和饱和度通道对应的第二集合,其中,所述第一集合包括多个第一筛选器,所述第二集合包括多个第二筛选器,每个第一筛选器对应一种颜色类型的色调取值,每个第二筛选器对应一种颜色类型的饱和度取值和亮度取值;第一集合基于多个颜色类型对应的色调通道的取值建立,第二集合基于多个颜色类型对应的亮度通道和饱和度通道的取值建立。即第一集合对应色调通道,第二集合对应亮度和饱和度通道。
35.第一集合中的每个第一筛选器对应了一种颜色类型的色调取值范围。第二集合中每个第二筛选器对应了一种颜色类型的亮度和饱和度的取值范围。例如,第一集合中某个第一筛选器对应的取值为{1,1,1,1,1,0,0,0,0,0...},前五个1表示第一筛选器对应的颜色类型的色调取值范围是从1-5,对应的颜色类型为红色。
36.基于所述多个第一筛选器确定所述像素点的色调值对应的颜色类型,并基于所述多个第二筛选器确定所述像素点的饱和度值和亮度值对应的颜色类型;在本实施例中,利用像素点的值对对应集合内的筛选器进行位置索引,得到与像素点的每个颜色通道的值对应的筛选器。
37.在本实施例中,第一筛选器内包含一个数组,数组中的每一位数的位置表示对应的色调值,每一位数为0或者1,1表示该色调值落入至该第一筛选器对应的色调范围中,该第一筛选器则为该像素点的第一目标筛选器,0则表示该色调值不属于该第一筛选器对应的色调范围。如果某一像素点的色调值为2,且第一筛选器第二位数的值为1,则表示该像素点的色调类型与该第一筛选器对应的色调类型一致,该第一筛选器则为该像素点的第一目标筛选器。第二筛选器包含一个二维数组,其中一维对应饱和度,另一维表示亮度。定位过程中,第二筛选器与第一筛选器同理。
38.本技术采用坐标定位的方式来快速对像素点进行筛选,具体过程如下:基于所述像素点的色调值定位至所述多个第一筛选器中的第一目标筛选器;并基于所述像素点的饱和度值和亮度值定位至所述第二筛选器中的第二目标筛选器。
39.其中,第一目标筛选器是基于所述像素点的色调值进行位置索引得到的,第二目标筛选器是基于所述像素点的亮度值和饱和度值进行位置索引得到的。
40.将所述第一目标筛选器对应的颜色类型作为所述像素点的色调值对应的颜色类型,并将所述第二目标值筛选器对应的颜色类型作为所述像素点的饱和度值和亮度值对应的颜色类型。
41.在本实施例中,将筛选器内部的数组作为坐标系,并通过像素点的颜色通道的值作为坐标进行位置索引。通过定位的方式来确定像素点每个颜色通道的颜色类型,省略了在色彩数据库中遍历与比对的时间,缩短了颜色识别时间,提高了颜色识别的效率。其中,色彩数据库为存放多种颜色类型的颜色通道的取值的数据库。
42.例如,像素点的色调通道的值为2,亮度通道的值为20,饱和度通道的值为20。色调通道对应的第一集合中其中一个第一筛选器对应的色调范围是{1,2,3,4,5},由于色调范围在第一筛选器中用0和1来表示,因此第一筛选器内对应的范围实际上{1,1,1,1,1,0,0,0,0,0...},前五个1表示第一筛选器对应的色调值是从1-5。像素点的色调值输入至第一筛
选器中,其色调值为2,根据2来进行位置索引,第一筛选器的第二个位置为1,表示该像素点的色调值落入至该第一筛选器对应的色调范围。此时该第一筛选器输出1,以表示像素点的色调类型与当前第一筛选器对应的色调类型一致。例如,该第一筛选器对应的色调类型为红色,根据色调通道值为2,该第一筛选器第2位置上对应的值为1,那么说明该像素点的色调通道的值对应的颜色类型为红色。
43.与此同时,亮度通道和饱和度通道对应的第二集合中其中一个第二筛选器取值范围为{(1, 1, 0, 1, 1, 0, 0, 1,
ꢀ……
),(0, 0, 0, 1, 1, 0, 1,
ꢀ……
)},利用该像素点的亮度值和饱和度值进行位置索引,该像素点的饱和度值和亮度值均为20,如果该取值范围中的第20位的值均为1,则说明该像素点的亮度和饱和度与该第二筛选器对应的亮度和饱和度类型一致。例如,该第二筛选器对应的颜色类型为目标亮度和饱和度,那么说明改像素点同样为目标亮度和饱和度。
44.基于所述像素点的色调值对应的颜色类型、以及饱和度值和亮度值对应的颜色类型确定所述像素点的颜色类型。
45.由于色调值对应的颜色类型可能是多个,亮度值以及饱和度值对应的颜色通道也可能是多个。因此在确定像素点的颜色类型时,需要对多个可能的颜色类型求交集,即:确定所述像素点的色调值对应的多种颜色类型的第一集合,并确定所述像素点的饱和度值和亮度值对应的多种颜色类型的第二集合;确定所述第一集合和所述第二集合的交集,得到所述像素点的颜色类型。
46.在本实施例中,确认像素点的颜色类型即为求交集的过程。
47.例如,像素点的色调值对应的颜色类型为红色,像素点可能的颜色类型为深红色、浅红色、粉红色等;像素点的亮度值和饱和度值对应的颜色类型为深色,像素点可能是颜色类型为深红色、深蓝色、深绿色等;两个集合求交集,便可以得到像素点的颜色类型为深红色。
48.上述识别过程,通过提前将色彩数据库以参数的形式加载至内存中,占用一部分的物理空间,但是采用定位的方式,节省了读取色彩数据库并在其中遍历和对比的时间,以空间换时间,可以有效地提高颜色识别速度。
49.s140,确定所述待识别图像中每一个像素点的颜色类型,并对所述待识别图像中每一个像素点的颜色类型进行统计,得到所述待识别图像的所有颜色类型、以及每一个颜色类型的占比,所述占比为每一个颜色类型的像素点数量与像素点总数量之比。
50.在本实施例中,对待识别图像的每一个像素点的颜色类型都进行识别之后,还可以根据每一个像素点的颜色类型对待识别图像进行识别。识别的参数包括:待识别图像的所有颜色类型、以及每一个颜色类型的占比。从而可以将图像的识别进行直观的展示。
51.图2为本技术的另一示例性实施例示出的构建颜色数据的流程图,如图2所示,本实施例基于hls色彩模型,采用人工划分和聚类算法相结合的方式来对颜色进行分类。
52.首先根据业务场景设定颜色类别的数量,如车号牌识别需要的颜色类别较少,可以设定几种颜色类别的数量。按照设定的颜色类别的数量,结合色调环图中色调的排布规律将红、黄、绿、青、蓝、紫六种主色调以及他们之间的混合颜色从0-360
°
中划分出来,类别数为n。
53.然后绘制每一种色调对应的亮度和饱和度二维彩色图,可以是一个色调值对应一
张二维彩色图,也可以是多个色调值对应一张二维彩色图。其中,二维彩色图水平方向是亮度,取值范围从0-100,从左往右依次递增;竖直方向是饱和度,取值范围从0-100,从上到下依次递增。
54.接着对二维彩色图内的像素点使用k-means聚类算法,将每一种色调对应的二维彩色图又分成m类,最后将得到的(n*m)类颜色图进行整理合并,由此完成了对不同色调、亮度和饱和度颜色的分类。分类得到的颜色数据存放至色彩数据库中,等到后续识别过程的调用。
55.图3为本技术的另一示例性实施例示出颜色数据示意图,存在至色彩数据库中的颜色数据如图3所示。
56.上述的颜色分类方式,使得后续调用颜色类型进行颜色识别时,识别颜色的通用性更强、颜色覆盖范围更加全面、可识别的颜色种类更多,可以用在任意场景上。同时,后续对像素点进行颜色识别时,每一个像素都有一个确定的类别,使得最终颜色识别的精度达到像素级。
57.得到色彩数据库后,就可以对目标图像的每一个像素点进行识别了,由每一个像素点的颜色进行汇总,最终就能得到目标图像所包含的颜色类别及其占比。对于一般的颜色识别方法来说,可以先读取图像数据,并将其色彩空间由rgb转换为hls,然后获取图像的所有像素点,遍历色彩数据库,将目标图像的每一个像素点的数值与色彩数据库中的颜色数据逐一对比,以此来实现对目标图像的所有像素点颜色类型的识别。不过这种方法需要对比的次数太多,导致耗时过长。
58.图4为本技术的另一示例性实施例示出的颜色识别的流程图,如图4所示,本实施例中的颜色识别的流程包括:基于颜色数据创建分类器,分类器中存在两种过滤器,分别为对应色调通道的h过滤器(即第一集合)、以及对应亮度通道和饱和度通道的ls过滤器(即第二集合)。h过滤器对应色调通道的集合,ls过滤器对应饱和度通道和亮度通道的集合。h过滤器和ls过滤器内部均设有classnum个筛子(classnum可以是颜色类别的数量),h过滤器中的每个筛子由固定长度的一维数组构成,ls过滤器中的每个筛子由固定长度二维数组构成,例如,长度为180。
59.然后从色彩数据库中将每一种颜色类型的各个颜色通道的取值加载至对应过滤器的筛子中,以使得每一个筛子负责一个颜色类型的筛选。例如,h过滤器中的筛子负责色调筛选,ls过滤器中的筛子负责亮度和饱和度的筛选。
60.在对目标图像的像素点进行识别时,需要先读取目标图像,确定目标图像的颜色空间。如果目标图像的颜色空间为rgb,还需要将目标图像的颜色空间由rgb转换为hls。然后将目标图像的像素点送入至分类器。像素点的色调通道的值被送入至h过滤器中,亮度通道和饱和度通道的值被送入至ls过滤器中。基于像素点的色调值对于h过滤器中每个筛子对应一维数组进行位置索引,得到h过滤器中的目标筛子;基于像素点的亮度值和饱和度值对于ls过滤器中每个筛子对应二维数组进行位置索引,得到ls过滤器中的目标筛子。位置索引时,每个筛子对应的数组的目标位为1筛子便输出1,目标位为0便输出0,目标位由像素点的颜色通道值决定,例如,像素点的色调值为2,目标位即为第2位。目标筛子的输出值为1,从而的得到像素点的色调类型、亮度和饱和度类型。
61.h过滤器中包括classnum个筛子。当其中一个筛子对应的色调取值与像素点的色调值一致时,这个筛子输出为1,其他筛子输出为0,从而构成一个长度为classnum的一维数组。基于这个一维数据可以对像素点的色调进行识别。例如,该像素点的色调类型对应的筛子为第6个,则在输出的一维数组中,第6位置的数值为1,其余位置的数值为0。
62.ls过滤器中的筛子是二维的,每一个筛子都对应亮度和饱和度两种信息。与h过滤器同理,ls过滤器同样也会输出一个长度为classnum的一维数组。
63.过滤器输出的数组表示对应颜色通道的颜色类型,由于一个颜色通道的颜色类型可以对应多个像素点的颜色类型,因此需要将两个数组进行运算,得到确切的结果。在本实施例中,最后将两个数组进行相乘或者相与,运算得到的一维数组即为分类器的输出。利用输出的一维数组可以快速地对像素点的颜色类型进行识别。
64.图5为本技术的一示例性实施例示出的目标图像的识别结果示意图,如图5所示,最后还可以确定目标图像中每一个像素点的颜色类型,并对所述待识别图像中每一个像素点的颜色类型进行统计,得到所述待识别图像的所有颜色类型、以及每一个颜色类型的占比。
65.本技术中的颜色识别方法,通过预先将色彩数据划分为多个颜色类型,并确定每个颜色类型的颜色通道的取值;在对图像进行识别时,将图像中每一个像素点的每个颜色通道的值进行提取,并基于像素点的每个颜色通道的值、以及多种颜色类型的颜色通道的取值来确定像素点的颜色类型。本技术通过采用人工划分及聚类算法相结合的方式来解决不同颜色之间界限难以界定的问题,同时,基于像素点进行分类,使得本技术的通用性更强、颜色覆盖范围更加全面、可识别颜色的种类更多。
66.图6为本技术的一示例性实施例示出的颜色识别装置的结构图,如图6所示,颜色识别装置,包括:分类模块610,用于对颜色数据进行分类,得到多种颜色类型的颜色通道的取值;获取模块620,用于获取待识别图像的像素点的所有颜色通道的值;像素识别模块630,用于基于多种颜色类型的颜色通道的取值、以及所述像素点的所有颜色通道的值确定所述像素点的颜色类型;图像识别模块640,确定所述待识别图像中每一个像素点的颜色类型,并对所述待识别图像中每一个像素点的颜色类型进行统计,得到所述待识别图像的所有颜色类型、以及每一个颜色类型的占比,所述占比为每一个颜色类型的像素点数量与像素点总数量之比。
67.本技术中的颜色识别装置,通过预先将色彩数据划分为多个颜色类型,并确定每个颜色类型的颜色通道的取值;在对图像进行识别时,将图像中每一个像素点的每个颜色通道的值进行提取,并基于像素点的每个颜色通道的值、以及多种颜色类型的颜色通道的取值来确定像素点的颜色类型。本技术通过采用人工划分及聚类算法相结合的方式来解决不同颜色之间界限难以界定的问题,同时,基于像素点进行分类,使得本技术的通用性更强、颜色覆盖范围更加全面、可识别颜色的种类更多。
68.图7示出了适于用来实现本技术实施例的电子设备的计算机系统的结构示意图。需要说明的是,图7示出的电子设备的计算机系统700仅是一个示例,不应对本技术实施例的功能和使用范围带来任何限制。
69.如图7所示,计算机系统700包括中央处理单元(central processing unit,cpu)701,其可以根据存储在只读存储器(read-only memory,rom)702中的程序或者从储存部分708加载到随机访问存储器(random access memory,ram)703中的程序而执行各种适当的动作和处理,例如执行上述实施例中的方法。在ram 703中,还存储有系统操作所需的各种程序和数据。cpu 701、rom 702以及ram 703通过总线704彼此相连。输入/输出(input /output,i/o)接口705也连接至总线704。
70.以下部件连接至i/o接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(cathode ray tube,crt)、液晶显示器(liquid crystal display,lcd)等以及扬声器等的输出部分707;包括硬盘等的储存部分708;以及包括诸如lan(local area network,局域网)卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至i/o接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入储存部分708。
71.特别地,根据本技术的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本技术的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(cpu)701执行时,执行本技术的系统中限定的各种功能。
72.需要说明的是,本技术实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(erasable programmable read only memory,eprom)、闪存、光纤、便携式紧凑磁盘只读存储器(compact disc read-only memory,cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本技术中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
73.附图中的流程图和框图,图示了按照本技术各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意
的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
74.描述于本技术实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
75.本技术的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机的处理器执行时,使计算机执行如前的方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。
76.本技术的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的颜色识别和预报方法。
77.以上实施例仅是为充分说明本技术而所举的较佳的实施例,本技术的保护范围不限于此。本技术领域的技术人员在本技术基础上所作的等同替代或变换,均在本技术的保护范围之内。

技术特征:
1.一种颜色识别方法,其特征在于,包括:对颜色数据进行分类,得到多种颜色类型的颜色通道的取值;获取待识别图像的像素点的所有颜色通道的值;基于多种颜色类型的颜色通道的取值、以及所述像素点的所有颜色通道的值确定所述像素点的颜色类型。2.根据权利要求1所述的颜色识别方法,其特征在于,对颜色数据进行分类,得到多种颜色类型的颜色通道的取值,包括:对hls色彩模型的色调通道进行划分,得到多个色调类型以及每个色调类型对应的色调值范围;构建每个色调类型对应的一个或者多个彩色图,其中,每个彩色图对应一个或者多个色调值,每个彩色图包括多个彩色像素点,所述多个彩色像素点的色调通道的取值限定在对应的色调值范围中,所述多个彩色像素点的其他颜色通道的取值覆盖其他颜色通道的所有取值;分别对每个色调类型对应的彩色图中的所有彩色像素点进行聚类,得到每个色调类型对应的多个颜色类型及每个颜色类型对应的颜色通道取值。3.根据权利要求1所述的颜色识别方法,其特征在于,所述颜色数据的颜色通道包括色调通道、亮度通道和饱和度通道,其中,基于多种颜色类型的颜色通道的取值、以及所述像素点的所有颜色通道的值确定所述像素点的颜色类型,包括:建立与色调通道对应的第一集合、以及与亮度通道和饱和度通道对应的第二集合,其中,所述第一集合包括多个第一筛选器,所述第二集合包括多个第二筛选器,每个第一筛选器对应一种颜色类型的色调取值,每个第二筛选器对应一种颜色类型的饱和度取值和亮度取值;基于所述多个第一筛选器确定所述像素点的色调值对应的颜色类型,并基于所述多个第二筛选器确定所述像素点的饱和度值和亮度值对应的颜色类型;基于所述像素点的色调值对应的颜色类型、以及饱和度值和亮度值对应的颜色类型确定所述像素点的颜色类型。4.根据权利要求3所述的颜色识别方法,其特征在于,所述第一筛选器基于在所述第一集合中的位置与对应颜色类型的色调取值对应,所述第二筛选器通过在所述第二集合中的位置与对应颜色类型的饱和度取值和亮度取值对应。5.根据权利要求4所述的颜色识别方法,其特征在于,基于所述多个第一筛选器确定所述像素点的色调值对应的颜色类型,并基于所述多个第二筛选器确定所述像素点的饱和度值和亮度值对应的颜色类型,包括:基于所述像素点的色调值定位至所述多个第一筛选器中的第一目标筛选器;并基于所述像素点的饱和度值和亮度值定位至所述第二筛选器中的第二目标筛选器,其中,所述第一目标筛选器在所述第一集合中的位置对应的色调取值与所述像素点的色调值一致,所述第二目标筛选器在所述第二集合中的位置对应的亮度取值和饱和度取值与所述像素点的亮度值和饱和度值分别一致;将所述第一目标筛选器对应的颜色类型作为所述像素点的色调值对应的颜色类型,并将所述第二目标值筛选器对应的颜色类型作为所述像素点的饱和度值和亮度值对应的颜
色类型。6.根据权利要求3所述的颜色识别方法,其特征在于,基于所述像素点的色调值对应的颜色类型、以及饱和度值和亮度值对应的颜色类型确定所述像素点的颜色类型,包括:确定所述像素点的色调值对应的多种颜色类型的第一集合,并确定所述像素点的饱和度值和亮度值对应的多种颜色类型的第二集合;确定所述第一集合和所述第二集合的交集,得到所述像素点的颜色类型。7.根据权利要求1所述的颜色识别方法,其特征在于,还包括:确定所述待识别图像中每一个像素点的颜色类型;对所述待识别图像中每一个像素点的颜色类型进行统计,得到所述待识别图像的所有颜色类型、以及每一个颜色类型的占比,所述占比为每一个颜色类型的像素点数量与像素点总数量之比。8.一种颜色识别装置,其特征在于,包括:分类模块,用于对颜色数据进行分类,得到多种颜色类型的颜色通道的取值;获取模块,用于获取待识别图像的像素点的所有颜色通道的值;像素识别模块,用于基于多种颜色类型的颜色通道的取值、以及所述像素点的所有颜色通道的值确定所述像素点的颜色类型。9. 一种电子设备,包括:处理器;以及存储程序的存储器,其中,所述程序包括指令,所述指令在由所述处理器执行时使所述处理器执行根据权利要求1-7中任一项所述的方法。10.一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使计算机执行根据权利要求1-7中任一项所述的方法。

技术总结
本申请涉及一种颜色识别方法、装置、设备及存储介质,本申请通过预先将色彩数据划分为多个颜色类型,并确定每个颜色类型的颜色通道的取值;在对图像进行识别时,将图像中每一个像素点的每个颜色通道的值进行提取,并基于像素点的每个颜色通道的值、以及多种颜色类型的颜色通道的取值来确定像素点的颜色类型。本申请通过采用人工划分及聚类算法相结合的方式来解决不同颜色之间界限难以界定的问题,同时,基于像素点进行分类,使得本申请的通用性更强、颜色覆盖范围更加全面、可识别颜色的种类更多。类更多。类更多。


技术研发人员:韦未来
受保护的技术使用者:北京朝歌数码科技股份有限公司
技术研发日:2023.04.28
技术公布日:2023/7/27
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐