一种图像中目标物体的主颜色识别方法与流程

文档序号:11287339阅读:893来源:国知局
一种图像中目标物体的主颜色识别方法与流程

本发明涉及图像识别领域,特别是涉及一种图像中目标物体的主颜色识别方法。



背景技术:

颜色是目标物体自身的一个主要属性,它是机器和人类区别不同目标物体的主要因素之一。识别图像中目标物体的颜色,可以用来更精确的区分同类别物体,还可以应用在机器学习中的数据准备过程中,大幅提升数据标注的速度,节省人工标注的时间和人力成本。按照材料是否能够抵抗变形,可以将目标物体分为刚性物体和柔性物体两种。对于目标物体,特别是对于由多种材质、多种元素构成的柔性物体而言,一方面由于目标物体或者其背景自身颜色丰富的特点导致目标物体在图像中会呈现出多种颜色;另一方面,目标物体的颜色受物体自身形变、周围环境光、图像拍摄角度、相机曝光参数等因素的影响也很大,即使是同一种颜色在图像中也会呈现出多种在视觉上有差别的颜色。另外,颜色空间巨大,颜色值数量十分丰富,真实环境里颜色值分布很分散等特点也给目标物体的主颜色的识别和标注带来很大困难。

图像中目标物体主颜色的识别是指对于给定的一组图像序列,提取出图像序列中每张图像内目标物体的主要颜色信息并在某特定的颜色空间中指定其所属的颜色类别,其中目标物体的主要颜色是指目标物体中像素数量占比最大的颜色。特别说明,图像的感兴趣区域是指图像中目标物体所在的区域,该区域可通过人工或机器检测定位出来。

目前,现有的主颜色识别与标注方法可以分为人工标注、八叉树归并法和颜色距离匹配法三种方法,下面将对现有方法进行详细介绍:

1人工标注;

人工标注是指借助人的识别能力,通过人工标注系统由标注人员人工指定目标物体所属的颜色类别。该方法的核心思想是,事先通过人工大概统计待标注图像序列中目标物体的颜色属性的数量分布,从中选择数种常见的颜色类别作为待选颜色类别;标注过程中由标注系统将每张图像的感兴趣区域的缩略图展现给标注人员,由标注人员通过主观判断,从上述确定的待选颜色类别中选择与图像中目标物体主颜色最为相近的颜色类别作为该目标物体的主颜色类别。该方法在小规模的数据集和颜色区分度大数据集上尚可接受,但是由于完全由人工操作,在现今的大数据环境下毫无疑问存在以下缺点:

(1)数据规模大的时候,人工标注周期长、成本高;

(2)需要事先知道待标注数据集中目标物体的颜色分布,对数据本身以及标注前的准备工作要求过高;统计的失误会大大影响标注的质量;

(3)容易出现标注错误。当图像缩小到很小的时候,人工标注很容易受图像中目标物体周围的背景颜色的影响,而误把不是目标物体主颜色的颜色标注为目标物体的主颜色。

(4)标注的标准不一,结果可能存在互相矛盾。当图像目标物体包含多种颜色的时候,标注人员很难确定主颜色是哪一种;即便是颜色单一的物体,不同的人标注的结果也可能不一样。整个标注过程中标注人员的主观性较大,标注结果不可控。

2八叉树归并法

该方法的主要思路是首先选取好数据集要标注的颜色种类的准确数目。然后对于每一张图像,通过一定的方法定位出目标物体所在的大致区域,通过计算这块图像区域在rgb空间的颜色直方图,将出现频率最高的颜色作为图像中目标物体的主颜色。仅仅考虑颜色粒度为256*256*256的rgb空间,就有16777216种颜色值,这样标注出来的主颜色在如此大的颜色空间中的分布显然会很稀疏。为了给颜色指定颜色类别,该方法利用八叉树的特性,将所有图像的主颜色在八叉树中自下而上进行归并,直到最后的颜色类别数量趋近目标颜色类别数量为止。这样每个颜色在八叉树中自下而上都可以找到一个属于自己的颜色类别。

该方法主要优点是思路简洁,易于实现。但是存在以下缺点:

(1)主颜色类别标注的标准和数据集相关。在八叉树中进行颜色归并的时候,不能事前确定颜色的类别,只有等到归并完成后才能确定。于是颜色的类别就与数据集的颜色的分布密切相关,即使是同一标注任务不同批次数据集的颜色类别划分的标准也全然不同。

