图像区域的划分方法及装置的制造方法

xiaoxiao2020-10-23  30

图像区域的划分方法及装置的制造方法
【技术领域】
[0001]本发明涉及图像处理领域,具体而言,涉及一种图像区域的划分方法及装置。
【背景技术】
[0002]现有技术对图像中的区域划分方法一般可以采用各种微分算子再结合阈值的方法来找到图像的区域。具体的,上述通过设定阈值再结合各种微分算子来划分图像区域的方法,由于这种方法对图像中的噪声一般比较敏感,因此,在划分区域的过程中容易受到图像中噪声的干扰,而且由于上述方法采用的阈值大小固定,因此,采用设定阈值再结合各种微分算子的方式对图像进行区域划分,得到的各个图像区域相对笼统,图像区域之间的层次不清楚,同时也无法解决颜色较平滑区域的分割问题。
[0003]另外,现有技术还可以采用图像区域增长和区域合并的方法,通过比较相邻区域的描述,例如,可以通过灰度特征统计得到两个区域的均值和方差等参数描述,如果计算得到两个区域匹配则合并成一个区域,并重新计算合并之后的区域参数,如果计算结果为两个区域不匹配则标记两个区域为不匹配,重复上述步骤,直至获取图像的所有子图像区域。该方案由于不能抑制特征不明显的小区域,因此,对于噪声的干扰也非常明显,例如,对于脸部图像中较光滑区域会导致划分不出区域。
[0004]针对上述相关技术的由于无法抑制特征不明显的图像区域,导致无法从图像中准确划分出平滑区域的问题,目前尚未提出有效的解决方案。

【发明内容】

