专利名称:视频运动自适应去隔行的方法及装置的利记博彩app
技术领域:
本发明涉图像和视频处理中的去隔行技术。
背景技术:
由于人的视觉系统对图像细节的闪烁不敏感,因此广播电视标准采用了隔行扫描技术。然而,隔行扫描使许多图像处理变得复杂,尤其是扫描格式的转换。现在人们越来越关心图像的质量,以前的隔行图像不再满足观众对图像质量的要求,去隔行技术应运而生。去隔行就是把隔行扫描图像转换成逐行扫描图像,进行去隔行后的视频没有了扫描行、行间闪烁以及锯齿,另外,目前很多应用都采用逐行扫描,比如PC显示器、投影系统、视频会议系统,进行去隔行后的视频可以更方便地在这些逐行扫描的设备上进行显示、存储和传输。
隔行视频的输入场只包括图像的奇数或偶数场,去隔行就是要把“场”转换为“帧”。这些输出“帧”和对应的“场”表示的是同一幅图像,不同的是“帧”包含所有的行。
目前较为领先的去隔行算法是基于运动自适应的去隔行算法(也称为“非线性去隔行方法”),其步骤包括运动检测、空间插值(即场内插值)、时域插值(即场间插值),对于运动检测判断为静止的图像,采用时域插值算法,使得要插的值倾向介于当前场中与它相邻位置点的值之间;对于运动检测判断为运动的图像,利用运动物体的当前场中相邻象素之间的相关性,采用空间插值算法。
常用的运动自适应去隔行算法使用四场中3×3邻域的象素点进行运动自适应去隔行,该方法对图像运动部分的边沿部分检测效果很好,但对内部大片运动区域检测时出现错误,造成大片的运动丢失,而且使用四场的数据也会带来较大的硬件实现代价。同时其空间插值算法是基于边缘方向的检测,使用3×3的sobel算子分别计算水平梯度和垂直梯度,然后根据边缘方向不同的情况采用不同的插值方法,但该算法对图象细节部分的处理不够理想,这主要是因为在图像的粗分类过程中不能正确地检测细小的边缘方向。
发明内容
本发明的目的是为了克服已有技术的不足,提出了一种基于三场实现的视频运动自适应去隔行的方法,采用该方法能够正确地检测图像细节和图像边缘方向,避免大片面积图像的丢失,该方法的实现具有较小硬件代价。
同时本发明还提出一种用于视频运动自适应去隔行的运动检测模块。
视频运动自适应去隔行的方法,包括以下步骤 (1)进行运动检测,判断图像的运动状态; 选取当前场F(n)和后一场F(n+1)中的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,进行下列判断 (A)通过当前待插场F(n)和后一场F(n+1)对应点之间的运动向量差值,判断是否 |cn+1-ucn|>thr1 and|cn+1-dcn|>thr1 其中,thr1=5 还可进一步判断是否 |cn+1-ucn|>thr1and|cn+1-dcn|>thr1 and|ucn+1-ucn|>thr1 and |dcn+1-dcn|>thr1 (B)判断是否sign(cn+1-ucn)=sign(cn+1-dcn) 还可以进一步判断是否 sign(cn+1-ucn)=sign(cn+1-dcn)=sign(ucn+1-ucn)=sign(dcn+1-dcn) sign(x)表示值x的符号,1为正,0为负 (C)选取前一场F(n-1)中的图像数据,其中cn-1为前一场F(n-1)中对应当前场F(n)的cn值,判断是否|cn+1-cn-1|>thr2 其中,thr2=10。
若同时满足(A)、(B)以及(C),则当前场F(n)待插值cn为运动的,否则为静止的。
为进一步准确判断当前场F(n)待插值cn的运动状态,还可进行以下判断 (A)如果当前场F(n)待插值cn为运动点,其相邻8个点中运动点的个数与阈值thr3比较,如果大于thr3,则判定cn为运动点,反之cn为静止点,其中所述阈值thr3=3。
(B)如果当前场F(n)待插值cn为静止点,其相邻8个点中运动点的个数与阈值thr4比较,如果大于thr4,则判定cn为运动点,反之cn为静止点,其中所述阈值thr4=4。
(2)经过运动检测判断出当前场F(n)待插值cn为运动的,则执行空间插值运算,包括如下步骤 (A)采用Sobel算子分别来计算当前场F(n)待插值cn在水平方向的梯度系数Ch和和垂直方向的Cv,其中P1、N1、N2、N3、P2为待插值cn上行从左到右依次排列的五个点,N2在待插值cn的正上方,P3、N4、N5、N6、P4为待插值cn下行从左到右依次排列的五个点,N5在待插值cn的正下方。
Ch=|N1+2N2+N3-N4-2N5-N6| Cv=|N1-N3+N4-N6| (B)同时,选择当前场F(n)待插值cn两个对角线方向上的4个对角像素,计算两个对角线像素距离的差值D0; D0=||N1-N6|-|N3-N4|| 判断过程如下 (a)如果(Ch<thh)或(D0<thd0),则判断出当前场F(n)待插值cn处于平坦区域或垂直边缘区域,当前场F(n)待插值cn的值等于当前场F(n)待插值cn上下两个点(N2和N5)的均值; (b)如果(Ch≥thh)且(Cv<thv)且(D0>thd0),则判断出当前场F(n)待插值cn处于水平边缘区域,当前场F(n)待插值cn点的值由对角像素的均值得到,所述对角像素的均值选择对角线上的像素点差值较小的两点的均值;(若P1和P4的差值小于P2和P3的差值,前场F(n)待插值cn的值取P1和P4的均值,否则前场F(n)待插值cn的值取P2和P3的均值。) (c)如果(Ch≥thh)且(Cv≥thv)且(D0>thd0),则判断出前场F(n)待插值cn处于对角边缘区域,进行对角边缘细化,找出最佳的边缘方向, 其中,thh=thv=10,thd0=6。
所述的对角边缘方向细化的方法,包括如下步骤 (a)计算边缘的方向,计算边缘与x轴的夹角A,得到a0、a1、a2、a3四种边沿方向方向a0通过第一象限和第五象限,方向a1通过第二象限和第六象限,方向a2通过第三象限和第七象限;方向a3通过第四象限和第八象限,从而将像素点位置分为八个象限; (b)用线性插值算法计算出用于插值的亚象素点。(例如相邻两个象素点U1和U2之间插入三个亚象素点u11、u12、u13,其中 (c)针对不同的边缘方得到待插值cn在a0方向时,cn为第一或第五象限内的像素点或亚像素点的均值;在a1方向时,cn为第二或第六象限内的像素点或亚像素点的均值;在a2方向时,cn为第三或第七象限内的像素点或亚像素点的均值;在a3方向时,cn为第四或第八象限内的像素点或亚像素点的均值。
(3)经过运动检测判断出当前场F(n)待插值cn为静止的,则执行时域插值计算待插值cn 所述的时域插值采用线性时域滤波算法,用前后两场对应象素点的亮度均值进行插补,插值公式为 cn=(cn-1+cn+1)/2 一种视频运动自适应去隔行的装置,包括运动检测模块、空间插值运算模块、时域插值运算模块以及运动自适应模块,所述的运动检测模块输入当前场F(n)、后一场F(n+1)以及前一场F(n-1)中的图像数据,所述的空间插值运算模块输入当前场F(n)的图像数据,所述的时域插值运算模块输入后一场F(n+1)以及前一场F(n-1)的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,cn-1为前一场F(n-1)中对应当前场F(n)的cn对应的点,所述运动检测模块、空间插值运算模块、时域插值运算模块连接运动自适应模块。
所述的运动检测模块判断图像的运动状态,根据当前场和后一场的图像运动状态,以及前一场和后一场的图像运动状态判断当前场F(n)待插值cn为是否为运动的,若cn为运动的,则输出为第一状态;若为静止的,则输出为第二状态。
所述运动自适应模块判断运动检测模块的输出,运动检测模块的输出为第一状态时,即当前点为运动,则运动自适应模块选择输出空间插值运算模块的结果;运动检测模块的输为第二状态,即当前点为静止,则运动自适应模块选择输出时域插值运算模块的结果。
所述空间插值运算模块沿边缘方向做空间插值,在当前帧各自的象素位置计算边缘方向。
所述时域插值运算模块根据前一帧和后一帧的象素计算当前帧。
其中,所述的运动检测模块,其特征在于所述的运动检测模块输入当前场F(n)和后一场F(n+1)中的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,进行 (A)计算是否 |cn+1-ucn|>thr1 and|cn+1-dcn|>thr1 其中,thr1=5 进一步计算是否 |cn+1-ucn|>thr1 and|cn+1-dcn|>thr1 and|ucn+1-ucn|>thr1 and|dcn+1-dcn|>thr1 (B)计算是否sign(cn+1-ucn)=sign(cn+1-dcn) 进一步计算是否 sign(cn+1-ucn)=sign(cn+1-dcn)=sign(ucn+1-ucn)=sign(dcn+1-dcn) sign(x)表示x值的符号,1为正,0为负 (C)选取前一场F(n-1)中的图像数据,其中cn-1为前一场F(n-1)中对应当前场F(n)的cn值,计算是否|cn+1-cn-1|>thr2 其中,thr2=10。
若同时满足(A)、(B)以及(C),则运动检测模块判断当前场F(n)待插值cn为运动的,输出第一状态,否则为静止的,输出第二状态。
为进一步准确判断当前场F(n)待插值cn的运动状态,所述的运动检测模块还可进行以下判断 (A)如果当前场F(n)待插值cn为运动点,其相邻8个点中运动点的个数与阈值thr3比较,如果大于thr3,则判定cn为运动点,反之cn为静止点,其中所述阈值thr3=3。
(B)如果当前场F(n)待插值cn为静止点,其相邻8个点中运动点的个数与阈值thr4比较,如果大于thr4,则判定cn为运动点,反之cn为静止点,其中所述阈值thr4=4。
其中,所述的空间插值模块 (A)采用Sobel算子分别来计算当前场F(n)待插值cn在水平方向和垂直方向上的梯度系数Ch和Cv 其中P1、N1、N2、N3、P2为待插值cn上行从左到右依次排列的五个点,N2在待插值cn的正上方,P3、N4、N5、N6、P4为待插值cn下行从左到右依次排列的五个点,N5在待插值cn的正下方。
Ch=|N1+2N2+N3-N4-2N5-N6| Cv=|N1-N3+N4-N6| (B)同时,选择当前场F(n)待插值cn两个对角线方向上的4个对角像素,计算两个对角线像素距离的差值D0; D0=||N1-N6|-|N3-N4|| 判断过程如下 (a)如果(Ch<thh)或(D0<thd0),则判断出当前场F(n)待插值cn处于平坦区域或垂直边缘区域,当前场F(n)待插值cn的值等于当前场F(n)待插值cn上下两个点的均值; (b)如果(Ch≥thh)且(Cv<thv)且(D0>thd0),则判断出当前场F(n)待插值cn处于水平边缘区域,当前场F(n)待插值cn点的值由对角像素的均值得到,所述对角像素的均值选择对角线上的像素点差值较小的两点的均值; (c)如果(Ch≥thh)且(Cv≥thv)且(D0>thd0),则判断出前场F(n)待插值cn处于对角边缘区域,空间插值模块进行对角边缘细化,找出最佳的边缘方向, 其中,thh=thv=10,thd0=6。
所述空间插值模块进行的对角边缘方向细化为 (a)计算边缘与x轴的夹角A,得到a0、a1、a2、a3四种边沿方向方向a0通过第一象限和第五象限,方向a1通过第二象限和第六象限,方向a2通过第三象限和第七象限;方向a3通过第四象限和第八象限,从而将像素点位置分为八个象限; (b)用线性插值算法计算出用于插值的亚象素点。
(c)针对不同的边缘方得到待插值cn在a0方向时,cn为第一或第五象限内的像素点或亚像素点的均值;在a1方向时,cn为第二或第六象限内的像素点或亚像素点的均值;在a2方向时,cn为第三或第七象限内的像素点或亚像素点的均值;在a3方向时,cn为第四或第八象限内的像素点或亚像素点的均值。
其中,所述的时域插值模块采用线性时域滤波算法,用前后两场对应象素点的亮度均值进行插补,插值公式为cn=(cn-1+cn+1)/2 利用本发明可以正确地检测图像细节和图像边缘方向,避免大片面积的图像的丢失,改善了大面积运动区域运动检测的效果,减少了插值不当造成的边缘锯齿。由于本发明只用到三场的数据,因此本发明具有运算少,较小硬件代价实现。
图1为本发明基于三场的运动检测算法所用到的象素点示意图 图2为本发明计算梯度系数 图3为本发明边缘方向判断 图4为本发明插值参考点 图5为本发明视频运动自适应去隔行装置
具体实施例方式 以下结合附图对本实用新型内容进一步说明。
视频运动自适应去隔行的方法,包括以下步骤 (2)进行运动检测,判断图像的运动状态; 选取当前场F(n)和后一场F(n+1)中的图像数据,如图1所示,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,进行下列判断 (A)通过当前待插场F(n)和后一场F(n+1)对应点之间的运动向量差值,判断是否|cn+1-ucn|>thr1 and|cn+1-dcn|>thr1 and|ucn+1-ucn|>thr1 and|dcn+1-dcn|>thr1 其中,thr1=5 (B)判断是否 sign(cn+1-ucn)=sign(cn+1-dcn)=sign(ucn+1-ucn)=sign(dcn+1-dcn) sign(x)表示值x的符号,1为正,0为负 (C)选取前一场F(n-1)中的图像数据,其中cn-1为前一场F(n-1)中对应当前场F(n)的cn值,判断是否|cn+1-cn-1|>thr2 其中,thr2=10。
若同时满足(A)、(B)以及(C),则当前场F(n)待插值cn为运动的,否则为静止的。
为进一步准确判断当前场F(n)待插值cn的运动状态,还可进行以下判断 (A)如果当前场F(n)待插值cn为运动点,其相邻8个点中运动点的个数与阈值thr3比较,如果大于thr3,则判定cn为运动点,反之cn为静止点,其中所述阈值thr3=3。
(B)如果当前场F(n)待插值cn为静止点,其相邻8个点中运动点的个数与阈值thr4比较,如果大于thr4,则判定cn为运动点,反之cn为静止点,其中所述阈值thr4=4。
(2)经过运动检测判断出当前场F(n)待插值cn为运动的,则执行空间插值运算,包括如下步骤 (A)采用Sobel算子分别来计算当前场F(n)待插值cn在水平方向的梯度系数Ch和和垂直方向的Cv,其中P1、N1、N2、N3、P2为待插值cn上行从左到右依次排列的五个点,如图2所示,N2在待插值cn的正上方,P3、N4、N5、N6、P4为待插值cn下行从左到右依次排列的五个点,N5在待插值cn的正下方。
Ch=|N1+2N2+N3-N4-2N5-N6| Cv=|N1-N3+N4-N6| (B)同时,选择当前场F(n)待插值cn两个对角线方向上的4个对角像素,计算两个对角线像素距离的差值D0; D0=||N1-N6|-|N3-N4|| 判断过程如下 (a)如果(Ch<thh)或(D0<thd0),则判断出当前场F(n)待插值cn处于平坦区域或垂直边缘区域,当前场F(n)待插值cn的值等于当前场F(n)待插值cn上下两个点N2和N5的均值; (b)如果(Ch≥thh)且(Cv<thv)且(D0>thd0),则判断出当前场F(n)待插值cn处于水平边缘区域,当前场F(n)待插值cn点的值由对角像素的均值得到,所述对角像素的均值选择对角线上的像素点差值较小的两点的均值;若P1和P4的差值小于P2和P3的差值,前场F(n)待插值cn的值取P1和P4的均值,否则前场F(n)待插值cn的值取P2和P3的均值。
(c)如果(Ch≥thh)且(Cv≥thv)且(D0>thd0),则判断出前场F(n)待插值cn处于对角边缘区域,进行对角边缘细化,找出最佳的边缘方向, 其中,thh=thv=10,thd0=6。
所述的对角边缘方向细化的方法,包括如下步骤 (a)计算边缘的方向,计算边缘与x轴的夹角A,得到a0、a1、a2、a3四种边沿方向方向a0通过第一象限和第五象限,方向a1通过第二象限和第六象限,方向a2通过第三象限和第七象限;方向a3通过第四象限和第八象限,从而将像素点位置分为八个象限; (b)用线性插值算法计算出用于插值的亚象素点。在图4中,相邻两个象素点U1和U2之间插入三个亚象素点u11、u12、u13,其中 (c)针对不同的边缘方向得到待插值cn在a0方向时,cn为第一或第五象限内的像素点或亚像素点的均值;在a1方向时,cn为第二或第六象限内的像素点或亚像素点的均值;在a2方向时,cn为第三或第七象限内的像素点或亚像素点的均值;在a3方向时,cn为第四或第八象限内的像素点或亚像素点的均值。
(3)经过运动检测判断出当前场F(n)待插值cn为静止的,则执行时域插值计算待插值cn 所述的时域插值采用线性时域滤波算法,用前后两场对应象素点的亮度均值进行插补,插值公式为 cn=(cn-1+cn+1)/2 一种视频运动自适应去隔行的装置,如图5所示,包括运动检测模块(1)、空间插值运算模块(2)、时域插值运算模块(3)以及运动自适应模块(4),所述的运动检测模块(1)输入当前场F(n)、后一场F(n+1)以及前一场F(n-1)中的图像数据,所述的空间插值运算模块(2)输入当前场F(n)的图像数据,所述的时域插值运算模块(3)输入后一场F(n+1)以及前一场F(n-1)的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,cn-1为前一场F(n-1)中对应当前场F(n)的cn对应的点,所述运动检测模块(1)、空间插值运算模块(2)、时域插值运算模块(3)连接运动自适应模块(4)。
所述的运动检测模块(1)判断图像的运动状态,根据当前场和后一场的图像运动状态,以及前一场和后一场的图像运动状态判断当前场F(n)待插值cn为是否为运动的,若cn为运动的,则输出为第一状态;若为静止的,则输出为第二状态。
所述运动自适应模块(4)判断运动检测模块(1)的输出,运动检测模块(1)的输出为第一状态时,即当前点为运动,则运动自适应模块(4)选择输出空间插值运算模块(2)的结果;运动检测模块(1)的输为第二状态,即当前点为静止,则运动自适应模块(4)选择输出时域插值运算模块(3)的结果。
所述空间插值运算模块(2)沿边缘方向做空间插值,在当前帧各自的象素位置计算边缘方向。
所述时域插值运算模块(3)根据前一帧和后一帧的象素计算当前帧。
其中,所述的运动检测模块(1),其特征在于所述的运动检测模块输入当前场F(n)和后一场F(n+1)中的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,进行 (A)计算是否 |cn+1-ucn|>thr1 and|cn+1-dcn|>thr1 and|ucn+1-ucn|>thr1 and|dcn+1-dcn|>thr1 其中,thr1=5 (B)计算是否 sign(cn+1-ucn)=sign(cn+1-dcn)=sign(ucn+1-ucn)=sign(dcn+1-dcn) sign(x)表示x值的符号,1为正,0为负 (C)选取前一场F(n-1)中的图像数据,其中cn-1为前一场F(n-1)中对应当前场F(n)的cn值,计算是否|cn+1-cn-1|>thr2 其中,thr2=10。
若同时满足(A)、(B)以及(C),则运动检测模块判断当前场F(n)待插值cn为运动的,输出第一状态,否则为静止的,输出第二状态。
为进一步准确判断当前场F(n)待插值cn的运动状态,所述的运动检测模块(1)还可进行以下判断 (A)如果当前场F(n)待插值cn为运动点,其相邻8个点中运动点的个数与阈值thr3比较,如果大于thr3,则判定cn为运动点,反之cn为静止点,其中所述阈值thr3=3。
(B)如果当前场F(n)待插值cn为静止点,其相邻8个点中运动点的个数与阈值thr4比较,如果大于thr4,则判定cn为运动点,反之cn为静止点,其中所述阈值thr4=4。
其中,所述的空间插值模块 (A)采用Sobel算子分别来计算当前场F(n)待插值cn在水平方向和垂直方向上的梯度系数Ch和Cv,其中P1、N1、N2、N3、P2为待插值cn上行从左到右依次排列的五个点,N2在待插值cn的正上方,P3、N4、N5、N6、P4为待插值cn下行从左到右依次排列的五个点,N5在待插值cn的正下方。
Ch=|N1+2N2+N3-N4-2N5-N6| Cv=|N1-N3+N4-N6| (B)同时,选择当前场F(n)待插值cn两个对角线方向上的4个对角像素,计算两个对角线像素距离的差值D0; D0=||N1-N6|-|N3-N4|| 判断过程如下 (a)如果(Ch<thh)或(D0<thd0),则判断出当前场F(n)待插值cn处于平坦区域或垂直边缘区域,当前场F(n)待插值cn的值等于当前场F(n)待插值cn上下两个点N2和N5的均值; (b)如果(Ch≥thh)且(Cv<thv)且(D0>thd0),则判断出当前场F(n)待插值cn处于水平边缘区域,当前场F(n)待插值cn点的值由对角像素的均值得到,所述对角像素的均值选择对角线上的像素点差值较小的两点的均值;若P1和P4的差值小于P2和P3的差值,前场F(n)待插值cn的值取P1和P4的均值,否则前场F(n)待插值cn的值取P2和P3的均值。
(c)如果(Ch≥thh)且(Cv≥thv)且(D0>thd0),则判断出前场F(n)待插值cn处于对角边缘区域,空间插值模块进行对角边缘细化,找出最佳的边缘方向, 其中,thh=thv=10,thd0=6。
所述空间插值模块进行的对角边缘方向细化为 (a)计算边缘与x轴的夹角A,得到a0、a1、a2、a3四种边沿方向方向a0通过第一象限和第五象限,方向a1通过第二象限和第六象限,方向a2通过第三象限和第七象限;方向a3通过第四象限和第八象限,从而将像素点位置分为八个象限; (b)用线性插值算法计算出用于插值的亚象素点。相邻两个象素点U1和U2之间插入三个亚象素点u11、u12、u13,其中 (c)针对不同的边缘方得到待插值cn在a0方向时,cn为第一或第五象限内的像素点或亚像素点的均值;在a1方向时,cn为第二或第六象限内的像素点或亚像素点的均值;在a2方向时,cn为第三或第七象限内的像素点或亚像素点的均值;在a3方向时,cn为第四或第八象限内的像素点或亚像素点的均值。
其中,所述的时域插值模块采用线性时域滤波算法,用前后两场对应象素点的亮度均值进行插补,插值公式为cn=(cn-1+cn+1)/2 应该理解到的是,上述实施例只是对本发明的说明,而不是对本发明的限制,任何不超出本发明实质精神范围内的发明创造,均落入本发明保护范围之内。
权利要求
1.视频运动自适应去隔行的方法,其特征在于包括以下步骤
(1)进行运动检测,判断图像的运动状态选取当前场F(n)和后一场F(n+1)中的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,进行下列判断
(A)通过当前待插场F(n)和后一场F(n+1)对应点之间的运动向量差值,判断是否
|cn+1-ucn|>thr1 and|cn+1-dcn|>thr1
(B)判断是否sign(cn+1-ucn)=sign(cn+1-dcn)
sign()表示值的符号,1表示为正,0表示为负
(C)选取前一场F(n-1)中的图像数据,其中cn-1为前一场F(n-1)中对应当前场F(n)的cn值,判断是否|cn+1-cn-1|>thr2
若同时满足(A)、(B)以及(C),则当前场F(n)待插值cn为运动的,否则为静止的。
(2)经过运动检测判断出当前场F(n)待插值cn为运动的,则执行空间插值运算,包括如下步骤
(A)计算当前场F(n)待插值cn在水平方向的梯度系数Ch和和垂直方向的Cv,
(B)同时,选择当前场F(n)待插值cn两个对角线方向上的4个对角像素,计算两个对角线像素距离的差值D0;
如果(Ch<thh)或(D0<thd0),则判断出当前场F(n)待插值cn处于平坦区域或垂直边缘区域,当前场F(n)待插值cn的值等于当前场F(n)待插值cn上下两个点的均值;
如果(Ch≥thh)且(Cv<thv)且(D0>thd0),则判断出当前场F(n)待插值cn处于水平边缘区域,当前场F(n)待插值cn点的值由对角像素的均值得到,所述对角像素的均值选择对角线上的像素点差值较小的两点的均值;
如果(Ch≥thh)且(Cv≥thv)且(D0>thd0),则判断出前场F(n)待插值cn处于对角边缘区域,进行对角边缘细化,找出最佳的边缘方向,
(3)经过运动检测判断出当前场F(n)待插值cn为静止的,执行时域插值计算待插值cn
2.如权利要求1所述的视频运动自适应去隔行的方法,其特征在于步骤(1)(A)替换为判断是否|cn+1-ucn|>thr1 and|cn+1-dcn|>thr1 and|ucn+1-ucn|>thr1 and|dcn+1-dcn|>thr1
3.如权利要求1所述的视频运动自适应去隔行的方法,其特征在于步骤(1)(B)替换为判断是否sign(cn+1-ucn)=sign(cn+1-dcn)=sign(ucn+1-ucn)=sign(dcn+1-dcn)
4.如权利要求1所述的视频运动自适应去隔行的方法,其特征在于进行步骤(1)(C)后,进一步判断待插值cn的运动状态
(A)如果当前场F(n)待插值cn为运动点,其相邻点中运动点的个数与阈值thr3比较,如果大于thr3,则判定cn为运动点,反之cn为静止点。
(B)如果当前场F(n)待插值cn为静止点,其相邻点中运动点的个数与阈值thr4比较,如果大于thr4,则判定cn为运动点,反之cn为静止点。
5.如权利要求1所述的视频运动自适应去隔行的方法,其特征在于步骤(2)(A)梯度系数Ch和Cv的计算方法采用Sobel算子,其中P1、N1、N2、N3、P2为待插值cn上行从左到右依次排列的五个点,N2在待插值cn的正上方,P3、N4、N5、N6、P4为待插值cn下行从左到右依次排列的五个点,N5在待插值cn的正下方。
Ch=|N1+2N2+N3-N4-2N5-N6|
Cv=|N1-N3+N4-N6|
6.如权利要求1所述的视频运动自适应去隔行的方法,其特征在于步骤(2)(B)两个对角线像素距离的差值的计算方法为D0=||N1-N6|-|N3-N4||
7.如权利要求1所述的视频运动自适应去隔行的方法,其特征在于步骤(2)所述对角边缘方向细化的方法,包括如下步骤
(a)计算边缘的方向,计算边缘与x轴的夹角A,得到a0、a1、a2、a3四种边沿方向方向a0通过第一象限和第五象限,方向a1通过第二象限和第六象限,方向a2通过第三象限和第七象限;方向a3通过第四象限和第八象限,从而将像素点位置分为八个象限;
(b)用线性插值算法计算出用于插值的亚象素点。
(c)针对不同的边缘方得到待插值cn在a0方向时,cn为第一或第五象限内的像素点或亚像素点的均值;在a1方向时,cn为第二或第六象限内的像素点或亚像素点的均值;
在a2方向时,cn为第三或第七象限内的像素点或亚像素点的均值;在a3方向时,cn为第四或第八象限内的像素点或亚像素点的均值。
8.如权利要求1所述的视频运动自适应去隔行的方法,其特征在于步骤(3)所述的时域插值采用线性时域滤波算法,用前后两场对应象素点的亮度均值进行插补,插值公式为
cn=(cn-1+cn+1)/2
9.如权利要求1-8所述的视频运动自适应去隔行的方法,其特征在于所述的thr1=5、thr2=10,thh=thv=10,thd0=6Thr3=3、Thr4=4。
10.一种运动检测方法,其特征在于选取当前场F(n)和后一场F(n+1)中的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,进行下列判断
(A)通过当前待插场F(n)和后一场F(n+1)对应点之间的运动向量差值,判断是否
|cn+1-ucn|>thr1 and|cn+1-dcn|>thr1
(B)判断是否sign(cn+1-ucn)=sign(cn+1-dcn)
sign()表示值的符号,1表示为正,0表示为负
(C)选取前一场F(n-1)中的图像数据,其中cn-1为前一场F(n-1)中对应当前场F(n)的cn值,判断是否|cn+1-cn-1|>thr2
若同时满足(A)、(B)以及(C),则当前场F(n)待插值cn为运动的,否则为静止的。
11.如权利要求10所述的运动检测方法的方法,其特征在于步骤(A)替换为判断是否|cn+1-ucn|>thr1 and|cn+1-dcn|>thr1 and|ucn+1-ucn|>thr1 and|dcn+1-dcn|>thr1
12.如权利要求10所述的运动检测方法的方法,其特征在于步骤(B)替换为判断是否sign(cn+1-ucn)=sign(cn+1-dcn)=sign(ucn+1-ucn)=sign(dcn+1-dcn)
13.如权利要求10所述的运动检测方法的方法,其特征在于进行步骤(C)后,进一步判断待插值cn的运动状态
(A)如果当前场F(n)待插值cn为运动点,其相邻点中运动点的个数与阈值thr3比较,如果大于thr3,则判定cn为运动点,反之cn为静止点。
(B)如果当前场F(n)待插值cn为静止点,其相邻点中运动点的个数与阈值thr4比较,如果大于thr4,则判定cn为运动点,反之cn为静止点。
14.如权利要求10-13所述的运动检测方法的方法,其特征在于所述的thr1=5、thr2=10,thh=thv=10,thd0=6Thr3=3、Thr4=4。
15.一种图像对角边缘方向细化的方法,包括如下步骤
(a)计算图像边缘与x轴的夹角A,得到a0、a1、a2、a3四种边沿方向方向a0通过第一象限和第五象限,方向a1通过第二象限和第六象限,方向a2通过第三象限和第七象限;方向a3通过第四象限和第八象限,从而将像素点位置分为八个象限;
(b)用线性插值算法计算出用于插值的亚象素点。
(c)针对不同的边缘方得到待插值cn在a0方向时,cn为第一或第五象限内的像素点或亚像素点的均值;在a1方向时,cn为第二或第六象限内的像素点或亚像素点的均值;在a2方向时,cn为第三或第七象限内的像素点或亚像素点的均值;在a3方向时,cn为第四或第八象限内的像素点或亚像素点的均值。
16.一种视频运动自适应去隔行的装置,包括运动检测模块、空间插值运算模块、时域插值运算模块以及运动自适应模块,所述的运动检测模块输入当前场F(n)、后一场F(n+1)以及前一场F(n-1)中的图像数据,所述的空间插值运算模块输入当前场F(n)的图像数据,所述的时域插值运算模块输入后一场F(n+1)以及前一场F(n-1)的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,cn-1为前一场F(n-1)中对应当前场F(n)的cn对应的点,所述运动检测模块、空间插值运算模块、时域插值运算模块连接运动自适应模块,运动自适应模块根据运动检测模块的判断结果,选择空间插值运算模块或时域插值运算模块的输出。
17.如权利要求16所述的视频运动自适应去隔行的装置,其特征在于所述运动检测模块判断图像的运动状态,根据当前场和后一场的图像运动状态,以及前一场和后一场的图像运动状态判断当前场F(n)待插值cn为是否为运动的,若cn为运动的,则输出为第一状态;若为静止的,则输出为第二状态。
18.如权利要求16所述的视频运动自适应去隔行的装置,其特征在于所述运动自适应模块判断运动检测模块的输出,运动检测模块的输出为第一状态时,即当前点为运动,则运动自适应模块选择输出空间插值运算模块的结果;运动检测模块的输为第二状态,即当前点为静止,则运动自适应模块选择输出时域插值运算模块的结果。
19.如权利要求16所述的视频运动自适应去隔行的装置,其特征在于所述空间插值运算模块沿边缘方向做空间插值,在当前帧各自的象素位置计算边缘方向。
20.如权利要求16所述的视频运动自适应去隔行的装置,其特征在于所述时域插值运算模块根据前一帧和后一帧的象素计算当前帧。
21.如权利要求17所述的视频运动自适应去隔行的装置,其特征在于所述的运动检测模块输入当前场F(n)和后一场F(n+1)中的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,进行下列判断
(A)计算是否|cn+1-ucn|>thr1 and|cn+1-dcn|>thr1
(B)计算是否sign(cn+1-ucn)=sign(cn+1-dcn)
sign()表示值的符号,1表示为正,0表示为负
(C)选取前一场F(n-1)中的图像数据,其中cn-1为前一场F(n-1)中对应当前场F(n)的cn值,判断是否|cn+1-cn-1|>thr2
若同时满足(A)、(B)以及(C),则运动检测模块判断当前场F(n)待插值cn为运动的,输出第一状态,否则为静止的,输出第二状态。
22.如权利要求21所述的视频运动自适应去隔行的装置,其特征在于将(A)的计算替换为|cn+1-ucn|>thr1 and|cn+1-dcn|>thr1 and|ucn+1-ucn|>thr1 and|dcn+1-dcn|>thr1
23.如权利要求21所述的视频运动自适应去隔行的装置,其特征在于将(B)的计算替换为sign(cn+1-ucn)=sign(cn+1-dcn)=sign(ucn+1-ucn)=sign(dcn+1-dcn)
24.如权利要求21所述的视频运动自适应去隔行的装置,进一步判断待插值cn的运动状态(A)如果当前场F(n)待插值cn为运动点,其相邻点中运动点的个数与阈值thr3比较,如果大于thr3,则判定cn为运动点,反之cn为静止点。
(B)如果当前场F(n)待插值cn为静止点,其相邻点中运动点的个数与阈值thr4比较,如果大于thr4,则判定cn为运动点,反之cn为静止点。
25.如权利要求19所述的视频运动自适应去隔行的装置,其特征在于所述的空间插值模块计算当前场F(n)待插值cn在水平方向的梯度系数Ch和和垂直方向的Cv,同时选择当前场F(n)待插值cn两个对角线方向上的4个对角像素,计算两个对角线像素距离的差值D0;
如果(Ch<thh)或(D0<thd0),则判断出当前场F(n)待插值cn处于平坦区域或垂直边缘区域,当前场F(n)待插值cn的值等于当前场F(n)待插值cn上下两个点的均值;
如果(Ch≥thh)且(Cv<thv)且(D0>thd0),则判断出当前场F(n)待插值cn处于水平边缘区域,当前场F(n)待插值cn点的值由对角像素的均值得到,所述对角像素的均值选择对角线上的像素点差值较小的两点的均值;
如果(Ch≥thh)且(Cv≥thv)且(D0>thd0),则判断出前场F(n)待插值cn处于对角边缘区域,进行对角边缘细化,找出最佳的边缘方向,
26.如权利要求21-24所述的视频运动自适应去隔行的装置,其特征在于所述的thr1=5、thr2=10,Thr3=3、Thr4=4。
27.运动检测模块,其特征在于输入当前场F(n)和后一场F(n+1)中的图像数据,其中cn为当前场F(n)的待插值,ucn为cn上行对应的点、dcn为cn下行对应的点,cn+1为后一场F(n+1)中对应于cn点的值,ucn+1为cn+1上行对应的点,dcn+1为cn+1下行对应的点,进行下列判断
(A)计算是否|cn+1-ucn|>thr1 and|cn+1-dcn|>thr1
(B)计算是否sign(cn+1-ucn)=sign(cn+1-dcn)
sign()表示值的符号,1表示为正,0表示为负
(C)选取前一场F(n-1)中的图像数据,其中cn-1为前一场F(n-1)中对应当前场F(n)的cn值,判断是否|cn+1-cn-1|>thr2
若同时满足(A)、(B)以及(C),则运动检测模块判断当前场F(n)待插值cn为运动的,输出第一状态,否则为静止的,输出第二状态。
28.如权利要求27所述的运动检测模块,其特征在于将(A)的计算替换为|cn+1-ucn|>thr1 and|cn+1-dcn|>thr1 and|ucn+1-ucn|>thr1 and|dcn+1-dcn|>thr1
29.如权利要求27所述的运动检测模块,其特征在于将(B)的计算替换为sign(cn+1-ucn)=sign(cn+1-dcn)=sign(ucn+1-ucn)=sign(dcn+1-dcn)
30.如权利要求27所述的运动检测模块,进一步判断待插值cn的运动状态
(A)如果当前场F(n)待插值cn为运动点,其相邻点中运动点的个数与阈值thr3比较,如果大于thr3,则判定cn为运动点,反之cn为静止点。
(B)如果当前场F(n)待插值cn为静止点,其相邻点中运动点的个数与阈值thr4比较,如果大于thr4,则判定cn为运动点,反之cn为静止点。
31.如权利要求27-30所述的运动检测模块,其特征在于所述的thr1=5、thr2=10,Thr3=3、Thr4=4。
全文摘要
本发明提供了视频运动自适应去隔行的方法及装置,视频运动自适应去隔行装置包括运动检测模块、空间插值运算模块、时域插值运算模块以及运动自适应模块,运动检测模块输入当前场、后一场以及前一场的图像数据,空间插值运算模块输入当前场的图像数据,时域插值运算模块输入后一场以及前一场的图像数据,运动检测模块、空间插值运算模块、时域插值运算模块连接运动自适应模块,运动自适应模块根据运动检测模块的判断结果,选择空间插值运算模块或时域插值运算模块的输出。利用本发明提供的装置和方法能够正确地检测图像细节和图像边缘方向,避免大片面积图像的丢失,具有较小硬件代价。
文档编号H04N7/01GK101600061SQ200910100538
公开日2009年12月9日 申请日期2009年7月9日 优先权日2009年7月9日
发明者科 陈, 陈剑军 申请人:杭州士兰微电子股份有限公司