(2)相同类别不同批次的标注结果不能简单合并。由于主颜色类别与数据集相关,不同批次的数据集的颜色标注结果不能直接合并。要想合并数据集,就需要重新把所有的数据标注一遍,这给数据集的增量扩充带来很多不便。

(3)八叉树容易造成颜色类别的粒度不均匀。当数据集中某一类颜色出现的频率很高时,这类颜色粒度会被划分得很细;而出现频率不高的颜色粒度则被划分得很粗,导致同一图像在不同数据集的标注结果差异很大。

3颜色距离匹配法

颜色距离匹配法的主要思路如下:首先选取一些常见的颜色类别作为待选颜色,然后对于每一张图像,定位出目标物体大致的位置,在某特定颜色空间中,计算出该目标物体的颜色直方图,将出现频率最高的颜色作为该物体的主颜色类别。之后在某一特定颜色空间中,计算物体的主颜色与事先选好的每一个颜色类别之间的颜色距离作为分数,取分数最小的颜色类别作为该物体的主颜色的类别。

该算法的标准统一,不同数据集的标注结果可以通用,很方便数据集标注结果的融合。但是存在以下缺点:

(1)颜色空间中颜色跳变区域的颜色的类别容易指定出错。虽然颜色空间中的相近的颜色之间的距离确实很小,但实际上在任何颜色空间里,颜色距离小并不能得出颜色相似的结论。任意两个颜色的距离由于没有考虑颜色空间整体的分布,使得在一些临界条件下,比如颜色突变区域,通过小距离选取的颜色类别与实际主颜色相差甚远。

(2)颜色类别的数量、覆盖度和粒度均不易事先确定。人工在确定待标注颜色类别时,存在较大的主观性,极其容易出现颜色分布不全,颜色粒度不均匀等问题。

简而言之,现有的复杂目标物体的主颜色识别技术存在一些不可回避的缺点。复杂目标物体的主颜色识别问题的特点是颜色空间巨大但是数据集图像颜色分布不确定,图像中的目标物体颜色种类复杂且目标物体所在区域的主颜色和非主颜色分布不确定,图像光照变化多样,主颜色的标注颜色类别不易确定等。

聚类算法是对于统计数据分析的一门技术,在许多领域受到广泛应用。聚类是以相似性为基础,把相似的对象通过静态分类的方法分成不同的组别或者更多的子集,这样让在同一个子集中的成员对象都有相似的一些属性。目前聚类算法在图像的颜色量化上有应用,比如将图像的像素聚集为若干个类别。

卷积神经网络是一种前馈神经网络,网络中的人工神经元可以响应周围单元,主要包括卷积层和池化层,拥有很好的非线性拟合能力,目前在物体检测、分类和识别中拥有广泛的应用。



技术实现要素:

本发明的目的是为克服已有技术的不足之处,提出一种图像中目标物体的主颜色识别方法。该方法与现有方法相比具有良好的易用性,在颜色识别的准确度、颜色标注的可扩展性以及整体的效率上都有很大的提升。

本发明提出的一种图像中目标物体的主颜色识别方法,其特征在于,包括以下步骤:

1)生成颜色映射表;具体步骤如下:

1-1)根据对颜色敏感程度的要求,确定rgb颜色空间颜色值划分的类别数x,其中0<x<16777216,16777216为rgb颜色空间中颜色值的总数;

1-2)将rgb颜色空间16777216个颜色值利用聚类方法聚为x个不同的颜色类别;

1-3)根据步骤1-2)聚类的结果,将聚类后x个颜色类别中每个类别包含的颜色值和各个类别的名称进行一一映射,生成一组16777216个颜色值到x个颜色类别的不完全映射关系,生成颜色值与颜色类别的颜色映射表ω;

2)选出指定数据集中的任意一张图像,定位出目标物体在图像中的区域,即目标物体所在的区域;

3)将步骤2)中确定的目标物体所在的区域的图像通过颜色空间转换方法转换到hsv空间,通过聚类算法聚得c个颜色类别后再将该图像转换回rgb空间,其中c代表目标物体的颜色种类,0<c≤16;

4)对于步骤3)聚类完成的图像,根据目标物体处在步骤2)中确定的目标物体所在区域内的位置分布的统计规律,为目标物体所在的区域中每个不同位置(x,y)的像素点赋予相应的不同权重f(x,y);