[0005]本发明实施例提供了一种图像区域的划分方法及装置,以至少解决由于无法抑制特征不明显的图像区域,导致无法从图像中准确划分出平滑区域的技术问题。
[0006]根据本发明实施例的一个方面,提供了一种图像区域的划分方法,该方法包括:读取步骤:读取图像中当前像素点的像素值,以及与当前像素点相邻的多个相邻像素点的像素值;计算步骤:分别计算当前像素点与每个相邻像素点的像素值之差,得到像素差值集合,像素差值集合包括:多个像素差值;处理步骤:依次将每个像素差值分别与对应的动态阈值进行比较,确定与当前像素点在同一个子图像区域内的所有相邻像素点,其中,当前像素点及其在同一个子图像区域内的所有相邻像素点构成一个子图像区域;遍历步骤:遍历对图像中的各个像素点,依次对各个像素点执行上述读取步骤,计算步骤和处理步骤,获取图像的多个子图像区域。
[0007]根据本发明实施例的另一方面,还提供了一种图像区域的划分装置,该装置包括:读取模块,用于读取图像中当前像素点的像素值,以及与当前像素点相邻的多个相邻像素点的像素值;计算模块,用于分别计算当前像素点与每个相邻像素点的像素值之差,得到像素差值集合,像素差值集合包括:多个像素差值;处理模块,用于依次将每个像素差值分别与对应的动态阈值进行比较,确定与当前像素点在同一个子图像区域内的所有相邻像素点,其中,当前像素点及其在同一个子图像区域内的所有相邻像素点构成一个子图像区域;遍历模块,用于遍历对图像中的各个像素点,依次对各个像素点执行上述读取模块,计算模块和处理模块,获取图像的多个子图像区域。
[0008]在本发明实施例中,采用读取步骤:读取图像中当前像素点的像素值,以及与当前像素点相邻的多个相邻像素点的像素值;计算步骤:分别计算当前像素点与每个相邻像素点的像素值之差,得到像素差值集合,像素差值集合包括:多个像素差值;处理步骤:依次将每个像素差值分别与对应的动态阈值进行比较,确定与当前像素点在同一个子图像区域内的所有相邻像素点,其中,当前像素点及其在同一个子图像区域内的所有相邻像素点构成一个子图像区域;遍历步骤:遍历对图像中的各个像素点,依次对各个像素点执行上述读取步骤,计算步骤和处理步骤,获取图像的多个子图像区域的方式,通过读取图像中当前像素点及其相邻的任意数量的相邻像素点的像素值,来计算得到当前像素点与每个相邻像素点的像素差值,由于在将像素差值与阈值进行比较来确定子图像区域的过程中,阈值是动态变化的,即每个像素差值对应一个阈值,每个像素差值对应的阈值各不相同,由于为每个像素差值选择了一个特定的动态阈值进行比对计算,使得当前像素点与相邻像素点的区别程度更加明确,进而解决了由于无法抑制特征不明显的图像区域,导致无法从图像中准确划分出平滑区域的技术问题,达到了可以从图像中准确划分得到平滑区域的目的。
【附图说明】
[0009]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0010]图1是根据本发明实施例一的图像区域的划分方法的流程图;
[0011]图2是根据本发明实施例一的一种可选的图像区域的划分方法的详细流程图;
[0012]图3是根据本发明实施例一的另一种可选的图像区域的划分方法的详细流程图;
[0013]图4是根据本发明实施例一的又一种可选的图像区域的划分方法的详细流程图;
[0014]图5是根据本发明实施例一的图像区域的划分装置的结构示意图;
[0015]图6是根据本发明实施例一的一种可选的图像区域的划分装置的结构示意图;
[0016]图7是根据本发明实施例一的另一种可选的图像区域的划分装置的结构示意图;
[0017]图8是根据本发明实施例一的又一种可选的图像区域的划分装置的结构示意图。
【具体实施方式】
[0018]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
[0019]为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0020]需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0021]实施例1
[0022]根据本发明实施例,可以提供了一种可以用于实施本申请装置实施例的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0023]图1是根据本发明实施例一的图像区域的划分方法的流程图;图2是根据本发明实施例一的一种可选的图像区域的划分方法的详细流程图。
[0024]根据本发明实施例,提供了一种图像区域的划分方法,如图1所示,该方法可以包括如下步骤:
[0025]读取步骤SlO:读取图像中当前像素点的像素值,以及与当前像素点相邻的多个相邻像素点的像素值。
[0026]计算步骤S30:分别计算当前像素点与每个相邻像素点的像素值之差,得到像素差值集合,像素差值集合包括:多个像素差值。
[0027]处理步骤S50:依次将每个像素差值分别与对应的动态阈值进行比较,确定与当前像素点在同一个子图像区域内的所有相邻像素点,其中,当前像素点及其在同一个子图像区域内的所有相邻像素点构成一个子图像区域。
[0028]遍历步骤S70:遍历对图像中的各个像素点,依次对各个像素点执行上述读取步骤S10,计算步骤S30和处理步骤S50,获取图像的多个子图像区域。
[0029]本申请上述实施例一中,通过读取图像中当前像素点及其相邻的任意数量的相邻像素点的像素值,来计算得到当前像素点与每个相邻像素点的像素差值,由于在将像素差值与阈值进行比较来确定子图像区域的过程中,阈值是动态变化的,即每个像素差值对应一个阈值,每个像素差值对应的阈值各不相同,由于为每个像素差值选择了一个特定的动态阈值进行比对计算,使得当前像素点与相邻像素点的区别程度更加明确,进而解决了由于无法抑制特征不明显的图像区域,导致无法从图像中准确划分出平滑区域的技术问题,达到了可以从图像中准确划分得到平滑区域的目的。
[0030]具体的,本申请上述实施例中的当前像素点可以是图像的第一个像素点,或者任意一个像素点,通常情况下以图像上的第一个像素点作为初始像素点来遍历整个图像,进而获取多个子图像区域,每个子图像区域中的像素点属于同一个区域。
[0031]上述实施例中,步骤SlO中的多个相邻像素点的个数和位置可以根据需求任意设定。例如,可以取当前像素点P的右边 ,右上,右下,和下方的4个相邻像素点xl、x2、x3和x4,在获取到当前像素点及其相邻的4个相邻像素点之后,可以通过计算步骤S30分别计算出当前像素的像素值与上述4个相邻像素点的像素值的差,得到4个像素差值wl、w2、w3和w4,其中,wl是当前像素点P与第一相邻像素点xl之间的像素差值,w2是当前像素点P与第一相邻像素点x2之间的像素差值,《3是当前像素点P与第一相邻像素点x3之间的像素差值,w4是当前像素点P与第一相邻像素点x4之间的像素差值。同时记录4个相邻像素点的坐标位置。
[0032]本申请上述实施例中,如图2所示,在计算步骤S30分别计算当前像素点与每个相邻像素点的像素值之差,得到多个像素差值之后,还可以包括如下步骤:
[0033]排序步骤S401:按照像素差值由小到大的顺序对像素差值集合中的每个像素差值进行排序,得到排序后的像素差值集合,
[0034]其中,在执行处理步骤S50的过程中,可以基于排序步骤S401得到的排序后的像素差值集合来执行,按照像素差值的排列顺序,依次将每个像素差值分别与对应的阈值进行比较。
[0035]具体的,本申请上述实施例中,可以通过排序步骤S401来执行将当前像素点与各个相邻像素点之间的像素差值w由小到大进行排序,例如,将上述像素差值集合中的4个像素差值WlH和W4进行排序,通过排序使得像素差值集合中像素差值W以逐渐增大的形式排布,相邻像素差值之间的差别最小。如果将一个相邻像素差值对应的一组像素视作一个小区域,即该小区域由两个像素构成,那么将各个像素差值进行排序,可以看做是将相近的小区域集合到一起,在执行后续的阈值比较过程时,像素差值越小的像素组合能够最优先形成区域。
[0036]本申请上述实施例中,如图3所示,步骤S50依次将每个像素差值分别与对应的动态阈值进行比较,确定与当前像素点在同一个子图像区域内的所有相邻像素点可以包括如下实施步骤:
[0037]子读取步骤S501:读取像素差值集合中的第一像素差值,其中,第一像素差值为当前像素点与第一相邻像素点的像素值之差。具体的,该步骤中的第一相邻像素点可以是xl,第一像素差值可以是wl
[0038]获取步骤S502:根据第一像素差值,获取与第一像素差值对应的第一阈值。
[0039]子处理步骤S503:将第一像素差值与第一阈值进行比较,确定第一相邻像素点是否为与当前像素点在同一个子图像区域内的相邻像素点。
[0040]本申请上述步骤S501至S503实现了,系统读取像素差值集合中的第一像素差值,即读取了当前像素点与第一相邻像素点的像素值之差wl,将wl与对应的第一阈值进行比较来确定当前像素点与第一相邻像素点是否属于同一个图像区域。
[0041]子遍历步骤S504:遍历像素差集合中的各个像素差值,对各个像素差值执行上述读取步骤S501、获取步骤S502和处理步骤S503,直至确定与当前像素点在同一个子图像区域内的所有相邻像素点。上述遍历步骤S504实现了将像素差值集合中的每个像素差值与对应的阈值进行比较,从而获取与当前像素点在同一个区域中的所有相邻像素点。
[0042]优选地,本申请上述实施例中,如图4所示,子处理步骤S503执行了将第一像素差值与第一阈值进行比较,确定第一相邻像素点是否为与当前像素点在同一个子图像区域内的相邻像素点,上述步骤S503可以包括如下详细步骤:
[0043]步骤S5031,判断第一像素差值是否大于等于第一阈值,其中,在第一像素差值大于等于第一阈值的情况下,执行步骤S5032,在第一像素差值小于第一阈值的情况下,执行步骤S5033。
[0044]步骤S5032,确定第一相邻像素点是与当前像素点在同一个子图像区域内的相邻像素点。
[0045]步骤S5033,确定第一相邻像素点不是与当前像素点在同一个子图像区域内的相邻像素点。
[0046]其中,在上述步骤S5032中,如果确定第一相邻像素点是与当前像素点在同一个子图像区域内的相邻像素点的情况下,可以标记当前像素点为特征像素点,特征像素点对应的像素差值为第一像素差值。
[0047]具体的,上述实施例实现了,如果第一像素差值Wl大于等于第一阈值时,可以确定当前像素点与第一相邻像素点在同一个区域,否则,他们不在同一个区域。
[0048]仍旧以上述4个相邻像素点为例,上述步骤S501至S503,以及步骤S5031至步骤S5033的实施过程如下:在获取到当前像素点P与第一相邻像素点xl的像素值之差wl之后,如果wl大于等于第一阈值,此时,当前像素点P与第一相邻像素点xl属于同一个图像区域Gl。此时,可以通过子遍历步骤S504,遍历像素差集合中的各个像素差值,例如,在确定当前像素点P与第一相邻像素点xl属于同一个图像区域Gl之后,读取当前像素点P与第二相邻像素点x2的第二像素差值w2,并判断第二像素差值w2是否大于等于第二阈值,同样的,如果第一像素差值w2大于等于第二阈值,当前像素点P与第二相邻像素点x2也属于同一个图像区域,即此时,P、xl和x2都属于同一个图像区域G1,依次类推,通过子遍历步骤S504最终可以确定,当前像素点P与那些相邻像素点属于同一个图像区域G1。
[0049]此处需要进一步说明的是,在确定第一相邻像素点是与当前像素点在同一个子图像区域内的相邻像素点的情况下,可以标记当前像素点为特征像素点,即标记图像区域Gl中的当前像素点P为当前区域的一个特征像素,此时,该特征像素点对应的像素差值为第一像素差值wl。
[0050]由此可知,上述方案实现了,对各个像素差值执行上述读取步骤S501、获取步骤S502和处理步骤S503,直至确定与当前像素点在同一个子图像区域内的所有相邻像素点。上述遍历步骤S504实现了将像素差值集合中的每个像素差值与对应的阈值进行比较,从而获取与当前像素点在同一个区域中的所有相邻像素点。
[0051]优选地,本申请上述实施例中,在步骤S50依次将每个像素差值分别与对应的动态阈值进行比较,确定与当前像素点在同一个子图像区域内的所有相邻像素点之前,还可以包括如下实施步骤:
[0052]步骤S402,通过如下公式获取动态阈值Q1:Qi=wi+threshold/size i,其中,wi为特征像素点的像素差值,threshold为预设的初始阈值,size i当前像素点与第i相邻像素点构成的图像区域大小,i为自然数。
[0053]其中,基于上述计算公式,可知步骤S5031中的第一阈值Ql可以通过如下计算公式获得:Ql=wl+threshold/sizel,其中,wl为第一像素差值,threshold为预设的初始阈值,sizel为当前像素点与第一相邻像素点构成的图像区域大小。
[0054]上述方案实现了本申请的阈值生成机制,本申请上述实施例中,与每个像素差值进行比较的阈值是动态阈值,即每个阈值是随着像素差值的变化而对应更新的,具体的,当前区域新阈值等于当前区域的特征像素的差值w加上预设的初始阈值除以区域的大小(w+thresho I d/s i ze )。其中,预设的初始阈值可以根据经验进行设定,例如,初始阈值可以为20。
[0055]具体的,仍旧以上述4个相邻像素点为例,第一像素差值为当前像素P和第一相邻像素的像素差,则此时特征像素点(即当前像素点P)对应的像素差值为第一像素差值Wl,因此,该第一阈值Ql:Ql=wl+threshold/sizel。在wl大于等于第一阈值Ql的情况下,当前像素点P与第一相邻像素点xl属于同一个图像区域G1。此时,第二像素差值对应的第二阈值Q2:Q2=W2+thresh0ld/size2,此时,由于第二像素差值是当前像素点和第二相邻像素点求差得到,则此时当前区域的特征像素点仍旧是当前像素点P,因此,w2=wl,其中,size2为图像区域Gl和第二相邻像素点构成,进一步的,如果第二像素差值w2大于等于第二阈值,则当前像素点P与第二相邻像素点x2也属于同一个图像区域,即此时,P、xl和x2都属于同一个图像区域Gl,依次类推,通过上述公式Qi=wi+threshold/size i可以计算得到每个像素差值对应的阈值,由此可知,本申请提供方案中,动态阈值的生成机制是一种随着区域size增大而阈值减小的一个过程,次数的动态阈值生成机制可以减小上述区域中的阈值波动,使得整个区域的像素都和特征像素比较接近。
[0056]上述通过动态阈值和区域大小size的关系可以尽可能的规避较大区域的形成,这样可以形成更显著的区域层次。
[0057]此处还需要说明的是,在对像素差值集合中每个像素差值进行动态阈值比较处理之前,通过排序步骤S401执行了,按照像素差值由小到大的顺序对像素差值集合中的每个像素差值进行排序,得到排序后的像素差值集合,此处排序的目的包括:一方面有助于减少动态阈值的波动范围,这样使得形成的图像区域的色差波动较小,从而更具合理性和真实性,另外一方面,能使动态阈值在一般情况下呈递减趋势,使得确定在同一个图像区域中的各 个像素点更加相似,同时可以防止因为图像过平滑而导致划分区域的层次不明确的现象。
[0058]由此可知,上述方案通过对图像梯度值分析,结合排序,可变阈值,噪点抑制,形成图像的特征区域,实现了通过排序和动态阈值的算法可以解决比较平滑的区域的划分问题,尤其将本发明应用于人脸识别的过程中,对于人脸区域的划分有显著效果。
[0059]优选地,本申请上述实施例中,如图2所示,在步骤S70获取图像的多个子图像区域之后,还可以包括如下步骤:
[0060]步骤S801,读取预设的初始区域的区域大小。
[0061]步骤S802,将初始区域分别与图像的每个子图像区域进行比较,其中,在任意一个子图像区域的大小小于初始区域的情况下,执行步骤S803。
[0062]步骤S803,将小于初始区域的子图像区域与相邻的图像区域合并。
[0063]上述步骤S801至步骤S803实现了,通过预先设置一个初始区域大小,可以是一个固定的区域数值,将初始区域和步骤S70获取到的每个子图像区域的大小进行比较,小于初始区域的子图像区域将被合并,可以将小于初始区域的子图像区域与相邻的图像区域合并成一个较大的区域。上述方案能够抑制噪声的干扰,例如,当子图像区域为噪声,即该子图像区域是一个很小的区域,则该噪声会被合并到相邻的图像区域中,从而能够去除图像中一些特征不够明显的区域。
[0064]由此可知,上述步骤可以实现,通过对较小区域的合并能很好的解决噪声干扰的问题,对于不明显的特征区域也能够很好的排除。
[0065]综上可知,本申请上述实施例提出了一种图像区域划分的简单方法,核心为动态阈值产生的方法和差值w的排序思想,上述方案可以应用在人脸识别中,可以很好的解决了脸部区域划分层次不清晰的问题。
[0066]需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
[0067]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如R0M/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0068]实施例2
[0069]在描述本申请的各实施例的进一步细节之前,将参考图5来描述可用于实现本申请的原理的一个合适的计算体系结构。在以下描述中,除非另外指明,否则将参考由一个或多个计算机执行的动作和操作的符号表示来描述本申请的各实施例。由此,可以理解,有时被称为计算机执行的这类动作和操作包括计算机的处理单元对以结构化形式表示数据的电信号的操纵。这一操纵转换了数据或在计算机的存储器系统中的位置上维护它,这以本领域的技术人员都理解的方式重配置或改变了计算机的操作。维护数据的数据结构是具有数据的格式所定义的特定属性的存储器的物理位置。然而,尽管在上述上下文中描述本申请,但它并不意味着限制性的,如本领域的技术人员所理解的,后文所描述的动作和操作的各方面也可用硬件来实现。
[0070]在其最基本的配置中,图5是根据本发明实施例一的图像区域的划分装置结构示意图。出于描述的目的,所绘的体系结构仅为合适环境的一个示例,并非对本申请的使用范围或功能提出任何局限。也不应将该计算系统解释为对图5所示的任一组件或其组合具有任何依赖或需求。
[0071 ] 根据本发明实施例,还提供了一种用于实施上述方法实施例的装置实施例。
[0072]图5是根据本发明实施例一的图像区域的划分装置的结构示意图;图6是根据本发明实施例一的一种可选的图像区域的划分装置的结构示意图;图7是根据本发明实施例一的另一种可选的图像区域的划分装置的结构示意图;图8是根据本发明实施例一的又一种可选的图像区域的划分装置的结构示意图。
[0073]如图5所不,该装置包括:一读取模块101、一计算模块103、一处理模块105和一遍历模块107。
[0074]其中,读取模块101,用于读取图像中当前像素点的像素值,以及与当前像素点相邻的多个相邻像素点的像素值。
[0075]计算模块103,用于分别计算当前像素点与每个相邻像素点的像素值之差,得到像素差值集合,像素差值集合包括:多个像素差值。
[0076]处理模块105,用于依次将每个像素差值分别与对应的动态阈值进行比较,确定与当前像素点在同一个子图像区域内的所有相邻像素点,其中,当前像素点及其在同一个子图像区域内的所有相邻像素点构成一个子图像区域。
[0077]遍历模块107,用于遍历对图像中的各个像素点,依次对各个像素点执行上述读取模块,计算模块和处理模块,获取图像的多个子图像区域。
[0078]本申请上述实施例二中,通过读取图像中当前像素点及其相邻的任意数量的相邻像素点的像素值,来计算得到当前像素点与每个相邻像素点的像素差值,由于在将像素差值与阈值进行比较来确定子图像区域的过程中,阈值是动态变化的,即每个像素差值对应一个阈值,每个像素差值对应的阈值各不相同,由于为每个像素差值选择了一个特定的动态阈值进行比对计算,使得当前像素点与相邻像素点的区别程度更加明确,进而解决了由于无法抑制特征不明显的图像区域,导致无法从图像中准确划分出平滑区域的技术问题,达到了可以从图像中准确划分得到平滑区域的目的。
[0079]具体的,本申请上述实施例中的当前像素点可以是图像的第一个像素点,或者任意一个像素点,通常情况下以图像上的第一个像素点作为初始像素点来遍历整个图像,进而获取多个子图像区域,每个子图像区域中的像素点属于同一个区域。
[0080]上述实施例中,读取模块101中的多个相邻像素点的个数和位置可以根据需求任意设定。例如,可以取当前像素点P的右边,右上,右下,和下方的4个相邻像素点xl、X2、x3和x4,在获取到当前像素点及其相邻的4个相邻像素点之后,可以通过计算步骤S30分别计算出当前像素的像素值与上述4个相邻像素点的像素值的差,得到4个像素差值wl、w2,w3和《4,其中,wl是当前像素点P与第一相邻像素点xl之间的像素差值,《2是当前像素点P与第一相邻像素点x2之间的像素差值,《3是当前像素点P与第一相邻像素点x3之间的像素差值,w4是当前像素点P与第一相邻像素点x4之间的像素差值。同时记录4个相邻像素点的坐标位置。
[0081]优选地,本申请上述实施例中,如图6所示,在计算模块103完成分别计算当前像素点与每个相邻像素点的像素值之差,得到多个像素差值之后,本申请上述装置还可以运行如下模块,即本装置还可以包括:一排序模块102。
[0082]该排序模块102,用于按照像素差值由小到大的顺序对像素差值集合中的每个像素差值进行排序,得到排序后的像素差值集合,其中,处理模块还用于按照像素差值的排列顺序,依次将每个像素差值分别与对应的阈值进行比较。
[0083]具体的,本申请上述实施例中,可以通过排序步骤S401来执行将当前像素点与各个相邻像素点之间的像素差值w由小到大进行排序,例如,将上述像素差值集合中的4个像素差值wlH和《4进行排序,通过排序使得像素差值集合中像素差值W以逐渐增大的形式排布,相邻像素差值之间的差别最小。如果将一个相邻像素差值对应的一组像素视作一个小区域,即该小区域由两个像素构成,那么将各个像素差值进行排序,可以看做是将相近的小区域集合到一起,在执行后续的阈值比较过程时,像素差值越小的像素组合能够最优先形成区域。
[0084]如图7所示,本申请上述实施例中的处理模块105可以包括:子读取模块1051,用于读取像素差值集合中的第一像素差值,其中,第一像素差值为当前像素点与第一相邻像素点的像素值之差;子获取模块1052,用于根据第一像素差值,获取与第一像素差值对应的第一阈值;子处理模块1053,用于将第一像素差值与第一阈值进行比较,确定第一相邻像素点是否为与当前像素点在同一个子图像区域内的相邻像素点;子遍历模块1054,用于遍历像素差集合中的各个像素差值,对各个像素差值执行上述读取步骤、获取步骤和处理步骤,直至确定与当前像素点在同一个子图像区域内的所有相邻像素点。
[0085]具体的,本申请上述子读取模块1051、子获取模块1052、子处理模块1053实现了,系统读取像素差值集合中的第一像素差值,即读取了当前像素点与第一相邻像素点的像素值之差wl,将wl与对应的第一阈值进行比较来确定当前像素点与第一相邻像素点是否属于同一个图像区域。且上述子遍历模块实现了将像素差值集合中 的每个像素差值与对应的阈值进行比较,从而获取与当前像素点在同一个区域中的所有相邻像素点。
[0086]优选地,如图8所示,本申请上述实施例中的子处理模块1053可以包括:判断模块1053a,用于判断第一像素差值是否大于等于第一阈值;第一确定模块1053b,用于在第一像素差值大于等于第一阈值的情况下,确定第一相邻像素点是与当前像素点在同一个子图像区域内的相邻像素点;第二确定模块1053c,用于在第一像素差值小于第一阈值的情况下,确定第一相邻像素点不是与当前像素点在同一个子图像区域内的相邻像素点。
[0087]上述装置还包括:标记模块1054,用于在确定第一相邻像素点是与当前像素点在同一个子图像区域内的相邻像素点的情况下,标记当前像素点为特征像素点,特征像素点对应的像素差值为第一像素差值。
[0088]具体的,上述实施例实现了,如果第一像素差值Wl大于等于第一阈值时,可以确定当前像素点与第一相邻像素点在同一个区域,否则,他们不在同一个区域。
[0089]仍旧以上述4个相邻像素点为例,上述子读取模块、子获取模块、子处理模块,以及判断模块、第一确定模块和第二确定模块的实施过程如下:在获取到当前像素点P与第一相邻像素点Xl的像素值之差Wl之后,如果Wl大于等于第一阈值,此时,当前像素点P与第一相邻像素点Xl属于同一个图像区域G1。此时,可以通过子遍历步骤S504,遍历像素差集合中的各个像素差值,例如,在确定当前像素点P与第一相邻像素点xl属于同一个图像区域Gl之后,读取当前像素点P与第二相邻像素点x2的第二像素差值《2,并判断第二像素差值w2是否大于等于第二阈值,同样的,如果第一像素差值w2大于等于第二阈值,当前像素点P与第二相邻像素点x2也属于同一个图像区域,即此时,P、xl和x2都属于同一个图像区域G1,依次类推,通过子遍历模块最终可以确定,当前像素点P与那些相邻像素点属于同一个图像区域G1。
[0090]此处需要进一步说明的是,在确定第一相邻像素点是与当前像素点在同一个子图像区域内的相邻像素点的情况下,可以标记当前像素点为特征像素点,即标记图像区域Gl中的当前像素点P为当前区域的一个特征像素,此时,该特征像素点对应的像素差值为第一像素差值wl。
[0091]由此可知,上述方案实现了,对各个像素差值执行上述子读取模块、子获取模块、子处理模块,直至确定与当前像素点在同一个子图像区域内的所有相邻像素点。上述遍历模块实现了将像素差值集合中的每个像素差值与对应的阈值进行比较,从而获取与当前像素点在同一个区域中的所有相邻像素点。
[0092]本申请上述实施例中,在处理模块105实现了依次将每个像素差值分别与对应的动态阈值进行比较,确定与当前像素点在同一个子图像区域内的所有相邻像素点之前,上述装置还可以包括:计算获取模块。
[0093]该计算获取模块,用于通过如下公式获取动态阈值Qi:Qi=wi+threshold/size i,其中,W为特征像素点的像素差值,threshold为预设的初始阈值,size i当前像素点与第i相邻像素点构成的图像区域大小,i为自然数;其中,计算获取模块包括:子计算获取模块,用于计算第一阈值Ql:Ql=wl+threshold/sizel,其中,wl为第一像素差值,threshold为预设的初始阈值,sizel为当前像素点与第一相邻像素点构成的图像区域大小。
[0094]上述方案实现了本申请的阈值生成机制,本申请上述实施例中,与每个像素差值进行比较的阈值是动态阈值,即每个阈值是随着像素差值的变化而对应更新的,具体的,当前区域新阈值等于当前区域的特征像素的差值w加上预设的初始阈值除以区域的大小(w+thresho I d/s i ze )。其中,预设的初始阈值可以根据经验进行设定,例如,初始阈值可以为20。
[0095]具体的,仍旧以上述4个相邻像素点为例,第一像素差值为当前像素P和第一相邻像素的像素差,则此时特征像素点(即当前像素点P)对应的像素差值为第一像素差值Wl,因此,该第一阈值Ql:Ql=wl+threshold/sizel。在wl大于等于第一阈值Ql的情况下,当前像素点P与第一相邻像素点xl属于同一个图像区域G1。此时,第二像素差值对应的第二阈值Q2:Q2=W2+thresh0ld/size2,此时,由于第二像素差值是当前像素点和第二相邻像素点求差得到,则此时当前区域的特征像素点仍旧是当前像素点P,因此,w2=wl,其中,size2为图像区域Gl和第二相邻像素点构成,进一步的,如果第二像素差值w2大于等于第二阈值,则当前像素点P与第二相邻像素点x2也属于同一个图像区域,即此时,P、xl和x2都属于同一个图像区域Gl,依次类推,通过上述公式Qi=wi+threshold/size i可以计算得到每个像素差值对应的阈值,由此可知,本申请提供方案中,动态阈值的生成机制是一种随着区域size增大而阈值减小的一个过程,次数的动态阈值生成机制可以减小上述区域中的阈值波动,使得整个区域的像素都和特征像素比较接近。
[0096]上述通过动态阈值和区域大小size的关系可以尽可能的规避较大区域的形成,这样可以形成更显著的区域层次。
[0097]此处还需要说明的是,在对像素差值集合中每个像素差值进行动态阈值比较处理之前,通过排序步骤S401执行了,按照像素差值由小到大的顺序对像素差值集合中的每个像素差值进行排序,得到排序后的像素差值集合,此处排序的目的包括:一方面有助于减少动态阈值的波动范围,这样使得形成的图像区域的色差波动较小,从而更具合理性和真实性,另外一方面,能使动态阈值在一般情况下呈递减趋势,使得确定在同一个图像区域中的各个像素点更加相似,同时可以防止因为图像过平滑而导致划分区域的层次不明确的现象。
[0098]由此可知,上述方案通过对图像梯度值分析,结合排序,可变阈值,噪点抑制,形成图像的特征区域,实现了通过排序和动态阈值的算法可以解决比较平滑的区域的划分问题,尤其将本发明应用于人脸识别的过程中,对于人脸区域的划分有显著效果。
[0099]优选地,本申请上述实施例中,如图6所示,在遍历模块107实现了获取图像的多个子图像区域之后,上述装置还可以包括:获取模块108,用于读取预设的初始区域的区域大小;比较模块110,用于将初始区域分别与图像的每个子图像区域进行比较;合并模块112,用于在任意一个子图像区域的大小小于初始区域的情况下,将小于初始区域的子图像区域与相邻的图像区域合并。
[0100]上述获取模块108、比较模块110和合并模块112实现了,通过预先设置一个初始区域大小,可以是一个固定的区域数值,将初始区域和遍历模块107获取到的每个子图像区域的大小进行比较,小于初始区域的子图像区域将被合并,可以将小于初始区域的子图像区域与相邻的图像区域合并成一个较大的区域。上述方案能够抑制噪声的干扰,例如,当子图像区域为噪声,即该子图像区域是一个很小的区域,则该噪声会被合并到相邻的图像区域中,从而能够去除图像中一些特征不够明显的区域。
[0101]由此可知,上述步骤可以实现,通过对较小区域的合并能很好的解决噪声干扰的问题,对于不明显的特征区域也能够很好的排除。
[0102]从以上的描述中,可以看出,本发明实现了如下技术效果:解决了由于无法抑制特征不明显的图像区域,导致无法从图像中准确划分出平滑区域的技术问题,达到了可以从图像中准确划分得到平滑区域的目的。。
[0103]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0104]在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0105]在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0106]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0107]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0108]所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全 部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM, Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0109]以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【主权项】
1.一种图像区域的划分方法,其特征在于,包括: 读取步骤:读取图像中当前像素点的像素值,以及与所述当前像素点相邻的多个相邻像素点的像素值; 计算步骤:分别计算所述当前像素点与每个相邻像素点的像素值之差,得到像素差值集合,所述像素差值集合包括:多个像素差值; 处理步骤:依次将每个像素差值分别与对应的动态阈值进行比较,确定与所述当前像素点在同一个子图像区域内的所有相邻像素点,其中,所述当前像素点及其在同一个子图像区域内的所有相邻像素点构成一个子图像区域; 遍历步骤:遍历对所述图像中的各个像素点,依次对所述各个像素点执行上述读取步骤,计算步骤和处理步骤,获取所述图像的多个子图像区域。2.根据权利要求1所述的方法,其特征在于,在分别计算所述当前像素点与每个相邻像素点的像素值之差,得到多个像素差值之后,所述方法还包括: 按照像素差值由小到大的顺序对所述像素差值集合中的每个像素差值进行排序,得到排序后的像素差值集合, 其中,在执行所述处理步骤的过程中,按照所述像素差值的排列顺序,依次将所述每个像素差值分别与对应的阈值进行比较。3.根据权利要求1或2所述的方法,其特征在于,依次将每个像素差值分别与对应的动态阈值进行比较,确定与所述当前像素点在同一个子图像区域内的所有相邻像素点的步骤包括: 子读取步骤:读取所述像素差值集合中的第一像素差值,其中,所述第一像素差值为所述当前像素点与第一相邻像素点的像素值之差; 获取步骤:根据所述第一像素差值,获取与所述第一像素差值对应的第一阈值; 子处理步骤:将所述第一像素差值与所述第一阈值进行比较,确定所述第一相邻像素点是否为与所述当前像素点在同一个子图像区域内的相邻像素点; 子遍历步骤:遍历所述像素差集合中的各个像素差值,对所述各个像素差值执行上述读取步骤、获取步骤和处理步骤,直至确定与所述当前像素点在同一个子图像区域内的所有相邻像素点。4.根据权利要求3所述的方法,其特征在于,将所述第一像素差值与所述第一阈值进行比较,确定所述第一相邻像素点是否为与所述当前像素点在同一个子图像区域内的相邻像素点的步骤包括: 判断所述第一像素差值是否大于等于所述第一阈值,其中, 在所述第一像素差值大于等于所述第一阈值的情况下,确定所述第一相邻像素点是与所述当前像素点在同一个子图像区域内的相邻像素点; 在所述第一像素差值小于所述第一阈值的情况下,确定所述第一相邻像素点不是与所述当前像素点在同一个子图像区域内的相邻像素点; 其中,在确定所述第一相邻像素点是与所述当前像素点在同一个子图像区域内的相邻像素点的情况下,标记所述当前像素点为特征像素点,所述特征像素点对应的像素差值为所述第一像素差值。5.根据权利要求4所述的方法,其特征在于,在依次将每个像素差值分别与对应的动态阈值进行比较,确定与所述当前像素点在同一个子图像区域内的所有相邻像素点之前,所述方法还包括: 通过如下公式获取所述动态阈值Qi: Qi=wi+threshold/size i,其中,wi为所述特征像素点的像素差值,threshold为预设的初始阈值,size i所述当前像素点与第i相邻像素点构成的图像区域大小,i为自然数;其中,所述第一阈值Ql为: Ql=wl+threshold/sizel,其中,wl为所述第一像素差值,threshold为预设的初始阈值,sizel为所述当前像素点与所述第一相邻像素点构成的图像区域大小。6.根据权利要求1所述的方法,其特征在于,在获取所述图像的多个子图像区域之后,所述方法还包括: 读取预设的初始区域的区域大小; 将所述初始区域分别与所述图像的每个子图像区域进行比较,其中, 在任意一个子图像区域的大小小于所述初始区域的情况下,将小于所述初始区域的子图像区域与相邻的图像区域合并。7.一种图像区域的划分装置,其特征在于,包括: 读取模块,用于读取图像中当前像素点的像素值,以及与所述当前像素点相邻的多个相邻像素点的像素值; 计算模块,用于分别计算所述当前像素点与每个相邻像素点的像素值之差,得到像素差值集合,所述像素差值集合包括:多个像素差值; 处理模块,用于依次将每个像素差值分别与对应的动态阈值进行比较,确定与所述当前像素点在同一个子图像区域内的所有相邻像素点,其中,所述当前像素点及其在同一个子图像区域内的所有相邻像素点构成一个子图像区域; 遍历模块,用于遍历对所述图像中的各个像素点,依次对所述各个像素点执行上述读取模块,计算模块和处理模块,获取所述图像的多个子图像区域。8.根据权利要求7所述的装置,其特征在于,所述装置还包括: 排序模块,用于按照像素差值由小到大的顺序对所述像素差值集合中的每个像素差值进行排序,得到排序后的像素差值集合, 其中,所述处理模块还用于按照所述像素差值的排列顺序,依次将所述每个像素差值分别与对应的阈值进行比较。9.根据权利要求7或8所述的装置,其特征在于,处理模块包括: 子读取模块,用于读取所述像素差值集合中的第一像素差值,其中,所述第一像素差值为所述当前像素点与第一相邻像素点的像素值之差; 子获取模块,用于根据所述第一像素差值,获取与所述第一像素差值对应的第一阈值; 子处理模块,用于将所述第一像素差值与所述第一阈值进行比较,确定所述第一相邻像素点是否为与所述当前像素点在同一个子图像区域内的相邻像素点; 子遍历模块,用于遍历所述像素差集合中的各个像素差值,对所述各个像素差值执行上述读取步骤、获取步骤和处理步骤,直至确定与所述当前像素点在同一个子图像区域内的所有相邻像素点。10.根据权利要求9所述的装置,其特征在于,所述子处理模块包括: 判断模块,用于判断所述第一像素差值是否大于等于所述第一阈值; 第一确定模块,用于在所述第一像素差值大于等于所述第一阈值的情况下,确定所述第一相邻像素点是与所述当前像素点在同一个子图像区域内的相邻像素点; 第二确定模块,用于在所述第一像素差值小于所述第一阈值的情况下,确定所述第一相邻像素点不是与所述当前像素点在同一个子图像区域内的相邻像素点; 标记模块,用于在确定所述第一相邻像素点是与所述当前像素点在同一个子图像区域内的相邻像素点的情况下,标记所述当前像素点为特征像素点,所述特征像素点对应的像素差值为所述第一像素差值。11.根据权利要求10所述的装置,其特征在于,所述装置还包括: 计算获取模块,用于通过如下公式获取所述动态阈值Qi:Qi=wi+threshold/size i,其中,wi为所述特征像素点的像素差值,threshold为预设的初始阈值,sizei所述当前像素点与第i相邻像素点构成的图像区域大小,i为自然数; 其中,所述计算获取模块包括:子计算获取模块,用于计算所述第一阈值Ql:Ql=wl+threshold/sizel,其中,wl为所述第一像素差值,threshold为预设的初始阈值,sizel为所述当前像素点与所述第一相邻像素点构成的图像区域大小。12.根据权利要求7所述的装置,其特征在于,所述装置还包括: 获取模块,用于读取预设的初始区域的区域大小; 比较模块,用于将所述初始区域分别与所述图像的每个子图像区域进行比较; 合并模块,用于在任意一个子图像区域的大小小于所述初始区域的情况下,将小于所述初始区域的子图像区域与相邻的图像区域合并。
【专利摘要】本发明公开了一种图像区域的划分方法及装置。其中,该方法包括:读取步骤:读取图像中当前像素点的像素值,以及与当前像素点相邻的多个相邻像素点的像素值;计算步骤:分别计算当前像素点与每个相邻像素点的像素值之差,得到像素差值集合,像素差值集合包括:多个像素差值;处理步骤:依次将每个像素差值分别与对应的动态阈值进行比较,确定与当前像素点在同一个子图像区域内的所有相邻像素点,其中,当前像素点及其在同一个子图像区域内的所有相邻像素点构成一个子图像区域;遍历步骤:遍历对图像中的各个像素点,依次对各个像素点执行上述读取步骤,计算步骤和处理步骤,获取图像的多个子图像区域。由此能够从图像中准确划分得到平滑区域。
【IPC分类】G06T7/00
【公开号】CN104899853
【申请号】CN201410077257
【发明人】袁同根
【申请人】腾讯科技(深圳)有限公司
【公开日】2015年9月9日
【申请日】2014年3月4日
【公告号】WO2015131772A1

最新回复(0)