FPGA_ASIC-使用FPGA实现高清晰视频去隔行功能
基于Altera FPGA高清晰视频去隔行功能的实现
基于Altera FPGA高清晰视频去隔行功能的实现引言开发去隔行算法是为了解决一个老问题:模拟电视的隔行视频必须进行转换才能在当今数字电视上显示。
隔行视频是每秒50/60 连续场,每一场只传送一半的扫描行,这些行显示在视频的每一帧中。
对于以前采用阴极射线管(CRT)的显示技术,隔行视频是一种基本压缩方法。
今天,去隔行是重要的视频处理功能,很多系统都需要它。
大部分视频内容采用了隔行格式,而LCD 或者等离子体等所有新出现的显示器几乎都需要逐行视频输入。
但是,去隔行功能本质上非常复杂,没有一种算法能够产生完美的逐行图像。
背景在隔行视频中,一帧视频被分成两场,一场含有偶数行扫描线,一场含有奇数行扫描线。
然而,为了能够在LCD 或者等离子体显示器上显示任意的隔行视频,必须进行去隔行处理。
所有新出现的显示器都是逐行的,每一帧被压缩为一组像素(例如,1920 x 1080)。
图1 显示了一帧中的象素是怎样组成两个场的。
每一场都记录了在时间上分开的象素值。
如果假设每秒30 帧(fps),即每秒60 场,那么,第0 场是在时间t,第1 场是在时间t + 1/60。
由于在略有不同的时间间隔上对场进行记录,因此,无法将两个场连起来为运动视频产生逐行帧。
去隔行技术之所以复杂,是因为需要估算并补偿可能出现的每秒1/60 的运动图像。
基本去隔行技术基本上,去隔行是处理隔行帧流,将其转换为逐行帧流的过程。
两种基本的去隔行方法通常被称为单场插值法和场合并法。
采用单场插值去隔行法,每一场自己可以变成视频帧,因此,29.97-fps 隔行NTSC 剪辑视频流变成了59.94-fps 的逐行帧。
由于每一场只有整个帧一半的扫描线,因此,必须进行插值处理来构成丢失的扫描线。
去隔行的FPGA实现
将F 一 , , F 一 组成帧 2 , 然后 两 帧相 减 , 以某 点 为 中心 ,
取5 × 5 邻域的所有点进行统计 , 得到结果 d , 然后 与 预先 设定好 的阈值进 行 比较 , 若 其大 于或 等 于阈值 , 则
判定 为运 动点 , 若 其 小 于 阈值 则 判 定 为 非运 动 点 。 这 里 的 阈值 , 是通 过 在 软件 上 对 大 量 实 际 图像 数 据进 行
入的 , 所 以需 要 不 断地 往 D D R 2中写人 数 据 。同 时后
骤 取 出相关点进行 计算 , 从而得 到丢 失场 的对应 点 。此 模 块 的结果需要 在 F P G A内部进 行一 定行数 的缓 存 , 因 其既要作 为最终结果输 出 , 又要被 运动检测所用 。
2 . 3 . 2 运 动 检 测 部 分
2 . 1 视 频采 集进入
t ‘ g h i
B T 6 5 6是一种标准 的视频 数据格 式 , 完整 的一 帧 图 像数据是 由一个 6 2 5行 、 每行 1 7 2 8个字 节 的数据 块组
图 2 增强 E L A 点示 意 图
成 。其 中 , 2 3~3 1 1行是 偶 场视 频 数据 , 3 3 6~ 6 2 4行 是 奇场视 频数据 , 其余行 为垂 直控制信 号 。为了后续 去 隔 行 的方便运用 , 在这里对 于摄像 头输入 的 B T 6 5 6格式 的
周 文彬 : 去 隔行 的 F P G A 实 现
基于FPGA的视频图像滤波分割方法及实现
基于FPGA的视频图像滤波分割方法及实现随着计算机技术的不断发展,视频图像处理在各个领域发挥了重要作用,如安防、医疗、电视等。
基于FPGA的视频图像滤波分割方法是一种高效的视频图像处理方法,该方法利用FPGA硬件实现视频图像的滤波和分割,加速处理速度,提高图像质量。
FPGA是一种可编程逻辑器件,具有高速、低功耗、可重构性强等优点,适合用于图像处理。
滤波是图像处理的基本操作之一,用于去除噪声、改善图像质量等。
分割是将图像中的目标与背景分开,是许多图像分析算法的基础。
因此,基于FPGA 的视频图像滤波分割方法对于各种视频图像处理任务都具有重要的意义。
基于FPGA的视频图像滤波分割方法的实现需要完成以下三个步骤:1. 图像获取图像获取可以通过摄像头、图像存储器等设备实现。
在获取图像时要注意设定图像分辨率、帧速率等参数,以保证后续处理效果。
2. 图像滤波图像滤波是一个复杂的过程,常用的滤波器包括高斯滤波、中值滤波等。
其中高斯滤波器是一种线性滤波器,能够通过降低图像中的高频噪声来使图像变得更加平滑。
中值滤波器利用滑动窗口对图像中的像素进行排序,然后将窗口中数值的中位数作为滤波器输出。
这些滤波器的 FPGA 实现可以极大提高图像处理速度和质量。
3. 图像分割图像分割是将图像中的目标和背景分离的过程。
在基于 FPGA 的视频图像滤波分割过程中,常用的方法包括阈值分割、区域生长等。
阈值分割是将像素点根据不同的阈值进行分类,从而实现目标和背景的分离。
区域生长是一种基于灰度值相似度的方法,将像素点按灰度值相似度分为若干区域,从而实现目标和背景的分离。
基于 FPGA 的视频图像滤波分割方法的实现还需要对硬件平台进行设计和优化。
其中,FPGA 逻辑设计包括IP 核的选择、电路连接逻辑的设计等。
优化方法包括权衡计算精度和速度等,以达到最优化的图像处理效果。
综上所述,基于 FPGA 的视频图像滤波分割方法具有高效、快速、高质量的优点,适用于各种视频图像处理任务。
基于FPGA的视频处理系统设计
基于FPGA的视频处理系统设计随着科技的快速发展,视频技术在人们的日常生活中也得到了广泛的应用。
为了满足不同场景下的需求,高精度、高速度的视频处理系统成为了迫切需要解决的问题。
而基于FPGA的视频处理系统则成为了当下较为常用的一种实现方式。
一、FPGA的优势FPGA(Field Programmable Gate Array)是一种可编程数字电路的芯片。
和传统的ASIC(专用集成电路)相比,FPGA具有以下优势:1. 灵活性高,可以通过重新编程实现改变电路功能。
2. 可以实现高性能计算,处理效率高。
3. 集成度高,可以集成大量外设。
基于FPGA的视频处理系统正是利用了FPGA的优势来实现高效、高精度的视频处理。
二、视频处理系统的核心模块基于FPGA的视频处理系统通常包含以下核心模块:视频输入模块、视频输出模块、视频处理模块和控制模块。
现在我们分别来了解一下每个模块的功能:1. 视频输入模块视频输入模块用于将输入的视频信号转换成数字信号,并对数字信号进行预处理,以满足后续处理的需求。
通常会进行去噪、增强和格式转换等处理。
其中格式转换是非常重要的一步,因为不同的视频源可能采用不同的格式,统一格式可以方便后续处理。
2. 视频输出模块视频输出模块用于将处理好的数字信号转换成模拟信号,并输出到显示器或其他设备上。
在转换前,需要对数字信号进行一定的处理,常见的处理方式包括降噪和增强等。
3. 视频处理模块视频处理模块是整个系统的核心部分,它可以对数字信号进行各种形式的处理,如降噪、增强、滤波、压缩等。
其中压缩是视频处理中最重要的部分之一,因为视频信号通常会占用大量的存储空间和带宽资源。
视频压缩技术可以将视频信号压缩到较小的存储空间或带宽上,从而实现高效的存储和传输。
4. 控制模块控制模块用于控制整个视频处理系统的运行和参数配置等。
通常会使用外部开发板或者软件进行控制。
在控制模块的指导下,整个视频处理系统可以进行各种不同的操作,方便用户进行定制化的需求处理。
基于FPGA的超高清视频解码技术研究
基于FPGA的超高清视频解码技术研究随着科学技术的不断发展和社会的不断进步,人们对视频解码技术的要求越来越高。
基于FPGA的超高清视频解码技术,因其高效、稳定和实时性等特点,成为现在发展趋势。
本文主要探讨基于FPGA的超高清视频解码技术的研究进展、发展现状、应用前景等。
一、近几年基于FPGA的视频解码技术研究进展1.1 VHDL在超高清视频解码中的应用VHDL (VHSIC Hardware Description Language) 是一种硬件描述语言,可用于描述数字电路的行为和结构。
现在,FPGA中运用了许多种数字电路以支持超高清视频解码。
大部分数字电路被设计成基于VHDL的暂态状态图,并且进行了验证、仿真,最终被烧录到FPGA中。
1.2 视频编解码器与片上处理器视频编解码器 (Codec) 和片上处理器 (SoC) 是基于FPGA的视频解码技术中的基本组件。
编解码器负责将原始视频信号转换为可传输的格式,并负责解码接收到的视频信号。
SoC则用于将 Codec 和其它组件(如内存和网络接口)整合到FPGA板上。
1.3 基于FPGA的视频解码控制系统基于FPGA的视频解码控制系统应该实现以下功能:视频解码、捕获和显示;编/解码器的配置;编/解码器的数据流量;FPGA的中断控制(IRQ)以及系统总线控制等。
可以说,实现以上功能,是基于FPGA的视频解码技术的关键。
二、基于FPGA的超高清视频解码技术的发展现状近年来,FPGA 的集成度不断提高,计算能力不断增强,以及新兴技术不停突破,叠加在一起,为基于FPGA的超高清视频解码技术的发展提供了有力保障。
2.1 4K技术在FPGA中的应用4K技术指的是电视屏幕最小分辨率为3840×2160像素,这样的分辨率大大增加了图像的清晰度。
FPGA在4K技术的发展中起到了非常重要的作用。
一些公司对FPGA中4K技术的应用进行了深入的研究,结合ASIC等芯片和软件算法,大大提高了FPGA的性能和效率。
FPGA在视频处理中的应用
FPGA在视频处理中的应用随着科技的不断发展,视频处理技术的应用越来越广泛。
在这个过程中,FPGA技术也逐渐得到了广泛应用。
FPGA(Field Programmable Gate Array)是一种可编程逻辑芯片,可以根据需要进行定制编程,实现各种不同的应用。
在视频处理领域,FPGA可以帮助实现高清视频转换、图像增强、视频编解码等功能,成为了视频处理中不可或缺的重要技术之一。
随着高清视频的兴起,视频转换技术变得越来越重要。
高清视频的分辨率和画质都要求更高的数据带宽,而传统的视频接口标准无法满足这种需求。
FPGA可以通过编写定制的算法,实现高清视频和传统视频格式之间的转换。
通过FPGA技术的应用,可以在高清视频和传统视频之间实现快速转换,无需另外购置昂贵的硬件设备。
除了视频转换,FPGA技术在图像增强方面也有着广泛的应用。
图像增强可以使得低质量的视频图像变得更加清晰、鲜明。
这对于监控系统、医疗影像等领域非常重要。
图像增强的原理是对视频图像进行处理,使得各种细节和特征都更加突出。
FPGA可以通过编写定制的算法,实现各种不同的图像增强处理,如锐化、增加对比度等。
在视频编解码方面,FPGA技术也具有着重要的应用价值。
视频编解码是指将视频文件压缩并存储起来,以便于传输和存储。
这个过程涉及到视频流数据的压缩和解压缩。
传统的软件编解码技术需要消耗大量的存储和计算资源,成本较高。
而使用FPGA技术实现视频编解码,可以使得这个过程更加高效,节省了大量的存储和计算资源。
除了上述应用之外,FPGA技术在视频处理领域还有许多其他重要应用。
例如,通过FPGA技术实现视频传输、视频处理算法的优化、图像识别等。
这些都是视频处理领域中非常关键的应用。
随着FPGA芯片的不断发展和进步,这些应用的效果也会越来越好,FPGA技术在视频处理中的应用也会越来越广泛。
总之,FPGA技术在视频处理中具有着重要的应用价值。
随着高清视频越来越普及,视频处理技术的需求也会不断增长。
一种新型去隔行算法的FPGA实现
( t— I l ncIfr t n U i ri f lcrncS in ea dT c n l yo ia Opo ee r i nomai , nv st o e t i c c n e h o g f n c0 o e y E o e o Ch
于 中端视 频 产品及在 F G 设 计 中的应 用 P A
关 键 词 : 动 自适 应 ; 动 检 测 ; 隔 行 ; 场 可 编 程 门 阵 列 运 运 去 现
中 图分 类 号 : N 4 .9 T 9 91 9
文 献 标 识 码 : B
Th PGA mp e eF I l me t t n o v l n a i f No e t n Ad p ie De o a Mo i a t - o v it r cn i me i n e l i g Ar h a t t c
d —it r cn a i m e i s u f r ad T i r h e i m p o e c n e t n l o in e — e l ig r h n a t t i c p t o w r . hs a i m t i r v s o v n i a m t t c o o
Ch n d ih a 1 0 4 Ch a e g uSc u n6 5 , i ) 0 n
Ab ta t Afe n lzn i e e tkn s o e i t r c n r h e i, o e t n a a t e s r c : t r ay ig d f r n i d fd — n e l ig a i m t a n v l a f a t c mo i d p i o v
用FPGA实现高清视频去隔行功能
逐行帧的带宽加倍, HD 视频的带宽会更大。计算带宽时,需要计算去隔行器要访问的帧数,然后加上总 带宽。将其与需要的 DDR 存储器接口带宽相比较,它取决于吞吐量以及存储器接口位宽。
表 1 列出了采用 Altera® Cyclone® III 和 Stratix® III FPGA 实现 PAL 视频源运动自适应去隔行算法需要的资 源。该表对比了运动自适应方法需要的资源以及简单场合并方法所需要的资源。请注意,场合并技术即使 用在分辨率较高的图像上,需要的存储器也很少。
表 1. 在 FPGA 架构上实现去隔行功能需要的硬件资源
5
使用 FPGA 实现高清晰视频去隔行功能
图 7. 3:2 场格式转换从两帧视频中产生 5 场,从 24 帧视频中产生 60 场
Altera 公司
有时候会提取出第十二场,以加速影片,将其插到某一时间片中。虽然普通观众很难注意到这一点,但它 导致了 3:2:3:2:2 的场格式转换节奏:
帧 1: 3 场 帧 2: 2 场 帧 3: 3 场 帧 4: 2 场 帧 5: 2 场 重复
白皮书
使用 FPGA 实现高清晰视频去隔行功能
本白皮书介绍各种去隔行技术,以及怎样使用 Altera 的视频和图像处理 IP 包来实现这些技术。采用视频设 计方法,设计人员在实现不同的去隔行算法时,能够综合考虑各种硬件方案。
引言
开发去隔行算法是为了解决一个老问题:模拟电视的隔行视频必须进行转换才能在当今数字电视上显示。 隔行视频是每秒 50/60 连续场,每一场只传送一半的扫描行,这些行显示在视频的每一帧中。对于以前采用 阴极射线管 (CRT) 的显示技术,隔行视频是一种基本压缩方法。
FPGA_ASIC-利用FPGA实现视频与影像处理应用设计
利用FPGA实现视频与影像处理应用设计许多令人心动的技术创新(如HDTV和数字影院)都是和视频与影像处理技术以及这种技术的快速发展分不开的。
影像捕获和显示分辨率的跳跃式发展、先进的压缩技术和视频智能正是这种技术创新背后源源不断的驱动力。
特别是分辨率在过去几年里有了显著的提高。
表1显示了不同的终端设备类型中当前采用的最高分辨率。
表1:终端设备类型的分辨率从标准清晰度(SD)发展到高清晰度(HD),需要处理的数据量增加了6倍。
视频监测也从通用中间格式(CIF)(352x288)发展到了标准要求的D1格式(704x576),一些工业摄像机甚至发展到了1,280x720的高清晰度格式。
军事监测、医疗成像和机器视觉应用也正在向非常高分辨率的影像转移。
先进的压缩技术正在取代前一代技术,它能提供更好的数据流性能、给定品质下更高的压缩率以及更低的延迟。
JPEG 2000作为数字影院的标准在军事、医疗成像和监测领域得到了广泛采纳。
H.264有望取代广播电视领域中的MPEG-2、视频监测系统中的MPEG-4第2部分和视频会议中的H.263。
甚至在这些新的压缩解决方案部署的同时,正在进行中的标准化工作仍在不断增强H.264和JPEG 2000标准。
DICOM医疗成像标准已经完成了附件105,其中包括了三维医疗成像压缩采用的JPEG 2000第2部分中的多组件转换。
附件106将包含远程浏览JPEG 2000压缩的医疗影像所需的JPIP 协议。
MPEG-4第10部分(H.264 AVC)的下一个延伸就是可伸缩视频编码(SVC)。
SVC编码方案可以满足在异质网络上使用现有的系统资源向不同用户可靠传送视频的需要,特别是在下行客户性能、系统资源和网络条件无法提前获知的情况下。
例如,客户机可能有不同的显示分辨率,系统可能有不同的缓存或中间存储资源,网络可能有不同的带宽、丢包率和尽力而为或服务质量(QoS)性能。
联合视频工作组(JVT)正在开发AVC/H.264的延伸,以提供具有更好压缩效率的位流级伸缩性,同时允许自由组合各种伸缩模式(如空间、时间和SNR/保真度伸缩能力)。
基于FPGA优化运动检测去隔行算法的设计
第13卷 第5期2008年10月哈尔滨理工大学学报JOURNAL HARB I N UN I V .SC I .&TECH.Vol 113No 15 Oct .,2008基于FPGA 优化运动检测去隔行算法的设计李成奇, 何云斌(哈尔滨理工大学计算机科学与技术学院,黑龙江哈尔滨150080)摘 要:去隔行技术是视频格式转换的一项关键技术,是各种视频处理(解码、压缩、编码等)的基础.去隔行算法的优劣,直接影响到视频的质量.本文在比较几种传统去隔行算法的基础上,对以往算法进行改进,提出了一种新的带运动检测的中值滤波算法———优化运动检测去隔行算法,并在FPG A (现场可编程门阵列)设计中验证.该算法硬件要求较低,适合普通产品应用.软件仿真表明,图像的测评效果良好,实现成本较低,具有一定的实用价值.关键词:视频处理;去隔行;运动检测;中值滤波中图分类号:T N491文献标识码:A 文章编号:1007-2683(2008)05-0067-04Desi gn of Optim i zati on to M oti on Detecti on forDe -i n terl aci n g Algorith m Based on F DGAL i Cheng 2qi, He Yun 2bin(School of Computer Science and Technol ogy,Harbin University of Science and Technol ogy,Harbin 150080,China )Abstract:De -interlacing is a key technol ogy f or video for mat conversi on .It is the basis of all kinds of video p r ocessing,such as decoding,compacting,encoding and s o on .That the A lgorithm of De -interlacing is good or not affects the quality of video .I n this paper,a ne w median filtering algorithm f or de -interlacing —Op ti m izati on t o moti on detecti on for De -interlacing A lgorithm is p r oposed after comparing several kinds of traditi onal de -interla 2cing algorithm s and i m p r oving the m.A t sa me ti m e,it is p r oved in FPG A (Field -Pr ogra mmable Gate A rray ).This algorith m needs less hardware and is suitable t o use in ordinary p r oduct .The algorith m has been si m ulated by s oft 2ware and the test results p r ove the p r ocessed i m age is in good quality .It als o cuts hardware cost,s o the algorithm is of great p ractical value .Key words:video p r ocessing;De -interlacing;moti on detecti on;median filtering收稿日期:2007-05-28作者简介:李成奇(1982-),男,哈尔滨理工大学硕士研究生.1 引 言由于以往通信技术的限制,当前传统视频源大部分都采用隔行扫描方式.隔行扫描信号是将一帧数据分成奇偶两场,交替在屏幕上显示,利用人眼的迟滞效应,还原成完整的图像.这样,其帧频为场频的一半,降低了对通信带宽的要求,但也带来了显示质量的下降———画面明显闪烁、抖动、清晰度低.随着人们对视频质量要求的不断提高,必须对传统的视频进行处理,而进行视频处理的前提是对视频源进行去隔行.去隔行技术是视频格式转换的关键技术,一个好的去隔行算法在提高视频质量上起着重要作用.近20年来,已经提出了许多去隔行算法,主要有组合帧法、帧内行平均法、修正沿自适应法(ModifiedEdage D irecti onal L ine Averaging (E LA ))、运动补偿滤波算法等四种算法[1].组合帧法将隔行扫描的奇偶两场信号直接拼接,并以两倍场频输出.这种方法没有对数据进行复杂的处理,容易实现,对静态图像有很好的处理效果.帧内行平均法是用同一场的上下两行求平均值的方法来计算插值,达到去隔行的目的.这种去隔行算法实现较方便,但对画面清晰度损伤较大,会导致锯齿状沿的产生.为了克服这一问题,又提出了E LA 算法.E LA 算法利用沿的方向相关性对图像进行去隔行.这种算法可以去除图像的锯齿状沿,但在画面细节的显示方面略欠不足.在E LA 之后,又提出了运动补偿滤波算法.这一算法可以很好地对运动图像进行去隔行,但算法要求必须对运动轨迹进行准确估算,硬件实现代价要求太高,仅能在少数高端视频设备中应用.所以,一个去隔行效果好、硬件要求低的次优算法的提出是很有必要的.本文提出了一种新的优化运动检测去隔行算法,该算法能判断物体的运动状态,并根据其运动状态分别调用相应的算法进行去隔行,去隔行效果较好,实现成本低,并在FPG A 上加以验证.2 算法设计优化运动检测去隔行算法数据处理流程如图1所示.优化运动检测去隔行算法是一种运动自适应去隔行算法.在运动检测的基础上,综合了组合帧算法和综合滤波算法.对静止图像的去隔行采用组合帧算法,而对运动图像的去隔行采用综合滤波算法.算法中充分利用了视频信号在空间和时间上的相关信息,克服了原来算法去隔行时图像边缘不够平滑、虚像、有断点、细节显示不够清晰等不足.在无运动情况下,去隔行最优的算法为组合帧算法.组合帧法是将奇偶两场数据通过帧存储器合并成完整的一帧数据,然后以两倍的场频输出.这样帧频提高了一倍,消除了行间闪烁,提高了图像清晰度.图2给出了其工作原理. 组合帧算法对静态图像的去隔行效果很好,数据处理简单,容易实现,直接复制上一场的像素作为当前场的插值.公式为x static (k,n )=x (k,n )(1)其中,x (k,n )为所求像素点在上一场中的值.由于运动图像的采样频率并不是线性变换的,如果对运动图像的去隔行也简单地采用组合帧算法,那么就会造成图像的运动模糊、虚像和边缘锯齿等一系列问题[2].为了解决这个问题,几种适合处理运动图像的去隔行算法得到了广泛运用.这里选择了有代表性的帧内行平均法和E LA 算法.帧内行平均法比较容易理解,即由同一场相邻的两行取平均得到中间行的插值,即x med2(k,n )=med (x (k -1,n )+x (k +1,n ))(2)这一算法仅在垂直方向上作平均值运算,插值信号之间相关性较好,具有低频信号丰富、画面柔和垂直边缘保护良好等特点,但斜线边缘锯齿明显.针对帧内行平均法的斜线边缘锯齿问题,选择ELA 算法加以调和.定义1 关于某特定像素点对称的两个像素点插值偏差的绝对值称作此特定像素点在这一方向的方向相关性.E LA 算法的思想是利用相邻行像素点的方向相关性来计算插值[3].图3为用方向相关性计算像素点插值的示意图.图3中,a,b,c,d,e 代表像素x edg (k,n )的方向偏差,每一个方向的偏差定义为a =|x (k -1,n -2)-x (k +1,n +2)|(3)b =|x (k -1,n -1)-x (k +1,n +1)|(4)86哈 尔 滨 理 工 大 学 学 报 第13卷 c=|x(k-1,n)-x(k+1,n)| (5)d=|x(k-1,n+1)-x(k+1,n-1)|(6)e=|x(k-1,n+2)-x(k+1,n-2)|(7)其中最小的偏差代表最强的方向相关性.沿方向经过判定后,插值就在最强相关性的方向上进行.插值x edg(k,n)在各个最强相关性方向的插值定义为x edg(k,n)=(x(k-1,n-2)+x(k+1,n+2))/2 if m in(a,b,c,d,e)=a(x(k-1,n-1)+x(k+1,n+1))/2 if m in(a,b,c,d,e)=b(x(k-1,n)+x(k+1,n))/2 if m in(a,b,c,d,e)=c(x(k-1,n+1)+x(k+1,n-1))/2 if m in(a,b,c,d,e)=d(x(k-1,n+2)+x(k+1,n-2))/2 if m in(a,b,c,d,e)=e(8)E LA利用沿的方向相关性,比较好地解决了边缘锯齿问题,但在细节上显示略有不足,画面不够柔和,略显粗糙.通过以上分析比较,可见帧内行平均法和E LA 在运动图像的处理效果上虽然优于组合帧法,但两个算法都各有欠缺,针对这两个算法在处理效果上可相互补偿的特点,对它们进行改进,得到一种新的中值滤波算法———综合滤波算法.这一算法综合了帧内行平均法和E LA算法的优势,并在一定程度上弥补了其他算法画面粗糙,图像边缘锯齿等不足.用此算法对运动图像进行去隔行处理,图像既有丰富的低频信号,画面柔和、细腻;又有丰富的高频信号,对垂直边缘、斜线边缘和曲线边缘都具有较好的保护作用,使图像质量得到明显改善,效果优于单独使用帧内行平均法或E LA算法.算法为x ave(k,n)=med(x med2(k,n),x edg(k,n))(9)式中:xave(k,n)为运动图像去隔行处理时的像素点插值;xmed2(k,n)是根据帧内行平均法计算得到的像素点插值;xedg(k,n)是根据ELA计算得到的像素点插值.将式(9)的结果作为运动图像的插值结果,可得x moti on(k,n)=x ave(k,n)(10)由此,对于静止图像,采用组合帧算法进行去隔行,直接复制上一场的像素点值作为插值.而对于运动图像,则采用综合滤波算法进行去隔行.可见,图像运动状态的判断是整个算法实施的前提.所以,对图像进行准确的运动检测尤为重要.在这里,提出一种有效的运动检测算法.算法思想:静止图像相邻像素点亮度接近,亮度差较小;相反,运动图像由于像素的运动导致相邻像素的亮度差拉大.所以,通过检测特征像素点与相邻像素的亮度差(相关性),即可判断图像的运动状态.经过试验比较,选定作相关性比较的点为5个———特定像素点及与其临近的上下左右四个像素点,这5个点之间的位置关系如图4所示.其中,阴影部分为插入行,S是特征像素点,S1,S2, S3,S4是比较像素点.定义特征像素点与比较像素点的相关性变量为Dt,则有D t=∑4i=1s0-s i(11)这里定义物体运动因子为α,当Dt≤DT(DT是一个阀值,通常由经验得出,实验中DT=0)时,认为物体处于静止状态,α=0,采用组合帧算法计算插值;反之,认为物体是运动的,α=1,采用综合滤波算法计算插值.综上所述,可得到优化运动检测去隔行算法计算公式,即x(k,n)=αx motion(k,n)+(1-α)x static(k,n)(12) 3 优化运动检测去隔行算法在FPG A 上的验证本设计中采用A ltera公司推出的Cycl one II系列的一款FPG A芯片———EP2C35.它有672个管脚,采用BG A封装.它有33216个LEs,105个M4k存储块,483840个RA M位,35个18×18的嵌入式乘法模块,4个P LL s,475个可使用I/O管脚,此芯片满足测试算法的性能要求.先介绍一下组合帧法在FPG A上用Veril og HDL 的实现.设计中定义了两个F I F O,分别存放图像的奇偶96第5期李成奇等:基于FPG A优化运动检测去隔行算法的设计帧,然后让数据流按奇偶场交替输出[4].通过对两个场同步信号V sync 间的行同步信号H sync 做判断,决定两个F I F O 的读写,使数据按ABAB …逐行读出,部分代码段如下:module co mbine (vsync,hsync,fif oa_en,fif ob_en,);input vsync;input hsync;out put fif oa_en;out put fif ob_en;reg fif o_en;assign fifoa_en =fif o_en;assign fifob_en =~fif o_en;al w ays @(negedge hsync )if (vsync ==0)fif o_en <=0;elsefif o_en <=~fif o_en;end module仿真结果证明设计无误[5],如图5所示.在时钟方面,写入时钟与AD 采样时钟相等,读出时钟与DA 恢复像素时钟相等,实时处理运动帧时,为不在两场之间出现跳动现象,读出时钟要高于写入时钟[6].同样,综合滤波算法在FPG A 上的实现也是通过定义两个F I F O 存储奇偶场,并用Veril og HDL 对式(10)进行描述的.4 实验结果采用50帧(由奇偶场重叠组成)的测试序列(Ta 2ble tennis )进行算法的软件仿真.用本文所提出的算法得到的去隔行后的100帧逐行图像序列连续播放,主观评测效果良好.在图6a 和图7b 分别为沿自适应算法和本文算法对测试序列第四帧(逐行)的仿真结果.对仿真结果进行对比,可以看出:沿自适应算法虽然在边缘的锯齿处理上有较好效果,但整体细节不够清晰,图像模糊度高.采用优化运动检测去隔行算法插值后,图像的低频信号丰富,画面柔和,平滑较好,垂直边缘保护良好,使图像质量获得明显改善.5 结 语本文对当前去隔行算法进行了分析比较和改进,提出了一种新的去隔行算法———优化运动检测去隔行算法.该算法综合了组合帧算法对静态图像处理的优势和综合滤波算法对运动图像处理的优越性,在一定程度上弥补了传统去隔行算法边缘不够平滑、出现锯齿,细节模糊,甚至有断点、虚像等缺点.同时,算法的复杂性远低于运动补偿滤波算法,硬件要求低,实现成本低廉,效果较好,性价比高,适合应用于中低端视频产品及在FPG A 设计中的应用.参考文献:[1] ATI F M Menon,MART HA E Pollack .H ierarchical G U I Test CaseGenerati on U sing Aut omated Planning [J ].I EEE Trans on Soft 2ware Enginerring,2001,27:168-182.[2] 卢春霞,田伟缘.I nternet 网络视频监控在嵌入式L inux 下的解决方案[J ].现代电子技术,2005(3):85-89.[3] Y AO W ang,JORN O ster mann,ZS ANG Yaqing .视频处理与通信[M ].北京:电子工业出版社,2003:76-135.[4] 赵震甲.使用F I F O 完成数据传输与同步[J ].中国集成电路,2005(8):13-17.[5] HOLGER B lume .Nonlinear Vect or Err or Tolerant I nter polati on ofI nter me -diate V ideo I m ages by W eighted Medians [J ].Signal Pr ocessing,I m age Communicati on,1999,14:851-868.[6] CHUNG J Kuo,CHA I N G L iao,CH I N G C L in .Adaptive I nter pola 2ti on Techniques for Scanning Rate Conversi ons[J ].I EEE Trans .on Circuits and Syste m s f or V ideo Technol ogy,1996,6(3):317-321.(编辑:付长缨)07哈 尔 滨 理 工 大 学 学 报 第13卷 。
基于FPGA高分辨率短时间间隔测量的研究
基于FPGA高分辨率短时间间隔测量的研究随着科技的发展,高分辨率短时间间隔测量在许多领域都具有重要意义。
本研究利用FPGA(现场可编程门阵列)技术,在高分辨率和短时间间隔测量方面进行了深入研究。
通过设计和实现一个定制的FPGA模块,可以在微秒级时间间隔内实现高精度的信号测量。
实验结果表明,该方法具有高分辨率和较低的测量误差,可为各个领域的实时测量提供有效的解决方案。
1. 引言高分辨率短时间间隔测量在许多应用中具有重要意义,如雷达系统、光学显微镜、医学设备等。
对于这些应用,通常需要测量瞬态信号,在微秒级甚至更短的时间间隔内获取高精度而准确的测量结果。
传统的测量方法往往无法满足这些要求,因此需要一种新的解决方案。
2. FPGA技术FPGA(现场可编程门阵列)是一种可编程逻辑器件,具有快速的并行计算能力和灵活的硬件配置。
它可以根据特定需求进行编程,实现各种不同的功能。
在高分辨率短时间间隔测量中,FPGA可作为核心技术来提供高性能的信号处理能力。
3. 设计与实现本研究设计并实现了一个定制的FPGA模块,用于高分辨率短时间间隔测量。
该模块包括了高速的数据采集器、精确的时钟生成器和高性能的信号处理单元。
数据采集器能够以微秒级时间间隔快速采集信号,并将数据传输给信号处理单元。
时钟生成器提供精确的时钟信号,确保测量结果的准确性和稳定性。
4. 实验结果与分析通过对不同信号的测量实验,本研究得出了如下结论:定制的FPGA模块能够在微秒级时间间隔内实现高分辨率的信号测量。
与传统方法相比,该模块具有更高的测量精度和更低的测量误差。
此外,该模块还能够适应不同信号的测量需求,并通过重新编程实现不同的功能。
5. 应用前景基于FPGA的高分辨率短时间间隔测量技术具有广阔的应用前景。
它可以在多个领域中提供高精度、高效率的实时测量解决方案。
未来,我们将进一步改进和优化该技术,以满足不同领域中对高分辨率短时间间隔测量的需求。
结论:本研究基于FPGA技术,设计并实现了一个定制的模块,用于高分辨率短时间间隔测量。
一种新型去隔行算法的FPGA实现
Jan .2010,总第108期现代显示Advanced Display一种新型去隔行算法的FPGA实现摘要:在分析了现有各种去隔行算法的基础上,提出了一种新型的运动自适应去隔行算法。
该算法通过对传统运动检测算法的改进,提高了运动检测的精度,降低了误判的概率,可高效地区分图像的静止和运动部分,然后采用不同的算法进行去隔行,同时对运动部分采用的插值算法进行了改进,新的插值算法综合了帧内行平均算法和边缘算法的优点,插值效果有很大改善,最后给出了FPGA 实现原理。
实验结果表明,本文算法无论对运动图像还是对静止图像都具有很好的去隔行效果,在一定程度上弥补了传统去隔行算法边缘不够平滑,出现锯齿,细节模糊,甚至有断点、虚像等缺点。
同时,算法也很好地实现了显示品质和硬件成本之间的平衡,适合应用于中端视频产品及在FPGA 设计中的应用。
关键词:运动自适应;运动检测;去隔行;现场可编程门阵列中图分类号:TN949.199文献标识码:BThe FPGA Implementation of a Novel Motion Adaptive De-interlacing ArithmeticCAI Yu-qiang,YANG Gang,JIANG Quan,YU Jun-sheng(Opto-electronic Information,University of Electronic Science and Technology of China,Chengdu Sichuan 610054,China)Abstract :After analyzing different kinds of de-interlacing arithmetic,a novel motion adaptive de-interlacing arithmetic is put forward.This arithmetic improves conventional motion detection arithmetic,advances the precision of the motion detection,reduces the probability of miscarriage of justice and can distinguish the motion and static parts effectively,then different arithmetic is adopted to de-interlace,the interpolation arithmetic for the motion parts is also improved,the proposed interpolation arithmetic have advantages of both line-average in a frame and edge arithmetic,so it has a good effect in interpolation,finally,the implementation of FPGA is given.According to the result of the experiment,we can conclude that the proposed arithmetic both have good de-interlacing effect in motion image and static image,to some extent,it get over the following flaws in conventional de-interlacing arithmetic:not enough smoothness on edge,having sawtooth,illegibility in detail,even having breakpoints and virtual image.At the same time,the proposed arithmetic balances well in display quality and hardware cost,and can be used in the common video products and FPGA design.Keywords :motion-adaptive;motion-detector;de-interlace;FPGA蔡玉强,杨刚,蒋泉,于军胜(电子科技大学光电信息学院,四川成都610054)文章编号:1006-6268(2010)01-0051-06收稿日期:2009-08-27技术交流51Jan.2010,总第108期现代显示Advanced Display引言传统的模拟电视系统普遍采用隔行扫描的方式来降低带宽,随着高清数字电视的发展,传统模拟电视的隔行扫描方式引起的爬行、画面闪烁和图像快速运动时产生的边缘模糊及锯齿等现象越来越突出。
去隔行的FPGA实现
去隔行的FPGA实现周文彬【摘要】提出了一种基于运动检测的去隔行算法.其原理是通过4场水平运动检测和场内插检测,将图像分为静止和运动两部分,并采用前场值和场内插值进行去隔行.文中的算法在FPGA上得以实现,并将结果在VGA上进行显示.通过观察去隔行图像,得知该方法能较好地消除模糊、锯齿等不良现象,获得了较为理想的效果.【期刊名称】《电子科技》【年(卷),期】2015(028)003【总页数】3页(P27-29)【关键词】去隔行;场内插;FPGA;VGA【作者】周文彬【作者单位】西安电子科技大学电子工程学院,陕西西安 710071【正文语种】中文【中图分类】TN919.8随着高清数字视频的发展,人们对视频清晰度的要求也不断提高,隔行扫描带来的虚影、闪烁,以及快速运动时的锯齿现象等问题也变得越来越突出,从而影响了视觉观感。
解决上述问题的关键就在于去隔行技术。
所谓去隔行技术就是将隔行扫描的视频转换成逐行扫描的视频。
由于隔行扫描中,每场只传送一帧中的1/2数据,所以采用算法补齐缺失的另1/2数据组成完整一帧,是去隔行算法的关键。
目前存在以下几种方法:单场插值法、场合并法、运动自适应算法。
单场插值法就是利用本场数据,直接通过复制本场前一行的数据或者两行的平均值来填充缺失行。
但此方法会使图像变得柔和。
场合并法即是将当前场和前一场的数据直接进行合并得到一帧,这种方法对静图像效果较好,但对于运动图像则会出现锯齿现象。
运动自适应算法则是根据点是否运动来确定最后结果,此方法效果良好,得到了广泛应用[1]。
文中结合FPGA的优势,提出了一种运动检测算法,该算法对传统算法进行了改进,对运动点的检测更为细致。
该算法将图像区分为运动点和静止点,分别采用增强ELA算法插值的结果及前场数据值进行去隔行。
最后将该算法在FPGA上得以实现,得到了较为理想的实际效果。
1 系统总体结构系统的设计目标是为了使输入的隔行视频,通过用FPGA实现去隔行算法,对隔行视频进行处理,从而组成完整的一帧并显示。
基于FPGA的视频图像画面分割器的设计
基于FPGA的视频图像画面分割器的设计采用软件来实现视频的画面分割处理,往往消耗大量的CPU资源.本文介绍了一种采用FPGA的画面分割实现技术.方案采取比较先进的图象算法,分割处理清晰,画面干净,图象失真小,可供参考第六图书馆在基于FPGA的视频图像画面分割器设计中,首先将多路模拟视频信号经过视频解码芯片SAA7113转换成CCIR656个格式数字信号;然后按照分割画面分割的要求由FPGA对有效信号进行抽取并存储到SRAM中,再将抽取的信号进行帧合成;最后经过SAA7121视频编码芯片把处理过的信号转换成模拟信号输出到显示器,实现在一个屏幕显示多路视频画面的目的。
在基于FPGA的视频图像画面分割器设计中,首先将多路模拟视频信号经过视频解码芯片SAA7113转换成CCIR656个格式数字信号;然后按照分割画面分割的要求由FPGA对有效信号进行抽取并存储到SRAM中,再将抽取的信号进行帧合成;最后经过SAA7121视频编码芯片把处理过的信号转换成模拟信号输出到显示器,实现在一个屏幕显示多路视频画面的目的。
FPGACCIR656帧合成画面分割现代电子技术齐本胜付富壮杨书生河海大学计算机及信息工程学院,江苏常州2130022007第六图书馆第六图书馆采用软件来实现视频的画面分割处理,往往消耗大量的CPU资源.本文介绍了一种采用FPGA的画面分割实现技术.方案采取比较先进的图象算法,分割处理清晰,画面干净,图象失真小,可供参考采用软件来实现视频的画面分割处理,往往消耗大量的CPU资源.本文介绍了一种采用FPGA的画面分割实现技术.方案采取比较先进的图象算法,分割处理清晰,画面干净,图象失真小,可供参考采用软件来实现视频的画面分割处理,往往消耗大量的CPU资源.本文介绍了一种采用FPGA的画面分割实现技术.方案采取比较先进的图象算法,分割处理清晰,画面干净,图象失真小,可供参考。
采用FPGA实现视频和图像处理设计优点
采用FPGA的视频和图像处理方案
考虑到上面阐述的原因,FPGA非常适合视频和图像处理应用。以Altera的FPGA为例,因其具有以下特性,非常适合视频和图像处理体系结构。
● 高性能:可以在一片FPGA中完成HD处理功能。
● 灵活性:能够迅速更新体系结构,满足不断发展的需求,同时在低成本和高性能系统中灵活地应用FPGA。
Xilinx 提供了视频 IP 模块组,以供在视频监控系统中快速设计、仿真、实现和验证视频和图像处理算法。其中包括设计 DVR 用的基本基元和高级算法。 <br />
此外,Xilinx 及其合作伙伴提供了一系列压缩编码、解码和编解码解决方案,从为需要快速实现的人提供现成的内核,一直到为希望通过高质量和低比特率使自己的产品与众不同的人提供构造模块参考设计和硬件平台。 <br />
在过去几年中,分辨率的发展最为显著,表1列出了不同终端设备上目前能够达到的最高分辨率。
从标准清晰度(SD)过渡到高清晰度(HD),需要处理的数据量提高了6倍。视频监控也从普通中间格式(CIF)(352×288)转向标准要求的D1格式(704×576),某些工业摄像机甚至达到1280×720HD。军事监控、医疗成像和机器视觉也普遍采用了分辨率非常高的图像。
DICOM医疗成像标准已经完成了附件105,它包括JPEG 2000第2部分3D医疗成像压缩多分量变换。附件106将包括JPIP协议,远程浏览使用JPEG 2000压缩的医疗影像。
MPEG 4 Part 10(H.264 AVC)的进一步扩展是可更新视频编码(SVC)技术。SVC在现有系统资源情况下,解决了不同网络中向各种用户可靠传送视频的编码问题,特别是事先不知道下游客户端容量、系统资源和网络状况的时候。例如,客户端会有不同的显示分辨率,系统有不同的缓冲或者中间存储资源,网络带宽、丢包率、最大努力服务质量(QoS)等都在变化。联合视频开发组(JVT)扩展了AVC/H.264,增强比特流的灵活性,提高压缩效率,可以自由组合各种压缩模式(如空域、时域和SNR/保真等)。具体应用领域包括视频监控系统、移动流视频、无线多通道视频产生和分配和多方视频电话/会议等。
利用FPGA实现的一种机载高清视频处理模块
利用FPGA实现的一种机载高清视频处理模块现代飞机座舱显示技术的进展日新月异,需要显示各种信息的数据已经达到海量规模。
飞翔员在不同飞翔时段获得的信息也越来越多,为了使飞翔员能够在某特定的飞翔时段认读和处理更为精确的信息,并且各种传感器信息融合在同一个坐标系中,因此需要讨论机载环境中高清视频处理技术,讨论在较大尺寸的上显示处理高清视频信号。
高清视频处理模块位于显示分系统中,加速显示高清视频信号,实现高清视频的缩放和叠加。
满足了飞翔员对大尺寸和高清楚视频显示的需求。
模块接收显示指令和视频数据,将融合信息加速显示到显示器上,同时接收解码两路高清外视频信号,在芯片中实现内视频和外视频的运算处理,包括缩放和叠加,并且将处理后的视频信息根据不同的要求输出到显示器上。
高清视频处理模块系统结构高清视频处理模块内部包含图形处理器,它接收显示指令和数据,加速渲染图形画面,输出为高清视频信号,在FPGA中运算融合外视频信号,两路分离输出到外部显示器上,视频格式分离为高清LVDS和高清DVI。
高清视频处理模块主要功能包括图形处理器电路、视频叠加和缩放规律电路、编解码电路和供电复位时钟电路。
模块系统组成框图1所示。
高清视频处理模块硬件电路设计图形处理器电路图形处理器电路主要负责内部高清视频的生成和视频输出控制。
它将绘图数据和指令通过二维和三维图形加速管线加速生成并且存储在显存中,输出控制部件将显存中的数据根据相应格式输出视频信号。
图形处理器选用AMD公司的M9000芯片,该芯片支持高清视频处理,支持二维和三维图形硬件加速,OpenGL图形接口标准,工作频率高达250MHz,64MByte的显存容量,两路自立的显示输出通道,可挑选LVDS、第1页共5页。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Cyclone III
3231
2546
—
ห้องสมุดไป่ตู้
3078
Stratix III
3539
2540
—
3078
M9K
39 41
15 19
DSP 模块 (9x9) (18x18)
fMAX (MHz)
1
—
121
—
1
243
—
—
170
—
—
280
此外,去隔行器经常要访问外部存储器,因此,设计去隔行器时需要重点考虑存储器带宽。缓冲一场 480i 视频源需要 165.7 Mbps:
基本去隔行技术
基本上,去隔行是处理隔行帧流,将其转换为逐行帧流的过程。两种基本的去隔行方法通常被称为 “单场 插值”法和 “场合并”法。
采用 “单场插值”去隔行法,每一场自己可以变成视频帧,因此, 29.97-fps 隔行 NTSC 剪辑视频流变成了 59.94-fps 的逐行帧。由于每一场只有整个帧一半的扫描线,因此,必须进行插值处理来构成丢失的扫描线。
5
使用 FPGA 实现高清晰视频去隔行功能
图 7. 3:2 场格式转换从两帧视频中产生 5 场,从 24 帧视频中产生 60 场
Altera 公司
有时候会提取出第十二场,以加速影片,将其插到某一时间片中。虽然普通观众很难注意到这一点,但它 导致了 3:2:3:2:2 的场格式转换节奏:
帧 1: 3 场 帧 2: 2 场 帧 3: 3 场 帧 4: 2 场 帧 5: 2 场 重复
去隔行器 MegaCore 功能提供简单的运动自适应算法。这在逻辑占用和外部存储器带宽要求上最复杂也是最 昂贵的算法。该算法针对图像的运动部分进行单场插值去隔行处理,对静态区域使用场合并去隔行法,从 而避免了单场插值和场合并算法的缺点。在前面的章节中对该算法进行了解释。
此外,去隔行器 MegaCore 功能还可以在外部 RAM 中提供双缓冲或者三缓冲。运动自适应和场合并方法需 要采用缓冲,单场插值方法可以选择使用缓冲。可以将去隔行器配置为为每一输入场产生一个输出帧,或 者为每一输入帧产生一个输出帧 ( 两场构成一对 )。
WP-01117-1.0
2009 年 10 月, 1.0 版
1
使用 FPGA 实现高清晰视频去隔行功能
Altera 公司
也可以说,单场插值去隔行技术是在空间上将扫描线加倍,每一场的扫描线被加倍。所产生的新行既可以 是简单的复制前一行 ( 扫描线复制 ),也可以是前后行的平均值 ( 扫描线插值 ),如图 2 所示。当图像亮度 变化比较平稳时,单场插值去隔行技术的结果比较好,但是由于该技术降低了垂直分辨率,因此,图像变 得更柔和。
图 2. 单场插值去隔行采用的两种方法
Scan line duplication
Scan line interpolation
去隔行场合并技术涉及到将两个场进行合并,这两个在时间上分开的场形成一个完整的帧,如图 3 所示。 如果在两场分开的 1/60 秒内,图像没有运动部分 ( 对于 NTSC 视频 ),那么,场合并的结果比较好。有时 候,当一对隔行场来自最初的逐行帧时,场合并算法结果会非常好。但是,如果有运动部分时,会出现 “锯齿”等假像。
白皮书
使用 FPGA 实现高清晰视频去隔行功能
本白皮书介绍各种去隔行技术,以及怎样使用 Altera 的视频和图像处理 IP 包来实现这些技术。采用视频设 计方法,设计人员在实现不同的去隔行算法时,能够综合考虑各种硬件方案。
引言
开发去隔行算法是为了解决一个老问题:模拟电视的隔行视频必须进行转换才能在当今数字电视上显示。 隔行视频是每秒 50/60 连续场,每一场只传送一半的扫描行,这些行显示在视频的每一帧中。对于以前采用 阴极射线管 (CRT) 的显示技术,隔行视频是一种基本压缩方法。
今天,去隔行是重要的视频处理功能,很多系统都需要它。大部分视频内容采用了隔行格式,而 LCD 或者 等离子体等所有新出现的显示器几乎都需要逐行视频输入。但是,去隔行功能本质上非常复杂,没有一种 算法能够产生完美的逐行图像。
背景
在隔行视频中,一帧视频被分成两场,一场含有偶数行扫描线,一场含有奇数行扫描线。然而,为了能够 在 LCD 或者等离子体显示器上显示任意的隔行视频,必须进行去隔行处理。所有新出现的显示器都是逐行 的,每一帧被压缩为一组像素 ( 例如, 1920 x 1080)。图 1 显示了一帧中的象素是怎样组成两个场的。每一 场都记录了在时间上分开的象素值。
表 1 列出了采用 Altera® Cyclone® III 和 Stratix® III FPGA 实现 PAL 视频源运动自适应去隔行算法需要的资 源。该表对比了运动自适应方法需要的资源以及简单场合并方法所需要的资源。请注意,场合并技术即使 用在分辨率较高的图像上,需要的存储器也很少。
表 1. 在 FPGA 架构上实现去隔行功能需要的硬件资源
Altera 的去隔行器
Altera 的 VIP 包提供视频和图像处理 IP 内核库,设计用于方便实现即插即用型接口。处理包提供从颜色空间 转换器到多相缩放器和移动自适应去隔行器等各种 IP。如图 6 所示, VIP 包提供的去隔行器 MegaCore® 功 能支持 4 种去隔行方法:
■ 带有扫描线复制功能的单场插值法 ■ 带有扫描线插值功能的单场插值法 ■ 场合并 ■ 运动自适应
器件系列 组合 LUT/ALUT
逻辑寄存 器
ALUT
存储器 Bits
去隔行 PAL (720x576), 8 位 Y’CbCr 4:4:4 颜色,使用了运动自适应算法
Cyclone III
5723
5678
—
81514
Stratix III
4803
5772
5
73292
去隔行 HDTV 1080i 分辨率, 23 位 Y’CbCr 4:4:4 颜色,使用场合并算法
图 3. 场合并去隔行技术将两个场组合起来,会导致 “锯齿”假像。
单场插值法和场合并法去隔行法都会影响图像质量,特别是图像有运动部分时。单场插值法柔和了图像, 场合并法会产生粗糙的图像,或者锯齿假像。图 4 对比了单场插值法生成的图像和场合并去隔行法生成的 图像。
2
Altera 公司
图 4. 单场插值 ( 左侧 ) 和场合并 ( 右侧 ) 去隔行技术的不同
Altera 公司
所计算的运动值可以用于对比前面产生的运动值,也可以直接用作前一运动值。如果前一运动值较大,那 么,调整当前运动值,使其处于计算值和前一值之间。由于采用了前面多个帧中的运动值,因此,多进行 的计算也被称为 “运动补偿”。它呈指数变化;处理一次运动后,场合并再次稳定之前可能需要 3 到 10 帧 的时间。
(720 × 240 pixels/field) × (16 bits/pixel) × (59.94 fields/sec) = 165.7 Mbps
逐行帧的带宽加倍, HD 视频的带宽会更大。计算带宽时,需要计算去隔行器要访问的帧数,然后加上总 带宽。将其与需要的 DDR 存储器接口带宽相比较,它取决于吞吐量以及存储器接口位宽。
虽然 24 fps 影片及其相关的 3:2 视频场格式转换节奏是最常用的格式,而专业摄像和各种类型的视频处理使 用不同类型的场格式转换节奏。由于必须对比前后输入场,探测场格式转换节奏,因此,对于去隔行器而 言具有一定的难度。大部分去隔行器能够探测常用的 3:2 场格式转换节奏,采用合适的去隔行技术。然而, 如果没有探测到内部场格式转换节奏,可能会导致视频数据的丢失。
在每一种情况下,根据运动值,选择场合并算法,或者通过前后像素空间插值来计算新像素。下面简单的 方程计算了插值或者场合并算法生成新像素的加权平均值 ( 前一场输出像素 ):
Output Pixel = M ⋅ U---p---p---e---r-------P---i--x---e----l----+2-----L---o---w---e---r------P---i---x---e---l- + (1 – M) ⋅ Still Pixel
对于支持扫描线插值算法的去隔行器 MegaCore 功能实现的单场插值去隔行法,其逻辑成本稍高于扫描线复 制单场插值去隔行法,但是质量明显要好很多。前后扫描线的线性插值填充当前场丢失扫描线,从而建立 输出帧。在 F1 场的顶部或者 F0 场的底部,只有一条扫描线,这条线被复制。如果采用的输出帧速率与输 入帧速率相同,由于只使用了当前场,因此,可以丢掉一半的输入场。
运动补偿去隔行
运动补偿去隔行是目前最先进的去隔行技术。本文没有对其进行详细阐述,它使用视频压缩常用的运动补 偿技术。该技术一次处理多个场,以确定一块像素的运动部分,然后移动像素,补偿运动部分。这类去隔 行技术计算量非常大,但输出质量是最好的。
硬件考虑
去隔行器适合通过硬件实现,一般采用 FPGA 实现复杂的高清晰 (HD) 去隔行器。开发高效去隔行器的关键 硬件资源是存储器。需要片内存储器来存储不同场的 m × n 像素块 ( 计算的运动值矩阵以及前一运动值矩阵 ),同时还需要外部 ( 通常是 DDR) 存储器来存储多个输入视频场以及计算的帧。
使用 FPGA 实现高清晰视频去隔行功能
高级去隔行技术
很明显,可以同时采用前面介绍的两种方法,首先计算视频前后帧之间是否有运动图像,从而产生质量更 好的去隔行结果。该方法对于静止区域采用场合并法,而有运动的部分采用单场插值法,因此,被称为 “运动自适应去隔行法”。
运动自适应去隔行法的关键是进行精确的运动探测,这一般通过对比前后帧 m x n 像素矩阵来实现。采用 Altera 的视频和图像处理知识产权 (IP) 包 (VIP) 提供的去隔行器来实现这一简单的运动自适应去隔行算法:
图 1. 含有一帧视频的两个隔行场