您的位置:首页 > 其它

视频去交错:基于模糊控制的运动自适应算法(GPU实现)

2010-10-20 18:32 155 查看
源码下载

隔行扫描最初是解决模拟电视广播中阴极射线管(CRT)显示问题的一种方法。它被设计成在保持提供较高垂直分辨率和足够高的场更新速率的前提下,能保证信号占有的频率带宽。保持足够高的场更新速率对于避免CRT的可视化闪烁是非常必要的。

在现代的高分辨率显示设备上,这种隔行扫描视频存在着行间闪烁和运动边缘锯齿化等缺点。为了消除这些缺点,人们提出了很多种De-interlacing算法。这些算法包括从简单的场内插值算法到非常复杂的运动补偿(Motion Compensation)算法。

简单的De-interlacing算法,开销较低,但获得的图像质量较差。复杂的De-interlacing算法,获的图像质量很好,但开销也很惊人。这里介绍一个在图像质量和开销之间有较好平衡的运动自适应算法。

这个算法的基本思想就是:对于图像中的绝对静止区域,采用场间插值算法,以提高垂直分辨率;对于图像中的绝对运动区域,采用场内插值算法,提高时域分辨率,快速运动场景效果很好。对于图像中处于绝对静止和绝对运动之间的区域,计算出运动因子,同时采用场间插值算法和场内插值算法。

算法的关键是运动检测部分,运动检测失败会导致在运动区域采用场间插值算法,这会产生难看的交织现象;若运动检测过于灵敏会导致在静止区域采用场内插值算法,这会明显降低图像的垂直分辨率。为了在灵敏性和健壮性之间达到一个较好的平衡,这里使用一个模糊运动检测器。

算法示例如下图:





算法的缺陷之一就是要引入一场的时延。

算法至少在两个地方还可以优化,一是Motion_factor的卷积计算,这里采用3X3的卷积窗口,可以改变卷积窗口的大小如5X5等,也可以尝试改变卷积权重。二是X的计算,这里采用了场间插值和场内插值,可以考虑增加斜边缘插值等。

源码采用了GPU实现De-interlacing算法和渲染算法。

参考:Motion Adaptive Video Deinterlacing Using One Dimensional Fuzzy FIR Filters.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: