基于动态阈值的运动和边缘自适应的去隔行方法及系统的制作方法

文档序号:7664409阅读:112来源:国知局
专利名称:基于动态阈值的运动和边缘自适应的去隔行方法及系统的制作方法
技术领域
本发明涉及集成电路技术领域,尤其涉及一种基于动态阈值的运动和边缘自适应的去隔行方法及系统。

背景技术
隔行信号是由交错的两场构成第一场包含所有的奇数行,第二场包含所有的偶数行。去隔行技术可将隔行的电视信号转为显示器所能识别的逐行信号,以消除隔行视频序列的缺陷,即消除行结构线、消除扫描线间的闪烁,提高显示画面的清晰度。去隔行技术的应用有利于高质量逐行显示器液晶、等离子的推广与应用。越是复杂的去隔行方法效果越好,但是在集成电路上实现却很困难。
人们已经设计了大量的去隔行方法,如公开号为1421098A,
公开日为2003年5月28日的中国专利公开了一种运动及边缘自适应去隔行扫描方法。该方法将一条扫描线上的两个以上的像素分为一段,段中每个像素共享一个公用运动值,根据是否边缘通过不同的查找表来确定运动值。该方法采用段的方法,虽然节约了时间,但是当判断细节处的运动时,容易产生错误的运动检测结果。另外,公开号为1599447A,
公开日为2005年3月23日的中国专利公开了一种数字电视后处理去隔行技术的方向相关运动补偿方法。该方法包括具有消噪功能的方向相关滤波、像素运动估计、运动补偿三步骤,因为采用了运动估计,所以方法较复杂,而且当运动估计出错时,容易出现赝像。


发明内容
有鉴于此,本发明要解决的技术问题是提供一种基于动态阈值的运动和边缘自适应的去隔行方法及系统,其在集成电路复杂度不是十分高的情况下,可以有效地保护物体边缘,防止有用信息的模糊。
为了解决上述技术问题,本发明提供了一种基于动态阈值的运动和边缘自适应的去隔行方法。所述方法包括如下步骤a.获取图像的四场数据,所述四场为第一、二、三、四场,其中第三场为当前场,当前场的当前点为待插入点;b.根据当前场和第四场的数据,动态获取最大、最小阈值Tmax,Tmin;c.获取当前点以及当前点的上、下、左、右共五点的四场间的差值E1、E2、E3、E4、E5,取五差值E1、E2、E3、E4、E5中的最大值为E;d.将所述五差值E1、E2、E3、E4、E5分别与周围像素相似程度阈值Td比较,若前者小于后者,则该差值对应的点为静止点,进而获得所述五点为静止点的个数;e.根据步骤b求得的最大值E和步骤c求得的静止点的个数得到运动检测信息Im;f.根据当前场的数据获得相关性最大的方向,然后在相关性最大的方向上进行插值,获得插值结果Fintra;g.根据运动检测信息Im以及步骤b的插值结果Fintra,获得去隔行之后的图像。
为了解决上述技术问题,本发明还提供了一种应用上述方法的系统。该系统包括动态获取阈值模块,估计运动检测信息模块,内插模块,输出模块;其中信息动态获取阈值模块的输入为当前场和第四场数据,输出为最大、最小阈值Tmax,Tmin;估计运算检测信息模块的输入为四场数据和Tmax,Tmin,输出为运动检测信息Im;内插模块的输入为当前场和第四场的数据,输出为内插结果Fintra;输出模块的输入为运动检测信息Im、内插结果Fintra、以及第四场的数据,输出为去隔行后的图像。
相对于现有技术,本发明提供的去隔行方法和系统,可有效识别运动物体和边缘部分,使得在硬件易实现的情况下,静态物体垂直细节更多,动态物体不会出现拖影和失真,在集成电路复杂度不是十分高的情况下,有效地保护物体边缘,防止了有用信息的模糊。另外根据不同的情况动态求取阈值,实现了在不同的情况都能正确的检测运动和静止物体,得到很好的去隔行效果。



通过以下对本发明一实施例结合其附图的描述,可以进一步理解其发明的目的、具体结构特征和优点。其中,附图为 图1是插入点所在空间位置示意图; 图2a和图2b是Er在[Tm,Tb]之间时,阈值求取示意图; 图3是本发明提供的基于动态阈值的运动和边缘自适应的去隔行方法及系统的结构方框图; 图4是本发明提供的基于动态阈值的运动和边缘自适应的去隔行方法的流程图。

