去隔行是实现视频信号从隔行到逐行扫描格式转换的处理技术[1] 。高质量的去隔行是视频处理的一个重要课题,其目的是消除隔行扫描中的行间闪烁、行蠕动、并行和锯齿化等固有缺陷。去隔行技术大致可以分为线性滤波、运动自适应和运动补偿三类。线性滤波法[2] 主要包括行复制、行平均、场合并等,结构简单,行复制、行平均法并不能增加图像的垂直分辨率,而且线性滤波法在处理运动图像时会带来锯齿、羽化等缺陷。自适应插值法[3~5] 是根据运动信息区分运动或静止,对静止区域采取线性滤波法,对运动区域采取场内非线性滤波的方法进行插值。这类方法的优点是能够在静止区域增加垂直分辨率并且能够消除运动区域的羽化现象,缺点是无法提升运动区域的垂直分辨率,而且由于运动估计的失误会带来插值错误等缺陷。运动补偿法 [6,7] 先进行精确的运动检测,然后沿着运动轨迹进行插值。运动补偿法最大限度地利用了视频信号时间和空间上的相关信息,是三类算法中性能最好的一类。但这类算法计算量最大,对误差极其敏感,可能由于错误运动估计产生局部失真[8] 。在实际应用中,快速获得准确、可靠的运动矢量是较困难的,而且运算复杂度很高、电路资源的消耗很大。

笔者提出一种时空权重和边缘自适应的去隔行算法,主要包括4场同极性场运动估计、小角度边缘搜索、时空权重自适应插值。算法很好地实现视频运动的估计和小角度边缘的检测,并且通过时空权重自适应的插值算法实现去隔行处理,取得很好的处理效果。

《1 运动估计》

1 运动估计

影响去隔行处理效果的决定性因素之一是正确地对输入视频信号进行运动估计,将视频图像划分为运动或静止区域,采取相应的去隔行处理技术[9] 。

视频信号按奇偶场依次传输,每隔一场极性相同。由于奇场和偶场的数据在场方向相同位置上不尽相同,传统的采用相邻场(即不同极性场)的运动检测方法会带来一些问题,尤其对于静止图像水平边缘的检测会产生错误的判断,从而导致爬行效应 [10] 。笔者利用待插补像素在 4 个连续视频场中的相邻像素,计算它们在亮度信号(Y)上的最大灰度变化,并与运动阈值比较实现对运动的检测,其原理如图 1 所示。图中包括 t - 2,t - 1,tt + 1 共 4 场图像,Z 为待插补像素点。

《图1》

图1 4 场运动检测

Fig.1 4-field motion detection

在 4 场运动检测中,相邻像素灰度的变化主要包括时间方向上的灰度变化(D)、空间水平灰度梯度(HD)和空间垂直灰度梯度(VD)三种类型,其计算如下:

1) 时间灰度变化

计算 t 场和 t - 2 场中的对应像素 的绝对差值

其中 t)和 t - 2)分别代表 tt - 2 场中像素 的亮度分量值。

类似可计算:

时间方向的最大灰度变化为

2) 空间水平灰度梯度

分别计算 bc tt - 2 场,t - 1 与 t + 1 场的水平总梯度:

最大空间水平灰度梯度为

3) 空间垂直灰度梯度

分别计算 clcrc 的垂直总梯度:

最大空间垂直灰度梯度为

选取式(6)、式(10)、式(14)的最大值为待插值像素 Z 的最大灰度变化

运动检测是通过 Mmax 与预先设置的运动阈值(T)比较实现的。如果 Mmax 大于 T,则认为当前像素 Z 为运动像素,其运动信息 MV = 1;否则,认为当前像素为静止像素,MV = 0 。即

在运动检测的同时,计算像素此 ct + 1 )和 ct - 1)的绝对差值,作为当前像素的时域差值 TD(即 Dct - 1,t + 1));计算二者的平均值,作为当前像素的时域均值 PT,输出给后续的时空自适应插值模块。

《2 小角度边缘搜索》

2 小角度边缘搜索

固然,在运动自适应的去隔行中,正确地区分运动和静止很重要。但是,对于运动图像中边缘信息的准确检测,并在空间插值滤波器中合理应用边缘信息对提高图像质量也相当关键。如果对边缘检测不准会导致锯齿等图像劣化现象。

