首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 基于FPGA的视频图像分割技术设计与应用
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于FPGA的视频图像分割技术设计与应用
发短消息
加为好友
pengpengpang
(pengpengpang)
当前离线
UID
1023229
帖子
6106
精华
0
积分
3055
阅读权限
90
来自
中国
在线时间
156 小时
注册时间
2013-12-20
最后登录
2016-7-3
论坛元老
UID
1023229
来自
中国
1
#
打印
字体大小:
t
T
pengpengpang
发表于 2014-6-16 20:22
|
只看该作者
基于FPGA的视频图像分割技术设计与应用
field
,
技术
,
世纪
数字硬盘录像机(DVR,digital video recorder)是一种性价比很高的视频监控解决方案,具有对图像/语音进行长时间录像、录音、远程监控和控制的功能,集合录像机、画面分割器、云台镜头控制、报警控制、网络传输等功能于一身,是目前市面上视频监控系统的首选产品。在DVR系统中,需要在一个现实设备上同时显示多个监控画面,这样可大大节省资源并便于工作人员监视,本文研究的内容就是这种图像分割技术在FPGA上的实现。
FPGA(field programmable gate array,现场可编程逻辑门阵列)是20世纪80年代由美国Xilinx公司首先推出的,它具有性能高、规模大、可重复编程、开发投资小等优点,在现代电子产品设计中应用广泛。FPGA具有极高并行度的信号处理引擎,提供高性能的信号处理能力【lJ。在本设计中,就是要利用FPGA的高速性能对多路视频信号(16路)进行处理,从而简化硬件结构,提升DSP性能,使单片DSP实现16路CIF图像实时编解码成为可能。
1 图像分割与合成
1.1视频标准
FPGA处理的视频数据由专用解码芯片Tw2815输出,符合ITU.RBT.656标准。ITU.RBT.656标准是在国际电信联盟无线电通信部门656.4号建议书中提出,全称是工作在ITU.RBT.601建议(部分A)的4:2:2级别上的525行和625行电视系统中数字分量视频信号的接口。实施这样的标准是为了在525行和625行两者间提供一种世界范围兼容的数字化方法。数据信号编码成8比特二进制信息形式,格式如图1所示。
由图1可知ITU.RB T.656并行接口除了传输4:2:2的YCbCr视频数据流外,还有行、列同步控制信号。一帧数据由525行(NTSC制式)或625行(PAL制式)、每行1728个字节的数据块组成。每行数据中,有4个字节的EAV和SAV信号,前3个字节是前导数据,最后一个字节中包含本行数据信息。EAV/SAv包含了关于同步的所有信息。
1.2分割与合成原理
视频图像合成基于像素域,即将多路压缩的源视频编码数据进行解码,将解码后的YUv(或RGB)数据按照一定线性规则进行排列,合并成一路ⅥⅣ(或RGB)数据,再将合并后的视频数据进行编码12J。ITU.RBT.656标准YCbC,(4:2:2)格式中4:2:2的含义为Y信号与Cb、C,信号的数量比为4:2:2,即在有效视频数据区域,每4个字节为一个宏像素点,其中包含2个Y信号,1个Cb信号和1个Cr信号。
要实现4画面及16画面显示功能,就是要以宏像素为单位对原画面像素按照1/4(或1/16)的比例进行抽取,如图2所示(以PAL制式一帧数据为例)。
通过上面的方法可以得到各视频通道1/4(或1/16)画面数据接下来的任务是将画面合成并传输给DSP做编码处理。通过实验得到:对于TMS320DM6467芯片的VPIF(视频设备接口)来说,只要输入视频数据有效数据行内从EAV到SAV之间的字节数为一定值(可由DSP内部寄存器设置),且行数满足对应制式要求,DSP就能将其识别为一帧有效数据。这样就能得到图3所示的第一种画面合成方法。这种方法虽然可行,但是可以看到,在有效数据区中每一行都由多个通道数据组成,在从内存读取数据时通道切换频繁。会给编码和调试带来困难。
通过实验得到另一个结论:在DSP内部是用DMA来搬运视频数据到显示bu仃er的相应位置。对于数据量相对较大的“数据块”来说,DMA所耗费的系统性能是非常接近的。由此,笔者设计出第2种换面合成方式,如图4所示。这样做可以简化逻辑设计,节约FPGA资源,提高项目开发速度。
2 系统设计
2.1硬件设计部分
图5是FPGA相关部分硬件框图,可以看到,16路视频数据由4片TW2815芯片输入到FPGA,经过分割合成处理后送入DSP。由于视频数据速度高、数据量大,所以采用两片DDR SDRAM进行缓存。主时钟为133 MHz,配置电路采用从串和JTAG模式,前者用于系统运行时由MCU进行配置,后者用于系统调试。FPGA芯片选用Xilinx公司Spaaen3ADSP系列
XC3SD3400A芯片。系统由ATX电源供电,内部各电平由电源芯片产生。内存为两片HY5DU561622ETP型DDR SDRAM。
2.2软件功能架构
图6为软件设计功能框图,它由多个功能模块组成。各模块功能如下:
①INPUT DEMUX:接收视频数据,根据视频解码芯片的工作模式将信号分解成ITU-RBT.656数据送入下级模块。
②VII)IN:检测SAV、EAV信号,提取有效视频数据(DI、CIF、QCIF),然后放入FIFO中暂存。
③WRITE DMA:按照设计中对内存的划分,将不同通道的有效数据写入设定的内存空间。
④READ DMA:按照一定的格式读取内存空间中的数据。
⑤MEM ARB:仲裁对内存的读写操作,协调读写模块工作。
⑥DDR SDRAM Controller:用Xilinx内存接口生成器(MIG)生成,实现FPGA与DDR接口
⑦VID OUT:在输出视频数据中添加通道号等辅助信息,便于DSP识别。
⑧12C_SLAVE:模拟12c从模块工作方式,外部MCU通过该接口对内部寄存器进行配置,以实现不同功能。
整个系统基于同步逻辑设计,使用Verilog HDL语言进行代码编写,仿真使用ModelSim,图7是其中典型一次写突发过程模块的仿真波形。
3 测试与验证
测试与验证主要使用ChipScop Pro在线调试工具。ChipScop Pro是Xilinx公司的片内调试工具(in-silicon debug),用于在线观察和分析FPGA内部信号,将逻辑分析仪、总线分析器等直接插入用户设计中,可以查看任何内部信号和节点。实时信号由JTAG口输入PC机,通过CllipScop Pro逻辑分析器进行分析。图8是用ChipScop Pro工具获取的FPGA运行时内部一次写突发过程中各相关信号的波形情况。
通过在线调试,解决硬件、软件方面存在的问题,最终实现画面分割月合成功能。图9为最终16路QCIF画面合成效果图。
4 结束语
数字化、智能化、自动化和网络化是未来监控系统发展的方向,而FPGA内部资源丰富,可以单芯片满足多通道数据分割处理,用于大规模多画面的矩阵式监控系统,有广阔的发展前景。
来源:钱伟康,王力,谢明
收藏
分享
评分
记录学习中的点点滴滴,让每一天过的更加有意义!
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议