5)对步骤3)聚类完成的图像的像素点进行遍历,根据颜色值出现的频率和步骤4)中对每个像素点赋予的权重,计算得到一个含有c个矩形的目标物体所在区域的加权颜色直方图,每个矩形分别对应步骤3)聚类得到的一个颜色类别;对加权颜色直方图进行计算,取直方图中最高矩形对应的颜色作为识别得到的当前图像目标物体的主颜色ω;

6)在步骤1)得到的颜色映射表ω中查找主颜色ω对应的颜色类别φ并记录结果;

7)重复步骤2)至步骤6),完成对指定数据集中的所有图像中目标物体的主颜色识别。

本发明的特点及有益效果在于:

1目标物体主颜色受颜色值失真和光照等外部因素的影响明显减少。将感兴趣区域的图像转换到了hsv空间再做处理,使得光照对图像的影响大大减小;使用聚类的方法使得图像上本来相同的颜色由于各种因素导致视觉上不同的像素也能聚在一起,成为一类颜色。

2目标物体的颜色更加突出。感兴趣区域可以分为目标物体分布密集和分布稀疏的部分,本发明通过给予在目标物体分布密集的区域内的颜色信息更高的重要度,使得在整个加权的颜色直方图里面,靠近目标物体分布密集的区域的颜色更加突出,亦即目标物体的颜色更突出。

3颜色粒度可控,覆盖面全。本发明可以根据实际的颜色标注的需求,设定不同的聚类的数目。聚类的数目越多,颜色的区分度越明显;聚类数目少的时候,每类也可以包含更多的相对更相近的颜色。不论颜色粒度如何,所有颜色类别都是覆盖完全整个颜色空间的。

4颜色类别的划分是颜色空间的最优解,划分客观,与数据集无关。划分颜色的种类的时候采用聚类的方法,考虑了颜色空间颜色之间的相互关系。聚类这样一个迭代的过程得到的是一种全局的最优解,使得每一簇聚在一起的颜色都比其他簇中聚在一起的颜色在视觉上更接近。这样的划分是依据颜色空间的客观存在,没有人为干预和不确定因素。

5具有良好的可扩展性,有利于数据集的分阶段的扩充。颜色类别划分标准一致,不同批次的标注结果在粒度相同的情况下可以直接合并,在粒度不同的时候也可以通过颜色类别的映射关系进行合并。

6标注效率高。整个标注的过程没有人工的参与,在对每张图像聚类数目x=8时,平均每张图像的标注只需要0.259s,测试平台为intelcorei7-4790cpu,centos7系统。多进程可以使得标注效率更高。

附图说明

图1是本发明方法的流程图。

图2是本发明实施例的效果示意图。

具体实施方式

本发明提出的一种图像中目标物体的主颜色识别方法,下面结合附图和具体实施例对本发明进一步详细说明如下。本发明所述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本发明提出的一种图像中目标物体的主颜色识别方法,流程如图1所示,该方法包括以下步骤:

1)生成颜色映射表;具体步骤如下:

1-1)根据对颜色敏感程度的要求,确定rgb颜色空间颜色值划分的类别数x,其中0<x<16777216,16777216为rgb颜色空间中颜色值的总数;

具体地,当对颜色敏感程度要求很高的时候,可以取x=10000,此时红色可以被分为深红和浅红等等不同颜色等级的类别;当对颜色敏感程度要求不高的时候,可以取x=500,主要是区分红色和绿色等。

1-2)将rgb颜色空间利用聚类方法聚为x个不同的颜色类别;

具体地,把rgb颜色空间总共256*256*256=16777216个颜色值进行聚类。聚类时,考虑聚类的速度和准确性,可以选取不同的聚类算法和选择不同的初始化簇中心的方法。本实施例选择kmeans算法,采用kmeansplusplus方法初始化聚类的簇中心,这样聚类得到的不同的颜色类别包含的颜色值数量很均匀。

1-3)根据步骤1-2)聚类的结果生成颜色值与颜色类别的颜色映射表ω;

具体地,根据聚类的结果,将聚类后x个颜色类别中每个类别包含的颜色值和各个类别的名称进行一一映射,生成一组16777216个颜色值到x个颜色类别的不完全映射关系。这样对于某一个颜色值,就可以通过映射关系得到该颜色值对应的颜色类别。

2)选出指定数据集中的任意一张图像,定位出目标物体在图像中的区域,即目标物体所处的感兴趣区域。指定数据集是指采用本方法进行颜色识别和标注的一组图片序列,数据集中图片数量不限;

