发明内容
为解决上述技术问题,本发明的目的在于提供一种消除假轮廓的图像处理方法,通过改变颜色值的空间分布,利用人眼的视觉平均特性来产生出新的颜色值以消除图像中的假轮廓。
相应所述方法,本发明的另一目的在于提供一种消除假轮廓的图像处理装置。
为实现上述发明目的之一,本发明提供的一种消除假轮廓的图像处理方法,包括如下步骤:
检测出属于假轮廓的各个对应一定像素值的假轮廓像素点;
通过改变像素值的空间分布以消除假轮廓。
作为本发明的进一步改进,所述假轮廓像素点的检测具体包括以下步骤:
设定一可配置的判断阈值;
计算待检测像素点的各个梯度值;
求各个梯度值对应的绝对值,比较得出最大绝对值;
判断所述最大绝对值是否小于所述判断阈值,若是,则所述待检测像素点为假轮廓像素点;若否,则所述待检测像素点为非假轮廓像素点;
作为本发明的进一步改进,所述梯度值包括垂直梯度、水平梯度、左对角梯度和右对角梯度。
作为本发明的进一步改进,该方法需要确定一包括所述假轮廓像素点的邻域,所述领域被假轮廓分为具有第一颜色值的第一区域和具有第二颜色值的第二区域,所述第一颜色值和第二颜色值之间的差值Step为一可配置的值,所述“通过改变像素值的空间分布以消除假轮廓”的步骤具体包括如下步骤:
分别取k=0、+Step、-Step,计算周围点像素值等于当前点像素值的像素点个数p(k);
分别取k=0、+Step、-Step,根据公式
计算不同取值对应的概率值;
随机从区间[0,1]之间取得随机数r;
根据所取得的随机数r与所述概率值的比较,确定将要输出的输出像素值。
作为本发明的进一步改进,所述“根据所取得的随机数r与所述概率值的比较,确定将要输出的输出像素”的步骤具体为:
若r<p’(0),则输出像素值为输入像素值;
若p’(0)≤r<p’(+Step),则输出像素值为输入像素值与Step的和;
若为其他情况,则输出像素值为输入像素值与Step的差。
为实现上述发明目的之一,本发明提供的一种消除假轮廓的图像处理装置,所述装置包括:
假轮廓检测单元、用于检测出属于假轮廓的各个对应一定像素值的假轮廓像素点;
假轮廓消除单元、用于通过改变像素值的空间分布以消除假轮廓。
作为本发明的进一步改进,所述假轮廓检测单元具体用于:
设定一可配置的判断阈值;
计算待检测像素点的各个梯度值;
求各个梯度值对应的绝对值,比较得出最大绝对值;
判断所述最大绝对值是否小于所述判断阈值,若是,则所述待检测像素点为假轮廓像素点;若否,则所述待检测像素点为非假轮廓像素点;
作为本发明的进一步改进,所述梯度值包括垂直梯度、水平梯度、左对角梯度和右对角梯度。
作为本发明的进一步改进,该装置需要确定一包括所述假轮廓像素点的邻域,所述领域被假轮廓分为具有第一颜色值的第一区域和具有第二颜色值的第二区域,所述第一颜色值和第二颜色值之间的差值Step为一可配置的值,所述假轮廓消除单元具体包括以下单元:
概率计算单元、用于分别取k=0、+Step、-Step,计算周围点像素值等于当前点像素值的像素点个数p(k);
比例计算单元、用于分别取k=0、
根据公式计算不同取值对应的概率值;
输出单元、用于随机从区间[0,1]之间取得随机数r,根据所取得的随机数r与所述概率值的比较,确定将要输出的输出像素值。
作为本发明的进一步改进,所述输出单元具体用于:
若r<p’(0),则输出像素值为输入像素值;
若p’(0)≤r<p’(+Step),则输出像素值为输入像素值与Step的和;
若为其他情况,则输出像素值为输入像素值与Step的差。
与现有技术相比,本发明的有益效果是:本发明通过改变颜色值的空间分布,利用人眼的视觉平均特性来产生出“新的颜色值”以消除图像中的假轮廓,在消除假轮廓的同时不会损失图像的细节,也不会增加额外的噪声,并且不需要增加位深,进而大大节省了硬件资源。
具体实施方式
以下将结合附图所示的具体实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
参见图4,本发明的一具体实施方式中,所示的消除假轮廓的图像处理方法包括检查假轮廓和消除假轮廓两个步骤,具体而言:
该方法包括以下步骤:
S1、检测出属于假轮廓的各个对应一定像素值的假轮廓像素点;
对于是假轮廓的每一个像素点,我们应用基于其周围邻域的颜色分布来产生抖动,来消除这种假轮廓,所以在消除假轮廓之前必须通过检测得出假轮廓所在的位置,如此,在本发明中,只是在有假轮廓的区域才会去做消除假轮廓的处理,在其他区域不起作用。
如图5所示,本发明首先需要确定一包括所述假轮廓像素点的邻域,所述领域被假轮廓分为具有第一颜色值的第一区域和具有第二颜色值的第二区域,假设R(x,y)是像素点(x,y)的邻域,假轮廓把这个邻域分为2部分:一部分为具有第一颜色值c的第一区域,另一部分为具有第二颜色值c+step的第二区域,(step是一个可配置的值,比如1,2等),在这个邻域R(x,y)中,出现颜色值为c的概率是p,而出现颜色值为c+step的概率是1-p。为了消除或减少假轮廓,颜色值应该从上到下逐渐地从c变化到c+step,而不是突然地从c变化到c+step。然而,我们没有介于c和c+step之间的任何中间值。但是,人眼有平均某个周围邻域的视觉特性,利用人眼视觉的平均特性,可以产生出介于c和c+step之间中间值的效果,通过改变c和c+step这两个颜色值的空间分布,利用人眼的视觉平均特性来产生出介于c和c+step之间的中间值的效果。
于是,继续参见图4,在本实施方式中,步骤S1具体包括如下步骤来实现假轮廓的检测:
S11、设定一可配置的判断阈值;
S12、计算待检测像素点的各个梯度值;
其中,梯度值是指:垂直梯度、水平梯度、左对角梯度和右对角梯度。
例如,如图6和图7所示,垂直梯度梯度值和水平梯度梯度值X=a-d+b-e+c-f,其中a、b、c、d、e、f分别为与该像素点(x,y)的相邻的6个像素点的X方向的值。
S13、求各个梯度值对应的绝对值,比较得出最大绝对值;
S14、判断所述最大绝对值是否小于所述判断阈值,若是,则所述待检测像素点为假轮廓像素点(步骤S15);若否,则所述待检测像素点为非假轮廓像素点(步骤S16)。
用公式表示即为: 其中:
x,y是像素点(x,y)的横坐标和纵坐标,R(x,y)表示像素点(x,y)的领域,
表示梯度,abs表示求绝对值,Th是梯度的绝对值的阈值,为一可配置参数。
S2、通过改变像素值的空间分布以消除假轮廓。在本实施方式中,假轮廓的消除的方法是在假轮廓上产生一些新的像素值(例如前例中,在假轮廓上增加一些2、5、7、10等等的像素值,使其平滑过渡)。
所述步骤S2具体包括如下步骤:
S21、分别取k=0、+Step、-Step,计算周围点像素值等于当前点
像素值的像素点个数p(k);
用计算公式表示为:
其中,取k=0、+step、-step,
其中I表示输入图像,
S22、分别取k=0、+Step、-Step,根据公式
计算不同取值对应的概率值;
此步骤中,假设计算得出p(0)=a,p(-step)=b,p(+step)=c
当k=0时,p’(0)=a/(a+b+c);
当k=-step时,p’(-step)=b/(a+b+c);
当k=+step时,p’(+step)=c/(a+b+c)。
S23、随机从区间[0,1]之间取得随机数r,优选地,随机数r是在区间[0,1]之间均匀分布的。
S24、根据所取得的随机数r与所述概率值的比较,确定将要输出的输出像素值。
该步骤具体为:若r<p’(0),则输出像素值为输入像素值;
若p’(0)≤r<p’(+Step),则输出像素值为输入像素值与Step的和;
若为其他情况,则输出像素值为输入像素值与Step的差。
用公式表示即为:
其中,O(x,y)是输出的像素值。
请参见图8和图9所示,图8为消除前图像的状态,图9为消除后图像的状态。通过改变假轮廓的空间分布(即在两个像素值(颜色值)之间产生新的像素值并进行输出),以达到了假轮廓的消除目的。
接下来,将结合图10来介绍本发明一实施方式中消除假轮廓的装置,其包括以下单元:
假轮廓检测单元10、用于检测出属于假轮廓的各个对应一定像素值的假轮廓像素点;
对于是假轮廓的每一个像素点,我们应用基于其周围邻域的颜色分布来产生抖动,来消除这种假轮廓,所以在消除假轮廓之前必须通过检测得出假轮廓所在的位置,如此,在本发明中,只是在有假轮廓的区域才会去做消除假轮廓的处理,在其他区域不起作用。
如图5所示,本发明首先需要确定一包括所述假轮廓像素点的邻域,所述领域被假轮廓分为具有第一颜色值的第一区域和具有第二颜色值的第二区域,假设R(x,y)是像素点(x,y)的邻域,假轮廓把这个邻域分为2部分:一部分为具有第一颜色值c的第一区域,另一部分为具有第二颜色值c+step的第二区域,(step是一个可配置的值,比如1,2等),在这个邻域R(x,y)中,出现颜色值为c的概率是p,而出现颜色值为c+step的概率是1-p。为了消除或减少假轮廓,颜色值应该从上到下逐渐地从c变化到c+step,而不是突然地从c变化到c+step。然而,我们没有介于c和c+step之间的任何中间值。但是,人眼有平均某个周围邻域的视觉特性,利用人眼视觉的平均特性,可以产生出介于c和c+step之间中间值的效果,通过改变c和c+step这两个颜色值的空间分布,利用人眼的视觉平均特性来产生出介于c和c+step之间的中间值的效果。
于是,在本实施方式中,假轮廓检测单元10具体用于:
设定一可配置的判断阈值;
计算待检测像素点的各个梯度值;
其中,梯度值是指:垂直梯度、水平梯度、左对角梯度和右对角梯度。
例如,如图6和图7所示,垂直梯度梯度值和水平梯度梯度值X=a-d+b-e+c-f,其中a、b、c、d、e、f分别为与该像素点(x,y)的相邻的6个像素点的X方向的值。
求各个梯度值对应的绝对值,比较得出最大绝对值;
判断所述最大绝对值是否小于所述判断阈值,若是,则所述待检测像素点为假轮廓像素点;若否,则所述待检测像素点为非假轮廓像素点。
用公式表示即为: 其中:
x,y是像素点(x,y)的横坐标和纵坐标,R(x,y)表示像素点(x,y)的领域,
表示梯度,abs表示求绝对值,Th是梯度的绝对值的阈值,为一可配置参数。
假轮廓消除单元20、用于通过改变像素值的空间分布以消除假轮廓。在本实施方式中,假轮廓的消除的方法是在假轮廓上产生一些新的像素值(例如前例中,在假轮廓上增加一些2、5、7、10等等的像素值,使其平滑过渡)。
假轮廓消除单元20具体包括以下各单元来实现假轮廓的消除:
首先,概率计算单元201、用于分别取k=0、+Step、-Step,计算周围点像素值等于当前点像素值的像素点个数p(k);
用计算公式表示为:
其中,取k=0、+step、-step,
其中I表示输入图像(像素值),
再者,比例计算单元202、此单元用于分别取k=0、+Step、-Step,
假设计算得出p(0)=a,p(-step)=b,p(+step)=c
当k=0时,p’(0)=a/(a+b+c);
当k=-step时,p’(-step)=b/(a+b+c);
当k=+step时,p’(+step)=c/(a+b+c)。
输出单元203、用于随机从区间[0,1]之间取得随机数r,优选地,随机数r是在区间[0,1]之间均匀分布的。
根据所取得的随机数r与所述概率值的比较,确定将要输出的输出像素值。
其中,若r<p’(0),则输出像素值为输入像素值;
若p’(0)≤r<p’(+Step),则输出像素值为输入像素值与Step的和;
若为其他情况,则输出像素值为输入像素值与Step的差。
用公式表示即为:
其中,O(x,y)是输出的像素值。
与现有技术相比,本发明的有益效果是:自适应性:只是在有假轮廓的区域才会去做消除假轮廓的处理,在其他区域不起作用;因此,不仅可以消除假轮廓,而且不会损失图像的细节,也不会增加额外的噪声(特别是在平坦区域);再者,本发明不需要增加位深就可以消除假轮廓;这可以大大节省硬件资源。
以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施方式或者实施方式的某些部分所述的方法。
以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。