本发明涉及图像处理技术领域,特别涉及一种颜色识别方法、装置、设备及存储介质。
背景技术:
当前,计算机视觉被广泛地应用到人脸识别、安防、无人驾驶等各个领域,其中,图像识别技术是计算机视觉技术的一个重要分支,而颜色属性是图像中最显著的区分点之一,因此颜色识别在图像识别中尤为重要。例如,在监控视频中,由于相机分辨率和拍摄角度的缘故,通常无法得到高质量的人脸图像,在人脸识别失效的情况下,行人重识别技术(reid,personre-identification)就成为了一个非常重要的替代品技术。行人重识别技术可以根据行人的属性,比如衣着、体貌等特征在各个摄像头中去检索,把行人在各个摄像头出现的视频段关联起来,形成轨迹,有利于刑侦破案。为了提高行人重识别的命中率,准确判断行人属性中最能直观反映行人特征的颜色属性显得尤为重要,如上下衣颜色、帽子颜色、鞋子颜色、口罩颜色、行李箱颜色、包的颜色等。现有技术中,颜色识别主要是通过统计方法或者卷积神经网络预测颜色标签的方法进行判断,由于物品的颜色并不都是纯色且卷积神经网络预测颜色标签依赖人为主观判定颜色类别后给定的标签数据集,使得统计结果误差较大。综上所述可以看出,现有技术中至少存在颜色识别误差较大、准确度不高的技术问题。
技术实现要素:
有鉴于此,本发明的目的在于提供一种颜色方法、装置、设备及存储介质,通过预测图像的rgb(r表示红色,g表绿色,b表示蓝色)值对颜色进行识别,能够精确定位目标对象并减少人为主观标注颜色标签产生的误差,提高了识别准确度。其具体方案如下:
本申请的第一方面提供了一种颜色识别方法,包括:
利用分割算法对原始图像进行分割,得到各个分割区域图像;
将所述分割区域图像输入至训练后的颜色识别模型;其中,所述颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练后得到的模型,所述训练集包括样本区域图像和相应的样本标签,所述样本标签为基于从所述样本区域图像上筛选的若干像素点对应的rgb值确定得到;
基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别。
可选的,所述利用分割算法对原始图像进行分割,得到各个分割区域图像,包括:
利用语义分割网络对原始图像进行分割,以得到语义分割结果;所述语义分割结果包含所述原始图像的各个分割区域以及利用与所述分割区域对应的像素标签对所述分割区域中的每个像素点进行标注后得到的标签信息;
基于所述语义分割结果,对所述原始图像进行预处理,得到各个分割区域图像。
可选的,所述基于所述语义分割结果,对所述原始图像进行预处理,得到各个分割区域图像,包括:
获取所述语义分割结果中的各个所述分割区域的外接封闭线条;
在所述原始图像中提取与所述外接封闭线条外接的所述分割区域的像素点,以得到目标像素点;
创建与所述封闭区域一致的白色画布并将所述目标像素点绘制在所述白色画布中,以得到各个分割区域图像。
可选的,所述创建与所述封闭区域一致的白色画布并将所述目标像素点绘制在所述白色画布中之后,还包括:
若所述白色画布不是正方形画布,则利用白色像素点对所述白色画布进行补齐,以使得补齐后的所述白色画布为正方形画布。
可选的,所述将所述分割区域图像输入至训练后的颜色识别模型之前,还包括:
获取样本区域图像,确定所述样本区域图像的rgb值,并利用所述样本区域图像的rgb值对所述样本区域图像进行标注,以得到训练集;
利用所述训练集对基于卷积神经网络构建的空白模型进行训练,以得到所述颜色识别模型;其中,所述卷积神经网络包括四层卷积层、三层全连接层,损失函数为欧式距离损失函数。
可选的,所述确定所述样本区域图像的rgb值,包括:
通过人机交互界面上的预设选取接口,从所述样本区域图像中选取若干主颜色像素点,并确定所述若干主颜色像素点的rgb值;
计算所述若干主颜色像素点的rgb值的平均值,以得到所述样本区域图像的rgb值。
可选的,所述基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别,包括:
将所述颜色识别模型输出的所述分割区域图像的rgb值转换为对应的hsv颜色空间值;
根据hsv基准颜色确定所述hsv颜色空间值对应的颜色类别,以得到所述分割区域图像的主颜色类别。
可选的,所述根据hsv基准颜色确定所述hsv颜色空间值对应的颜色类别之前,还包括:
确定hsv颜色空间值的预设取值范围,并根据所述hsv颜色空间值的预设取值范围确定所述hsv基准颜色。
本申请的第二方面提供了一种颜色识别装置,包括:
分割模块,用于利用分割算法对原始图像进行分割,得到各个分割区域图像;
识别模块,用于将所述分割区域图像输入至训练后的颜色识别模型;其中,所述颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练后得到的模型,所述训练集包括样本区域图像和相应的样本标签,所述样本标签为基于从所述样本区域图像上筛选的若干像素点对应的rgb值确定得到;
确定模块,用于基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别。
本申请的第三方面提供了一种电子设备,所述电子设备包括处理器和存储器;其中所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现前述颜色识别方法。
本申请的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现前述颜色识别方法。
本申请中,首先利用分割算法对原始图像进行分割,得到各个分割区域图像;然后将分割区域图像输入至颜色识别模型;其中,颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练得到的模型,训练集包括样本区域图像和相应的样本标签,样本标签为基于从样本区域图像上筛选的若干像素点对应的rgb值确定得到;最后基于颜色识别模型输出的分割区域图像的rgb值,以确定分割区域图像的主颜色类别。本申请通过对原始图像进行分割,精确定位目标对象,降低了颜色识别难度,并利用将rgb值作为样本标签的颜色识别模型对分割区域图像的rgb值进行预测,减少了人为主观标注颜色标签产生的误差,提高了识别准确度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种颜色识别方法流程图;
图2为本申请提供的具体的分割区域图像;
图3为本申请提供的一种具体的颜色识别方法示意图;
图4为本申请提供的一种语义分割结果图和效果图;
图5为本申请提供的根据语义分割结果得到的各个分割区域的外接矩形;
图6为本申请提供的一种具体的颜色识别方法流程图;
图7为本申请提供的一种取色工具;
图8为本申请提供的颜色识别模型输出的rgb值对应的颜色类别与给定的标签对应的颜色类别的对比图;
图9为本申请提供的颜色识别模型输出的rgb值对应的颜色类别图;
图10为本申请提供的一种具体的颜色识别方法流程图;
图11为本申请提供的一种hsv调色工具;
图12为本申请提供的一种颜色识别装置结构示意图;
图13为本申请提供的一种颜色识别电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本申请实施例提供的一种颜色识别方法流程图。参见图1所示,该颜色识别方法包括:
s11:利用分割算法对原始图像进行分割,得到各个分割区域图像。
本实施例中,在得到原始图像后,为了对所述原始图像中的不同区域的目标对象进行准确定位,首先需要对原始图像进行分割处理,将图像划分成互不相交的区域,可以采用传统的图切割方法,但更多的是利用深度学习算法对所述原始图像进行分割,本实施例通过卷积神经网络(cnn,convolutionalneuralnetwork)对所述原始图像进行分割,以得到所述原始图像的分割结果,基于所述分割结果中不同分割区域的位置,在原始图像上获取所述分割区域的像素点得到各个分割区域图像。不难理解,每一个所述分割区域图像上包含所述原始图像上单独一个区域的像素点,如图2所示,图2(b)是图2(a)经过分割后得到的分割区域图像,分别对应图2(a)中的上衣、书包、雨伞、行李箱、下衣和鞋子。
s12:将所述分割区域图像输入至训练后的颜色识别模型;其中,所述颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练后得到的模型,所述训练集包括样本区域图像和相应的样本标签,所述样本标签为基于从所述样本区域图像上筛选的若干像素点对应的rgb值确定得到。
本实施例中,利用颜色识别模型预测并输出所述分割区域图像的rgb值,所述颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练后得到的模型,所述机器学习算法可以是包括用svm(supportvectormachine,支持向量机)算法、gbdt(gradientboostingdecisiontree,梯度提升迭代决策树)算法、rf(randomforest,随机森林)算法等在内的传统的机器学习算法,也可以为cnn算法、rnn(recurrentneuralnetworks,循环神经网络)算法等的深度学习算法。不难理解的是,深层次的卷积神经网络可以在海量的训练数据中自动提取和学习图像中更本质的特征,将深度卷积神经网络应用于图像型颜色识别技术,将显著增强分类效果,并进一步提升颜色识别的准确性。另一方面,本实施例中对所述颜色识别模型进行训练的训练集包括样本区域图像和相应的样本标签,所述样本标签为基于从所述样本区域图像上筛选的若干像素点对应的rgb值确定得到,也即所述训练集是利用所述样本区域图像的rgb值对所述样本区域图像进行标注后得到的图像,其中,所述样本区域图像的rgb值可以由所述样本区域图像上的若干像素点对应的rgb值确定。
需要说明的是,所述样本区域图像可以为对所述原始图像进行分割后得到的所述分割区域图像,如图2(b)所示的图像,也可以在所述原始图像上截取鞋子图像、书包图像、雨伞图像等,将截取到的各部分图像作为所述样本区域图像,当然也可以从网络上下载识别对象的不同部位的图像作为所述样本区域图像,但需要注意的是,为了减少背景的干扰,提高颜色识别的准确度,获取到的网络图像的背景最好为纯白色或者灰色,所述网络图像的尺寸应尽量符合用于训练的颜色模型对训练图像的尺寸要求,避免在将所述网络图像输入至所述基于机器学习算法构建的空白模型进行训练时,对所述网络图像进行缩放处理产生形变,图像形变会导致主颜色占比变小成为次要颜色,使得对所述网络图像进行标注时对主颜色判断产生误判,从而影响训练后得到的所述颜色识别模型进行颜色识别时的准确度。
s13:基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别。
本实施例中,所述颜色识别模型对所述分割区域图像的rgb值进行预测并输出,根据所述颜色识别模型输出的所述分割区域图像的rgb值,就能确定出所述分割区域图像的主颜色类别。进一步的,根据所述分割区域图像的主颜色类别也可以确定所述原始图像的颜色类别,所述原始图像包括各个所述分割区域图像,所述原始图像的颜色类别包括各个所述分割区域图像的主颜色类别,可以将各个所述分割区域图像的主颜色类别中占比最高的主颜色类别作为所述原始图像的主颜色类别。
可见,本申请实施例首先利用分割算法对原始图像进行分割,得到各个分割区域图像;然后将分割区域图像输入至颜色识别模型;其中,颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练得到的模型,训练集包括样本区域图像和相应的样本标签,样本标签为基于从样本区域图像上筛选的若干像素点对应的rgb值确定得到;最后基于颜色识别模型输出的分割区域图像的rgb值,以确定分割区域图像的主颜色类别。本申请通过对原始图像进行分割,精确定位目标对象,降低了颜色识别难度,并利用将rgb值作为样本标签的颜色识别模型对分割区域图像的rgb值进行预测,减少了人为主观标注颜色标签产生的误差,提高了识别准确度。
图3为本申请实施例提供的一种具体的颜色识别方法流程图。参见图3所示,该颜色识别方法包括:
s21:利用语义分割网络对原始图像进行分割,以得到语义分割结果;所述语义分割结果包含所述原始图像的各个分割区域以及利用与所述分割区域对应的像素标签对所述分割区域中的每个像素点进行标注后得到的标签信息。
本实施例中,利用语义分割网络对原始图像进行分割,也即对所述原始图像进行语义分割,以得到所述原始图像的语义分割结果,本实施例对所述语义分割网络不进行限定,例如可以为u-net网络、jppnet网络等。所述语义分割结果包含所述原始图像的各个分割区域以及利用与所述分割区域对应的像素标签对所述分割区域中的每个像素点进行标注后得到的标签信息,其中,所述像素标签为与所述分割区域对应的灰度值,同一个分割区域图像中的每个像素点的标签信息是一致的,由于利用灰度值对所述分割区域中的每个像素点进行标注后得到的语义分割结果从视觉上显示不明显,所以也可以将对应的灰度值替换成不同的像素值,以得到语义分割效果图,所述语义分割效果图使得各个区域的区分在视觉上显示更加明显,更容易区分所述原始图像的不同的区域,不难理解的,用像素值进行标注时,相同的所述分割区域中对每个像素点进行标注的像素值是一致的。图4(c)所示为利用u-net网络对图4(a)进行语义分割后,并利用不同的像素值对所述分割区域中的每个像素点进行标注得到的语义分割效果图,图4(b)所示为对图4(a)进行语义分割后的语义分割结果图。
s22:获取所述语义分割结果中的各个所述分割区域的外接封闭线条。
s23:在所述原始图像中提取与所述外接封闭线条外接的所述分割区域的像素点,以得到目标像素点。。
s24:创建与所述封闭区域一致的白色画布并将所述目标像素点绘制在所述白色画布中,以得到各个分割区域图像。
本实施例中,获取到所述原始图像的各个分割区域并利用与所述分割区域对应的像素标签对所述分割区域中的每个像素点进行标注后,也即所述原始图像的语义分割结果,为了进一步得到分割区域图像,需要在所述原始图像中提取出各个所述分割区域图像的像素点。首先需要获取所述语义分割结果中的各个所述分割区域的外接封闭线条,需要强调的是,所述外接线条必须是封闭的,所述外接封闭线条的形状可以为正方形、长方形或者不规则多边形等,如图5(b)所示为在图5(a)的语义分割结果中获取各个分割区域的外接矩形,所述外接矩形由每个分割区域中所有的像素的分布计算得出。在获取到所述语义分割结果中各个所述分割区域的所述外接封闭线条后,相应的可以在所述原始图像中的特定区域获取到相同的外接封闭线条,在所述原始图像中提取与所述外接封闭线条外接的所述分割区域的像素点,以得到目标像素点,也即在所述原始图像的封闭线条中提取出目标坐标的像素点,其中所述目标坐标为在所述语义分割结果中与所述外接封闭线条外接的所述分割区域的坐标,不难理解,所述目标像素点即为所述分割区域对应的像素点,所述像素点构成所述原始图像中的各个区域。在提取到各个所述分割区域的目标像素点后,对照各个所述外接封闭线条的形状及尺寸,创建与所述外接封闭线条的形状和尺寸一致的白色画布,所述画布为白色是为了减少背景干扰,提高颜色识别准确度。然后将所述分割区域的目标像素点绘制在对应的所述白色画布中,以得到各个分割区域图像。
s25:若所述白色画布不是正方形画布,则利用白色像素点对所述白色画布进行补齐,以使得补齐后的所述白色画布为正方形画布。
本实施例中,上述步骤获取到的所述各个分割区域图像的形状和尺寸不固定,随对应的所述外接封闭线条的形状和尺寸的变化而变化,但不同颜色识别模型对输入图像的大小有相应的限制,当输入的所述分割区域图像大小不符合所述颜色识别模型的要求时,后期预测过程可能会对所述分割区域图像进行缩放变形处理,使得颜色预测的准确度降低。另外在利用所述分割区域图像对所述颜色识别模型进行训练时由于形变可能导致主颜色占比变小成为次要颜色,使得卷积神经网络对主颜色的识别难度加大。然而当所述分割区域的所述外接封闭线条为正方形时,相应的所述白色画布为正方形,正方形的图像在缩放使不会使得图像的主次颜色占比发生较大变化,因此,当上述步骤获取到的所述分割区域图像不是正方形时,也即对应的白色画布不是正方形,同时为了保证画布背景为白色,减少背景颜色的干扰,本实施例利用白色像素点对不是正方形的所述白色画布进行补齐,使得补齐后的白色画布为正方形画布,例如可以将长方形的白色画布进行补边处理后得到正方形的白色画布,所述补边处理也即本实施例中所述补齐操作的一种类型。
s26:将所述分割区域图像输入至训练后的颜色识别模型;其中,所述颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练后得到的模型,所述训练集包括样本区域图像和相应的样本标签,所述样本标签为基于从所述样本区域图像上筛选的若干像素点对应的rgb值确定得到。
s27:基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别。
本实施例中,步骤s26和s27的具体过程可以参考前述实施例公开的相应内容,在此不再进行赘述。
可见,本申请实施例通过语义分割网络获得所述原始图像的各个分割区域及利用利用与所述分割区域对应的像素标签对所述分割区域中的每个像素点进行标注后得到的标签信息,然后利用所述分割区域的外接封闭线条及相应的标签信息在所述原始图像上提取所述分割区域对应的像素点并创建画布以获取背景为白色的分割区域图像,减少了背景的干扰,使进一步的当所述画布不是正方形时通过补齐操作使得所述画布为正方形,以得到正方形的分割区域图像,避免在颜色识别过程中由于缩放产生的形变降低颜色识别的准确度。
图6为本申请实施例提供的一种具体的颜色识别方法流程图。参见图6所示,该颜色识别方法包括:
s31:利用分割算法对原始图像进行分割,得到各个分割区域图像。
本实施例中,关于上述步骤s31的具体过程,可以参考前述实施例中公开的相应内容,在此不再进行赘述。
s32:获取样本区域图像,通过人机交互界面上的预设选取接口,从所述样本区域图像中选取若干主颜色像素点,并确定所述若干主颜色像素点的rgb值。
s33:计算所述若干主颜色像素点的rgb值的平均值,以得到所述样本区域图像的rgb值。
本实施例中,所述样本区域图像可以是利用所述分割算法对不同图像进行分割得到的各个分割区域图像,也可以是满足一定条件的网络图像,具体参考前述实施例中公开的相应内容,在此不再进行赘述。本实施例中所述样本区域图像的标签为对应的rgb值,因此需要通过人机交互界面上的预设选取接口选取所述样本区域图像中的像素点的rgb值,当所述样本区域图像为纯色时,所有像素点的rgb值都是一样的,可以仅选取任一像素点并将该像素点的rgb值作为所述样本区域图像的rgb值,但由于所述样本区域图像往往不会是纯色,例如渐变色等,不同像素点的rgb值不一定相同,为了使得得到的rgb值更加接近所述样本区域图像的rgb值,需要通过人机交互界面上的预设选取接口,从所述样本区域图像中选取若干主颜色像素点,所述主颜色像素点为最能代表所述样本区域图像颜色之一的颜色,然后计算所述若干主颜色像素点的rgb值的平均值,将所述平均值作为所述样本区域图像的rgb值。如图7所示,利用3个取色器对给定图像中的像素点进行选取,得到3个不同的rgb值,最终取色中显示的rgb值是上述3个不同的rgb值的平均值。
s34:利用所述样本区域图像的rgb值对所述样本区域图像进行标注,以得到训练集,并利用所述训练集对基于卷积神经网络构建的空白模型进行训练,以得到所述颜色识别模型;其中,所述卷积神经网络包括四层卷积层、三层全连接层,损失函数为欧式距离损失函数。
本实施例中,利用所述样本区域图像的rgb值对所述样本区域图像进行标注,传统依赖人为主观标注颜色标签的方法,在需要预测的颜色较多时需要改变所述颜色识别模型输出的颜色类别数并重新训练,上述步骤不需要人为判断颜色类别,减少人为标定的误差,得到的训练集质量较高,训练出的颜色识别模型的识别效率较高,拓展性好,有较强的鲁棒性。本实施例基于卷积神经网络构建的空白模型生成所述颜色识别模型,所述卷积神经网络由四层卷积层和三层全连接层组成,损失函数为欧式距离损失函数。另外,对输入到所述颜色识别模型中的图像的尺寸也可以做相应的约束,如可以设置为96*96。图8和图9是利用本实施例构建的颜色识别模型对输入图像进行颜色识别的结果,图8中,左下角的方块是标签对应的颜色类别,右下角的方块是所述颜色识别模型输出的rgb值所对应的颜色类别,可以看出,所述颜色识别模型输出的rgb值所对应的颜色类别与人眼主观看到的基本一致。
s35:将所述分割区域图像输入至训练后的所述颜色识别模型。
s36:基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别。
本实施例中,关于上述步骤s35和步骤s36的具体过程,可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本申请实施例通过人机交互界面上的预设选取接口获取所述样本区域图像中的若干主颜色像素点,并计算所述若干主颜色像素点的rgb值的平均值,以得到平均rgb值,将所述平均rgb值作为所述分割区域图像的标签来构建用于对基于卷及神经网络构建的空白模型进行训练的训练集。上述方法减少人为标定颜色类别的误差,得到的训练集质量较高,训练出的颜色识别模型的识别效率也较高。
图10为本申请实施例提供的一种具体的颜色识别方法流程图。参见图10所示,该颜色识别方法包括:
s41:利用分割算法对原始图像进行分割,得到各个分割区域图像。
s42:将所述分割区域图像输入至训练后的颜色识别模型;其中,所述颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练后得到的模型,所述训练集包括样本区域图像和相应的样本标签,所述样本标签为基于从所述样本区域图像上筛选的若干像素点对应的rgb值确定得到。
本实施例中,关于上述步骤s41和步骤s42的具体过程,可以参考前述实施例中公开的相应内容,在此不再进行赘述。
s43:将所述颜色识别模型输出的所述分割区域图像的rgb值转换为对应的hsv颜色空间值。
s44:根据hsv基准颜色确定所述hsv颜色空间值对应的颜色类别,以得到所述分割区域图像的主颜色类别。
本实施例中,通过利用所述颜色识别模型预测所述分割区域图像的rgb值后直观判定所述rgb值对应的颜色类别较复杂,而通过hsv颜色空间值判定相应的颜色类别更容易实现,颜色类别可根据h(色调)、s(饱和度)、v(亮度)的取值范围确定。因此获取到所述颜色识别模型输出的所述分割区域图像的rgb值后转换为对应的hsv颜色空间值,利用hsv颜色空间值的取值范围确定所述分割区域图像的颜色类别。进一步的,在具体业务中,需要识别的颜色类别多种多样,在根据hsv基准颜色确定所述hsv颜色空间值对应的颜色类别之前,需要根据业务需求通过实验来确定hsv颜色空间值的预设取值范围,并根据所述hsv颜色空间值的预设取值范围确定所述hsv基准颜色。图11所示为本实施例提供的一个hsv调色工具,方便确定hsv取值范围。需要说明的是,将rgb值转换为对应的hsv颜色空间值的方法有很多,可以参考现有技术中公开的相关内容,本实施例对此不进行限定。
可见,本申请实施例在得到所述颜色识别模型输出的所述分割区域图像的rgb值后转换为对应的hsv颜色空间值,根据hsv基准颜色确定所述hsv颜色空间值对应的颜色类别,以对所述分割区域图像的主颜色类别进行识别,上述方法简化了确定所述分割区域图像的颜色类别的难度,提高了颜色类别的识别效率。
参见图12所示,本申请实施例还相应公开了一种颜色识别装置,包括:
分割模块11,用于利用分割算法对原始图像进行分割,得到各个分割区域图像;
识别模块12,用于将所述分割区域图像输入至训练后的颜色识别模型;其中,所述颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练后得到的模型,所述训练集包括样本区域图像和相应的样本标签,所述样本标签为基于从所述样本区域图像上筛选的若干像素点对应的rgb值确定得到;
确认模块13,用于基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别。
可见,本申请实施例首先利用分割算法对原始图像进行分割,得到各个分割区域图像;然后将分割区域图像输入至颜色识别模型;其中,颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练得到的模型,训练集包括样本区域图像和相应的样本标签,样本标签为基于从样本区域图像上筛选的若干像素点对应的rgb值确定得到;最后基于颜色识别模型输出的分割区域图像的rgb值,以确定分割区域图像的主颜色类别。本申请通过对原始图像进行分割,精确定位目标对象,降低了颜色识别难度,并利用将rgb值作为样本标签的颜色识别模型对分割区域图像的rgb值进行预测,减少了人为主观标注颜色标签产生的误差,提高了识别准确度。
在一些具体实施例中,所述分割模块11,具体包括:
语义分割单元,用于利用语义分割网络对原始图像进行分割,以得到语义分割结果;所述语义分割结果包含所述原始图像的各个分割区域以及利用与所述分割区域对应的像素标签对所述分割区域中的每个像素点进行标注后得到的标签信息;
预处理单元,用于基于所述语义分割结果,对所述原始图像进行预处理,得到各个分割区域图像。
在一些具体实施例中,所述识别模块12,具体包括:
训练集获取单元,用于获取样本区域图像,确定所述样本区域图像的rgb值;利用所述样本区域图像的rgb值对所述样本区域图像进行标注,以得到所述训练集;
训练单元,用于利用所述训练集对基于卷积神经网络构建的空白模型进行训练,以得到所述颜色识别模型;其中,所述卷积神经网络包括四层卷积层、三层全连接层,损失函数为欧式距离损失函数。
预测单元,用于将所述分割区域图像输入至训练后的所述颜色识别模型。
在一些具体实施例中,所述确认模块13,具体包括:
转换单元,用于将所述颜色识别模型输出的所述分割区域图像的rgb值转换为对应的hsv颜色空间值;
确定单元,用于根据hsv基准颜色确定所述hsv颜色空间值对应的颜色类别,以得到所述分割区域图像的主颜色类别。
进一步的,本申请实施例还提供了一种电子设备。图13是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图13为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的颜色识别方法中的相关步骤。另外,本实施例中的电子设备20具体可以为服务器。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222及图像数据223等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量图像数据223的运算与处理,其可以是windowsserver、netware、unix、linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的颜色识别方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据223可以包括电子设备20收集到的原始图像、分割区域图像。
进一步的,本申请实施例还公开了一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现前述任一实施例公开的颜色识别方法步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的颜色识别方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
1.一种颜色识别方法,其特征在于,包括:
利用分割算法对原始图像进行分割,得到各个分割区域图像;
将所述分割区域图像输入至训练后的颜色识别模型;其中,所述颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练后得到的模型,所述训练集包括样本区域图像和相应的样本标签,所述样本标签为基于从所述样本区域图像上筛选的若干像素点对应的rgb值确定得到;
基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别。
2.根据权利要求1所述的颜色识别方法,其特征在于,所述利用分割算法对原始图像进行分割,得到各个分割区域图像,包括:
利用语义分割网络对原始图像进行分割,以得到语义分割结果;所述语义分割结果包含所述原始图像的各个分割区域以及利用与所述分割区域对应的像素标签对所述分割区域中的每个像素点进行标注后得到的标签信息;
基于所述语义分割结果,对所述原始图像进行预处理,得到各个分割区域图像。
3.根据权利要求2所述的颜色识别方法,其特征在于,所述基于所述语义分割结果,对所述原始图像进行预处理,得到各个分割区域图像,包括:
获取所述语义分割结果中的各个所述分割区域的外接封闭线条;
在所述原始图像中提取与所述外接封闭线条外接的所述分割区域的像素点,以得到目标像素点;
创建与所述封闭区域一致的白色画布并将所述目标像素点绘制在所述白色画布中,以得到各个分割区域图像。
4.根据权利要求3所述的颜色识别方法,其特征在于,所述创建与所述封闭区域一致的白色画布并将所述目标像素点绘制在所述白色画布中之后,还包括:
若所述白色画布不是正方形画布,则利用白色像素点对所述白色画布进行补齐,以使得补齐后的所述白色画布为正方形画布。
5.根据权利要求1所述的颜色识别方法,其特征在于,所述将所述分割区域图像输入至训练后的颜色识别模型之前,还包括:
获取样本区域图像,确定所述样本区域图像的rgb值,并利用所述样本区域图像的rgb值对所述样本区域图像进行标注,以得到训练集;
利用所述训练集对基于卷积神经网络构建的空白模型进行训练,以得到所述颜色识别模型;其中,所述卷积神经网络包括四层卷积层、三层全连接层,损失函数为欧式距离损失函数。
6.根据权利要求5所述的颜色识别方法,其特征在于,所述确定所述样本区域图像的rgb值,包括:
通过人机交互界面上的预设选取接口,从所述样本区域图像中选取若干主颜色像素点,并确定所述若干主颜色像素点的rgb值;
计算所述若干主颜色像素点的rgb值的平均值,以得到所述样本区域图像的rgb值。
7.根据权利要求1-6任一项所述的颜色识别方法,其特征在于,所述基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别,包括:
将所述颜色识别模型输出的所述分割区域图像的rgb值转换为对应的hsv颜色空间值;
根据hsv基准颜色确定所述hsv颜色空间值对应的颜色类别,以得到所述分割区域图像的主颜色类别。
8.一种颜色识别装置,其特征在于,包括:
分割模块,用于利用分割算法对原始图像进行分割,得到各个分割区域图像;
识别模块,用于将所述分割区域图像输入至训练后的颜色识别模型;其中,所述颜色识别模型为利用训练集对基于机器学习算法构建的空白模型进行训练后得到的模型,所述训练集包括样本区域图像和相应的样本标签,所述样本标签为基于从所述样本区域图像上筛选的若干像素点对应的rgb值确定得到;
确定模块,用于基于所述颜色识别模型输出的所述分割区域图像的rgb值,以确定所述分割区域图像的主颜色类别。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器;其中所述存储器用于存储计算机程序,所述计算机程序由所述处理器加载并执行以实现如权利要求1至7任一项所述的颜色识别方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如权利要求1至7任一项所述的颜色识别方法。
技术总结