基于边缘的行平均(ELA)算法在去隔行中得到广泛应用,它的缺陷是对水平边缘的检测能力很弱,只能检测 45°, 90° 和 135° 边缘,对于小角度边缘则无能为力[5,11] 。为此,Kuo 等人提出 3 +3 taps 的 ELA 算法,并通过比较相邻像素的差值来改善对图像水平边缘的检测[5] ,Lee 等人将 3 +3 taps 的 ELA 算法扩展为 5 + 5[12] , Haan 等人则扩展为 7 + 7 taps [13] 。这些改进虽然增强了 ELA 对较小角度边缘的检测能力,但是仍然无法检测接近水平的边缘,即使是 7 + 7 taps 也只能检测到最小 18° 的边缘,而且固定抽头的滤波器设计方法对于硬件电路的设计也不是很好的方案。

为提高水平边缘的检测能力,提出了小角度边缘搜索的改进算法,其搜索窗如图 2 所示。

《图2》

图2 小角度边缘搜索窗

Fig.2 Search window of low angle edge detection

图 2 中黑点代表待插补的像素 Z(用 Yij)表示),上下两行的像素点的对角线方向代表可能的边缘方向。其基本原理是通过计算、比较对角线上的像素绝对差值,判断对角线对应像素与待插补像素的相关性,绝对差值越小相关性越大,最小差值对应的方向就是边缘方向。在计算中采用并行处理架构,将上下行的对角像素分为 3 部分:a. 中间部分,只有 90° 一个方向的两个像素 Yij - 1), Yij + 1);b. 向左搜索部分,包括 j - 1 行上 Yij - 1)右边的像素和 j + 1 行上 Yij + 1)左边的像素;c. 向右搜索部分,包括 j - 1 行上 Yij - 1)左边的像素和 j + 1 行上 Yij + 1)右边的像素。同时计算这三部分对角像素的绝对差值,分别得到中间部分绝对差值 Dm,左边部分绝对差值 L1L2 ,…,L8 和右边部分绝对差值 R1R2 ,…,R8 ,即

其中 Yij)表示像素 xij)的亮度分量值,其他同义。

在小角度边缘搜索中,为减少计算量和硬件资源的消耗,采取自适应搜索半径的检测方法,在进行向左或向右顺序搜索的过程中每一级计算结束后都要将差值与上一级进行比较(第一级的差值与 Dm 进行比较),如果绝对差值一直保持增大趋势或减小趋势则继续进行搜索,直到 tap = 8,如果出现相反的变化趋势,则停止搜索。然后比较这些差值选择出最小的绝对差值 D,此最小差值对应的对角方向就是大致的边缘方向。

通过最小绝对差值 D 的选择方法可以检测到 90°,45°( 135° ),26.57°( 123.43° ),18.43°( 161.57° ),14°( 164° ),11.3°( 168.7° ), 9.46°( 170.54° ),8.13°( 171.87° ),6.34°( 173.66° )的边缘,检测到的最小边缘为 6.34° 。

为了得到更准确的边缘方向,实现更接近水平方向的检测精度,增加对半像素边缘的搜索。在通过最小绝对差值 D 得到大致边缘方向的基础上,增加对大致边缘方向邻近像素的考虑,如图 3 所示。

《图3》

图3 考虑邻近像素的搜索

Fig.3 Edge detection considering neighbor pixels

如果初步选定的最小绝对差值 D 对应的方向是 XR - XL ,则增加对邻近像素 XL - 1XL + 1 计算的考虑,分别计算 XR - XL - 1XR - XL + 1 的绝对差值 DL -1DL +1 ,求三者的最小值 ND,ND 对应的方向就是边缘的方向。

同时,计算这两个像素的差值为当前像素的空域差值 SD 和它们的平均值为当前像素的空域均值 PS,输出给时空权重自适应插值模块。

通过增加大致边缘邻近像素的考虑,可以使检测到的边缘更加接近水平,比最小绝对差值法增加了 63.4°(116.6°),33.7°(146.3°),21.8°(158.2°),15.9°(164.1°), 12.5°( 167.5°),10.3° (169.7°),8.7°(171.3°),7.6°(172.4°),6.7°(173.3°),6.0°(174°)等角度边缘的检测能力,检测的最小边缘为 6°,而且将 6 ~ 90° 之间划分得更加细,从而提高了边缘检测的精度。这一检测精度是已有文献报道所没有达到的。