具体实施例方式 以下结合附图来具体说明本发明提供的基于动态阈值的运动和边缘自适应的去隔行方法以及实现该方法的系统的最佳实施方式。
本发明提供了一种基于动态阈值的运动和边缘自适应的去隔行方法,请参阅图3和图4,该方法包含以下步骤 步骤1,动态获取最大、最小阈值 判断物体是否运动有很多种方式,阈值单纯的选取是其中一种方法,但是却不能适应所有的运动情况。比如对于很多小幅运动的图像(如在运动的狗的绒毛、微波荡漾的池水等),如果选取很大的阈值,只有大于此阈值才能认为是运动的,这样可能会把小幅运动的绒毛误认为是静止。如果是静止,两场直接合并,就会使画面分裂,造成视觉上的模糊。因此,对于这类运动情况,要最大阈值、最小阈值各选取一个。
另外,对于常见的测试视频钟摆的运动,下方OK是奇数场在奇数行有白线,偶数场在偶数行有白线,因此必须要4场以上才可以鉴别出此类物体的运动和静止,此类运动的最小阈值应设在10以上,最大阈值在30以上,但这么大的阈值不适合其他正常的运动情况。因此,在判断物体是否运动之前首先对是否属于钟摆的特殊运动情况进行判断,为了便于叙述,本文将钟摆的特殊运动称为“奇偶单线的情况”。
Er=(a32+b32)/2-c42(1) 图1描述了用于进行鉴别物体运动和静止的四个场第一场n-2、第二n-1、第三场n、第四场n+1。请参阅图1,Er表示当前点的上、下两点a32、b32的均值与下一场对应点c42的差值。若Er很大,表示有单像素的水平线与下一场对应的地方有不同。若Er很小,属于正常情况。if Er>Tb Tmax=T1 Tmin=T2elseif Er>Tm Tmax=T1s+(Er-Tm)*(Tb-Tm)/(T2-T1s)(2) Tmin=T1s+(Er-Tm)*(Tb-Tm)/(T1-T1s)else Tmax=T1s Tmin=T1s 这里T1、T2为奇偶单线的情况下设定的最大最小值,T1默认为30,T2默认为10;T1s为正常情况下设定的运动点界限,默认为4;Tb为判断是否属于奇偶单线情况的大阈值,如钟摆中的OK,默认为200;Tm为判断是否属于奇偶单线情况的中阈值,默认为70,意味着黑白对比不是特别鲜明的单像素线,如运动物体引起的横线。
Tmin,Tmax为归一化阈值,是一个变量。当属于奇偶单线的情况时,归一化阈值选择T1,T2,大于T1肯定运动,小于T2肯定不运动。T1s为正常情况下设定的运动点界限,比较保守一些,大于T1s认为肯定属于运动,小于T1s属于静止,运动检测信息只选0和1。[Tm,Tb]之间的情况是为了防止画面在界限处出现过渡不均匀的情况,中间的Tmin,Tmax平缓过渡一下。当Er在[Tm,Tb]之间时,阈值求取示意图如图2所示。
步骤2,得到运动检测信息Im 步骤2.1,求四场n-2、n-1、n、n+1间五点差,取最大值 E=max(E1,E2,E3,E4,E5)(3) 其中,E1=|a32-a12|,E2=|b32-b12|,E3=|c42-c22|,E4=|c41-c21|,E5=|c43-c23|,待插入点的空间位置示意图如图1所示,第三场为当前场,带网格的中心点为当前预插值点,也就是上述的当前点。max(...)表示取括号内元素的最大值(全文同),E为当前点、上、下、左、右五点四场间差值的最大值,以此来判断运动与否的信息。
步骤2.2求周围五点为静止点的个数 之所以求周围五点为静止点的个数是因为有的最大阈值设置的太小,对静止条件要求太严,一些静止图像会误解为动态图像而内插,这种判断错误的直接后果就是图像在时域上不连续,带来视觉上的噪音或微动。因此单纯的用最大阈值有时不能准确判断运动信息,还需要用到周围五个点的信息。当静态图像因为判断条件严格而误判为运动时,采用判断相邻五点每个值,如果其中有3个点很接近,可以理解为是静态图像。
首先在计算每一点运动与否时都设如下初值 still_num=0 if E1<Td still_sum=still_sum+1 end if E2<Td still_sum=still_sum+1 end if E3<Td still_sum=still_sum+1 end if E4<Td still_sum=still_sum+1 end if E5<Td still_sum=still_sum+1(4) end 这里still_sum是指在当前点的上下点、左右点及其下一场对应点共5点,值相近的点的个数(静止点的个数),Td为周围像素相似程度阈值,设为7。still_sum为周围5点可能是静止的点的个数,其大于2,也就是说只要周围五点中有三点静止,就认为该五点包围的中心点是静止的。
步骤2.3获取运动检测信息Im (一)、当运动情况属于奇偶单线的情况时,运动检测信息Im如下获得 if Er>Tbif E≥Tmax Im=0elseif E>Tmin else Im=1end end (二)、当运动情况属于正常的情况时,运动检测信息Im如下获得if Er≤Tm if E≥TmaxIm=0if(E<(Td+10)) if still_sum>2 Im=1(6) endend elseIm=1 endend 以上内容表明,因为Tmax设置的太小,有些静止图像会误解为动态图像,导致时域上静止图像轻微的动。如果still_sum满足周围有三个以上的点被判别为静止,可以认为中心点也是静止的,此时修正运动检测信息Im=1,即静止。
(三)、当情况属于奇偶单线的情况和正常情况的过渡情况时,运动检测信息Im如下获得 if Tm<Er≤Tb if E≥Tmax Im=0 if(E<(Td+10))if still_sum>2 Im=1end end elseif E>Tmin if (E<(Td+10))if still_sum>2 Im=1 endend else(7)Im=1 end end 上式表明,因为两场之间不可避免的包含噪声,设定一个小的阈值Tmin,认定如差值小于Tmin则肯定属于静止区域,如大于较大的阈值Tmax,则肯定属于运动区域,若在两者之间则得到一个
之间的权值。另外为防止有些静止图像会误解为动态图像,如果still_sum满足周围有三个以上的点被判别为静止,可以认为中心点也是静止的,此时修正运动检测信息Im=1,即静止。
步骤3,场内图像内插 本发明采用基于四个方向边缘判断的中值滤波内插算法,可以根据图像内容判定相关度最高的方向,然后在此方向上进行插值,显然这种插值算法能够有效地保护物体边界,抑制有用信息的模糊。
步骤3.1,取四个方向中相关性最小者 定义4个方向相关性为 D1=(|a31-a33|+|b31-b33|+|a31-a32|+|b32-b33|)/2 D2=|a31-b31|+|a33-b33| D3=|a32-b31|+|a33-b32| (8) D4=|a31-b32|+|a32-b33| D=min(D1,D2,D3,D4) 其中D1为水平方向,为了防止误将单像素的竖线检测为水平方向,需要加上|a31-a32|+|a32-a33|的判断;D2为垂直方向;D3为63度角方向;D4为116度角方向。min(...)表示取括号内元素的最小值(全文同),D为D1,D2,D3,D4中最小值。D1,D2,D3,D4的数值大小表示待插值与对应方向上像素点的相关性,值越小相关性越强,针对相关性最大的方向进行插值。
步骤3.2,对相关性最小者进行插值 根据方向进行插值。方向相关性最大,D=D2,则 Fintra=(max(min(a31,a32,b31),min(b31,b32,a33),min(a32,b32))+(9) min(max(a31,a32,b31),max(b31,b32,a33),max(a32,b32)))/2 D3方向相关性最大,D=D3,则 Fintra=(max(min(a32,b31),min(a33,b32),min(a32,b32))+ (10) min(max(a32,b31),max(a33,b32),max(a32,b32)))/2 D4方向相关性最大,D=D4,则 Fintra=(max(min(a31,b32),min(a32,b33),min(a32,b32))+(11) min(max(a31,b32),max(a32,b33),max(a32,b32)))/2 若D1方向相关性最大,D=D1,则 Fintra=med(c42,a31,a32 a33,b31,b32,b33) (12) Fintra为第n场内插补得到的值。水平方向上因为本场没有相应的信息,所以可以采用下一场的对应点c42的信息。采用中值滤波,即通过取下一场对应点与本场的上下共六个点的中值得到。
步骤4输出去隔行图像 运动检测信息判断出来后,得到场内内插的图像后,用下式计算获取去隔行之后的图像 这里F(x,y,n)、F0(x,y,n)中的x,y表示插入点的行和列;F(x,y,n)中的n表示当前场,F0(x,y,n)中的n表示当前场进行插补后的当前帧;F(x,y,n)表示当前场插补前的值,F(x,y,n+1)表示下一场(第四场)插补前的值,F0(x,y,n)表示最终输出的去隔行后的图像,是一帧的信息。mod表示取余操作。上式表明,如果Im=1时,静止,表示当前场和下一场两场简单的交织在一起。该式子表示对静止区域采用场间插补,用相邻场同一位置的像素值作为待插补点的像素值,以提高其垂直清晰度;当Im<1时,对运动区域采用场内插补,以避免采用场间插补所引起的运动模糊,达到最佳的效果。
本发明还提供了应用上述设计方法的系统,该系统处理的原理方框图如图3所示。
该系统包括四个模块动态获取阈值模块,估计运动检测信息模块,内插模块,输出模块。动态获取阈值模块的输入为当前场(第三场)和后一场(第四场)信息,输出为Tmin,Tmax;最大估计运算检测信息模块的输入为四场信息和Tmin,Tmax,输出为运动检测信息Im;内插模块的输入为当前场和后一场的信息,输出为内插结果Fintra(x,y,n),这也是场信息;输出模块的输入为运动检测信息Im,内插结果Fintra(x,y,n),以及后一场的信息,输出为去隔行后的图像F0(x,y,n),这是一帧信息。
另外,本文中涉及的“if”表示“若”;else表示否则;end表示结束。
在集成电路复杂度不是十分高的情况下,本发明提供一种基于动态阈值的运动和边缘自适应的去隔行方法以及应用该设计方法的系统,可以有效地保护物体边缘,防止有用信息的模糊;同时可以根据不同的情况动态求取阈值,在不同的情况都能正确的检测运动和静止物体,得到很好的去隔行效果。
权利要求
1.一种基于动态阈值的运动和边缘自适应的去隔行方法,其特征在于,所述方法包括如下步骤
a.获取图像的四场数据,所述四场为第一、二、三、四场,其中第三场为当前场,当前场的当前点为待插入点;
b.根据当前场和第四场的数据,动态获取最大、最小阈值Tmax,Tmin;
c.获取当前点以及当前点的上、下、左、右共五点的四场间的差值E1、E2、E3、E4、E5,取五差值E1、E2、E3、E4、E5中的最大值为E;
d.将所述五差值E1、E2、E3、E4、E5分别与周围像素相似程度阈值Td比较,若前者小于后者,则该差值对应的点为静止点,进而获得静止点的个数;
e.根据步骤b求得的最大值E和步骤c求得的静止点的个数得到运动检测信息Im;
f.根据当前场的数据获得相关性最大的方向,然后在相关性最大的方向上进行插值,获得插值结果Fintra;
g.根据运动检测信息Im以及步骤b的插值结果Fintra,获得去隔行之后的图像。
2.如权利要求1所述的基于动态阈值的运动和边缘自适应的去隔行方法,其特征在于,步骤b中获得最大、最小阈值Tmax,Tmin采用的方法是
if Er>Tb
Tmax=T1
Tmin=T2
elseif Er>Tm
Tmax=T1s+(Er-Tm)*(Tb-Tm)/(T2-T1s)
Tmin=T1s+(Er-Tm)*(Tb-Tm)/(T1-T1s)
else
Tmax=T1s
Tmin=T1s
其中Er表示当前点的上、下两点的均值与下一场对应点的差值;T1、T2为物体运动为奇偶单线的情况下设定的最大最小值;T1s为物体运动为正常情况下设定的运动点界限;Tb为判断物体运动是否属于奇偶单线情况的大阈值;Tm为判断物体运动是否属于奇偶单线情况的中阈值。
3.如权利要求2所述的基于动态阈值的运动和边缘自适应的去隔行方法,其特征在于,在步骤e中,运动检测信息Im采用下述三种方法之一获得
一、当物体运动属于奇偶单线的情况时,获得运动检测信息Im的方法是
if Er>Tb
if E≥Tmax
Im=0
elseif E>Tmin
else
Im=1
end
end
二、当物体运动属于正常情况时,获得运动检测信息Im的方法是
if Er≤Tm
if E≥Tmax
Im=0
if(E<(Td+10))
if still_sum>2
Im=1
end
end
else
Im=1
end
end
其中still_sum表示步骤d中静止点的个数;
三、当物体运动属于介于奇偶单线的情况和正常情况之间的过渡情况时,获得运动检测信息Im采用方法是
if Tm<Er≤Tb
if E≥Tmax
Im=0
if (E<(Td+10))
if still_sum>2
Im=1
end
end
elseif E>Tmin
if(E<(Td+10))
if still_sum>2
Im=1
end
end
else
Im=1
end
end
4.如权利要求1所述的基于动态阈值的运动和边缘自适应的去隔行方法,其特征在于,在步骤f中通过选定四个方向D1、D2、D3、D4来获得相关性最大的方向。
5.如权利要求4所述的基于动态阈值的运动和边缘自适应的去隔行方法,其特征在于,所述D1为水平方向,D2为垂直方向,D3为63度角方向,D4为116度角方向。
6.如权利要求4或者5所述的基于动态阈值的运动和边缘自适应的去隔行方法,其特征在于,获得相关性最大的方向D的方法是
D1=(|a31-a33|+|b31-b33|+|a31-a32|+|b32-b33|)/2
D2=|a31-b31|+|a33-b33|
D3=|a32-b31|+|a33-b32|
D4=|a31-b32|+|a32-b33|
D=min(D1,D2,D3,D4)
其中,a31、a32、a33、b31、b32、b33分别表示当前点的上三点和下三点;min表示取最小值,相关性最大的方向D为D1,D2,D3,D4中最小值。
7.如权利要求6所述的基于动态阈值的运动和边缘自适应的去隔行方法,其特征在于,在步骤f中,采用下述四种方法之一来获得插值结果Fintra
一、D=D2,获得插值结果Fintra的方法是
Fintra=(max(min(a31,a32,b31),min(b31,b32,a33),min(a32,b32))+
min(max(a31,a32,a31),max(b31,b32,b33),max(a32,a32)))/2
二、D=D3,获得插值结果Fintra的方法是
Fintra=(max(min(a32,b31),min(a33,b32),min(a32,b32))+
min(max(a32,b31),max(a33,b32),max(a32,b32)))/2
三、D=D4,获得插值结果Fintra的方法是
Fintra=(max(min(a31,b32),min(a32,b33),min(a32,b32))+
min(max(a31,b32),max(a32,b33),max(a32,b32)))/2
四、D=D1,获得插值结果Fintra的方法是
Fintra=med(c42,a31 a32 a33,b31,b32,b33)
其中c42为当前点在第四场的对应点;max表示取最大值;min表示取最小值;med表示取中值。
8.如权利要求7所述的基于动态阈值的运动和边缘自适应的去隔行方法,其特征在于,获得去隔行之后的图像的方法是
其中F(x,y,n)中的n表示当前场,F0(x,y,n)中的n表示当前场所在的当前帧;F(x,y,n)表示当前场插补前的值,F(x,y,n+1)表示第四场插补前的值,F0(x,y,n)表示去隔行后的输出图像的帧信息;mod表示取余操作。
9.一种应用如权利要求1所述的基于动态阈值的运动和边缘自适应的去隔行方法的系统,其特征在于,所述系统包括动态获取阈值模块,估计运动检测信息模块,内插模块,输出模块;其中信息动态获取阈值模块的输入为当前场和第四场数据,输出为最大、最小阈值Tmax,Tmin;估计运算检测信息模块的输入为四场数据和Tmax,Tmin,输出为运动检测信息Im;内插模块的输入为当前场和第四场的数据,输出为内插结果Fintra;输出模块的输入为运动检测信息Im、内插结果Fintra、以及第四场的数据,输出为去隔行后的图像。
全文摘要
本发明公开了一种基于动态阈值的运动和边缘自适应的去隔行方法及系统。所述方法包括获取图像的四场数据,第三场为当前场,当前场的当前点为待插入点;动态获取最大、最小阈值;获取当前点以及上、下、左、右共五点的四场间差值,且取最大值;将五差值分别与周围像素相似程度阈值比较,若前者小于后者,则该差值对应的点为静止点,获得围绕当前点的静止点的个数;根据求得的最大值和静止点的个数得到运动检测信息;根据当前场的数据获得相关性最大的方向,然后在该方向上进行插值,获得插值结果;根据运动检测信息以及插值结果,获得去隔行之后的图像。本发明在集成电路复杂度不是十分高的情况下,有效地保护物体边缘,防止了有用信息的模糊。
文档编号H04N7/01GK101197997SQ20071017315
公开日2008年6月11日 申请日期2007年12月26日 优先权日2007年12月26日
发明者野 袁 申请人:上海广电集成电路有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1