具体地,目标物体所处感兴趣区域的定位方法可以采用现有的物体检测算法。本实施例使用基于深度卷积神经网络的物体检测算法,可以快速准确地定位到目标物体在图像中的位置。

3)将步骤2)中确定的目标物体所处的感兴趣区域的图像通过颜色空间转换方法转换到hsv空间,通过聚类算法聚得c个颜色类别后再将该图像转换回rgb空间,其中0<c≤16;

具体地,颜色空间转换方法可以采用现有的算法,本实施例颜色空间转换使用opencv的颜色空间转换算法。由于hsv空间将光照单独作为了一个通道,这样的转换大大减少了光照对图像的影响。考虑到一张图像所表达的颜色数目有限,我们选择聚类数c在1-16之间。若c太大,则不能起到将相近的颜色聚在一起的效果。通过将图像的感兴趣区域的颜色在hsv空间中进行聚类,区域内相近的颜色值聚在一起,聚为c个类。实际上这些相近的颜色值中很多像素本来就是同一颜色值,只是受到各种因素的影响导致颜色值在颜色空间发生微小的偏移而变成不同的颜色。我们通过聚类的方法大大减少了因为这些因素的影响导致的颜色信息错误和颜色信息杂乱的问题。

4)对于步骤3)聚类完成的图像,根据目标物体处在步骤2)中确定的感兴趣区域内的位置分布的统计规律,为感兴趣区域中每个不同位置(x,y)的像素点赋予相应的不同权重f(x,y)。

具体地,我们认为目标物体的颜色为感兴趣主颜色。目标物体的位置统计规律是指目标物体在感兴趣区域内的位置总体上的分布规律,可以通过基于统计的方法确定,不同的位置分布的统计规律对最后的识别和标注结果有不同的影响。本实施例中的位置分布的统计规律由人工确定后调整得来。由于本实施例中目标物体所在的感兴趣区域是由机器检测出来的,所以目标物体一般处于感兴趣区域中央,于是感兴趣主颜色主要分布在感兴趣区域的靠近中央的位置,换言之本实施例的目标物体的位置分布的统计规律为区域中央密集、四周稀疏。通过给位于感兴趣区域中央的像素点赋予更高的权重,给感兴趣区域边缘的像素点赋予更低的权重,使得感兴趣区域中目标物体的颜色值更加突出,大大减少了由于感兴趣区域边缘的颜色信息的影响导致物体主颜色的误标注。

5)对步骤3)聚类完成的图像的像素点进行遍历,考虑颜色值出现的频率和步骤4)对每个像素点赋予的权重,计算得到一个含有c个矩形的感兴趣区域的加权颜色直方图,每个矩形分别对应步骤3)聚类得到的一个颜色类别;对加权颜色直方图进行计算,取直方图中最高矩形对应的颜色作为识别得到的当前图像目标物体的主颜色ω。

6)在步骤1)得到的颜色映射表ω中查找主颜色ω对应的颜色类别φ并记录结果。

具体地,通过步骤1)建立的映射关系表,可以直接找到目标物体的主颜色ω所对应的颜色类别φ。然后记录该图像的目标物体主颜色的颜色类别φ以及图像的目标物体的主颜色ω。记录其主颜色主要是考虑到后续的数据集合并的时候,当两个数据集的颜色粒度不同的时候,可以直接建立新的映射关系将图像的目标物体的主颜色映射到新的颜色粒度下的颜色类别。

7)重复步骤2)至步骤6),完成对指定数据集中的所有图像中目标物体的主颜色识别。

本发明的一个具体实施例,效果示意图如图2所示。本发明实施例的测试图片中目标物体所在区域(感兴趣区域)共有8个颜色类别,直方图中不同颜色的矩形指代不同的颜色类别,按照数量从高到低的顺序依次排列。图2(a)是经过步骤3)处理之后的实施例测试图像中感兴趣区域的颜色直方图,图2(a)中,矩形从高到低依次排列为颜色1至颜色8,此时的主颜色为颜色1;图2(b)是图2(a)的直方图经过步骤4)处理之后的加权颜色直方图,处理后,各个矩形从高到低的排列顺序变为:3-1-5-4-2-8-6-7,此时的主颜色为颜色3。从图中可以看出,实施例测试图片中真实的目标物体的主颜色在图2(a)中排在第3位,不被认为是目标物体的主颜色,识别错误;而真实的目标物体的主颜色在图2(b)中排在第1位,被认为是目标物体的主颜色,识别正确。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1