在所提出的小角度边缘检测的改进中,主要包括两个方面:a. 增大搜索范围(半径),左右最大各搜索 8 个点,并且采用自适应的设计方法,从而减小硬件的复杂度;b. 在得到大致边缘方向的基础上,增加对相邻像素的考虑,实现半像素精度,提高边缘检测的精度。

《3 时空权重自适应插值》

3 时空权重自适应插值

时空权重自适应去隔行的流程图如图 4 所示。

《图4》

图4 时空和边缘自适应去隔行流程图

Fig.4 Flowchart of motion and edge adaptive de-interlace

对于 4 场运动估计得到的运动信息 MV = 0 的区域,即静止区域,采用场合并(weave)的方式进行插值,提高图像的垂直分辨率,恢复视频图像原有的帧结构;对于运动信息 MV = 1 的区域,即运动区域,采用时空权重自适应插值,有效克服运动估计误差和边缘检测不准带来的插值错误,自动融合场合并和边缘自适应场内插值的优点。

时空权重自适应插值如图 4 虚线框中所示,主要步骤为:

Step 1 时空权重计算单元利用前后场对应像素的绝对差值———时域差值(TD)和场内边缘方向的上下行对角像素的差值———空域差值(SD)分别计算出时域权重系数 kT 和空域权重系数 kS

Step 2 按照 Step 1 得到的权重系数对 PT 和 PS 进行加权平均得到待插补点的估计值

Step 3 为了消除视频图像中椒盐噪声,避免插值后的像素值与上下行的像素值相差太过悬殊引起的图像突兀变化和点闪烁现象,需要对当前场像素点 Yij + 1),Yij - 1)和待插补像素点 Z 的估计值 P′ 进行中值滤波处理,得到最终的插补像素

《4 实验结果及分析》

4 实验结果及分析

去隔行的实验处理结果比较如图 5 所示。图 5a 为源信号中的偶场图像,图 5b 为源信号中的奇场图像,图 5c 传统场内插值去隔行算法得到的处理效果,图 5d 传统运动自适应去隔行算法得到的处理效果,图 5e 为所提出的去隔行算法的处理效果。

《图5》

图5 处理效果比较

Fig.5 Comparison of proposed and typical de-interlace methods

“钟摆”源图像可以分为钟摆的悬杆、符号“OK”和图像右下角旋转的图标三部分。“OK”可以用来检验运动检测的准确度;钟摆的悬杆和旋转的图标用于检验小角度边缘的搜索能力和边缘自适应的插值精度。

符号“OK”由只存在于偶场的“O”和只存在于奇场的“K”组成,也就是说,“O”和“K”分别存在于不同极性的场中,所以如果采用相邻场来进行运动检测,将会把此处判断为运动区域而选择场内插值算法,从而丢失“K”或者“O”,如图 5c 所示的处理结果。正确的处理方法应当是采用同极性场的运动检测,判断此处为静止区域而选择场合并的方法进行插值,效果如图 5e 所示。

钟摆的悬杆和旋转的图标都是快速运动的区域,需要采取场内插值的算法。但是,如果运动检测不准,将其误判为静止区域,或者在场内插值中小角度边缘的搜索能力和插值精度不足,将大大影响去隔行的效果,如图 5d 所示。图 5d 中由于场内插值的失误引起钟摆悬杆出现明显的重影现象。

由图 5e 可以看出,时空权重和边缘自适应的去隔行算法融合了场合并和场内边缘自适应插值的优点,克服了传统算法的缺陷,取得好的处理效果。有效地消除了重影现象,图像中的边缘更加锐利。

综上所述,时空权重和边缘自适应的去隔行方法克服了传统算法对运动图像和小角度边缘插值等方面的缺陷和不足,取得比较理想的处理效果。此算法和 VLSI 电路已经被成功地嵌入基于中芯国际 0.18 μm CMOS 工艺的数字视频扫描格式转换芯片(SFC)中,芯片版图如图 6 所示。

《图6》

图6 基于 0.18 μm工艺的 SFC 版图

Fig.6 The layout of SFC based on SMIC 0.18 μm process

《5 结语》

5 结语

所提出的一种时空权重和边缘自适应的去隔行方法,通过 4 场运动估计得到比较精确的运动信息,进行运动自适应插值。对于静止区域采取场合并的插值处理,对于运动区域采取时空权重自适应的插值处理,通过小角度边缘搜索检测最佳空间插值方向。该算法的优点是自动融合场内差值和场合并的优点,电路实现简单,得到的视频图像处理效果好。