页面加载中,请稍候
来源:电子设计工程发布时间:2013-10-2328浏览
询问 AI摘要:为了改善实时图像输出质量,研究基于SDI接口的增强显示系统软硬件设计。利用模块化思想提出一个基于SDI接口输出的硬件架构,以FPGA作为处理核心,通过2片SRAM的双缓存结构实现图像的乒乓控制,使输出图像满足SDI接口协议。在此提出了灰度拉伸、伪彩色处理以及画幅缩放3种实时图像增强算法。通过实验测试,系统工作稳定、实时性好,加入增强算法后图像对比度增强,极大增强了人眼的视觉效果。
关键词:SDI;模块化;图像增强算法;伪彩;画幅缩放
0 引言
SDI接口(Serial Digital Interface)是直接通过采用数字化的方法对视频信号进行控制、处理和传输,将数字视频或者音频信号按有效行场方式通过单芯同轴电缆传输,而后将数字信号直接接入后续的处理系统,避免传统的模拟信号因A/D和D/A转换带来的图像细节和质量损失,也使得设备间的交互变得更加简单方便。SDI接口传输速率高、适应性强、即插即用、对环境要求不高以及应用范围广等特点,目前SDI已经作为国内很多战略靶场军工图像设备的一种协议标准。
目前在民用方面,SDI接口作为一种标准视频传输接口已被世界上多数视频设备厂商接受并采纳,涉足数字摄像领域、电视电影及专业的演播室等领域。世界知名的索尼、松下等公司生产的视频设备均支持SDI接口协议。
1 系统硬件结构
系统结构如图1所示,主要由Camera Link接口、千兆网接口、大容量SRAM存储器、FPGA芯片、SDI接口芯片以及SDI接口监视器等构成。这里FPGA是整个系统的核心逻辑,采用XILINX公司的V2系列XC2V4000FFG1152芯片,该芯片有1152个IO引脚,4 MB的系统门单元,120个乘法器,12个数字时钟管理器,824个用户可定义IO,120x18 b的块RAM。丰富的硬件资源给输入图像的显示和增强处理提供了可靠保证。该系统的基本工作过程首先接收Camera Link接口或千兆网接口的图像数据,经过专用接口转换芯片将数据转换成TTL或者CMOS格式,传送给FPGA,在FPGA内部经过实时图像处理、协议转换,输出符合SDI接口芯片的数据,经过接口芯片的并串转换,实时输出SDI标清图像数据。
这里FPGA的主要工作原理如图2所示。在该模块中,系统上电后首先完成对SDI接口芯片工作寄存器的配置,从而完成对其工作模式的选择;然后需要完成输入图像数据接口到接口芯片的行场时钟协议转换以及数据到YCbCr格式转换,这里采用FPGA对双缓存的控制完成格式转换,本文应用画幅缩放、灰度拉伸和伪彩色处理实现图像增强处理,这在下一节做具体描述。
2 图像增强算法
2.1 灰度拉伸算法
现在很多相机都基于CameraLink接口和千兆网接口,它们的输出数据位存在8 b,10 b和14 b等多种情况,本文在系统设计时做了智能处理,通过上位机RS232串口向该系统转换模块发送一个命令信号,告知系统输入端的灰度数据位数和系统输出端的数据位数,从而使算法实现不同的灰度拉伸。由于一般的监视器只能显示8 b灰度的图像数据,SDI信号有8 b和10 b两个差别。对灰度图像做一个线性拉伸,不论前端输入图像数据是多少位,可以利用该算法将图像数据映射到8 b和10 b空间,即下面介绍的拉伸处理。这里以输入图像数据14 b为例,假设输入为10 b图像数据,其宏观概念是。将14 b数据空间线性映射到10 b空间。假设做灰度拉伸前的灰度值为Yi,则它的灰度取值范围是[0,16 383];灰度拉伸之后的灰度值为Yi’,它的取值范围为[0,1 023],则Yi和Yi’直接直接的映射关系为:
如图3所示,假设原始图像中的某点(x,y),则相邻的右侧和下方像素点位置为(x+1,y),(x,y+1),(x+1,y+1),假设它们的灰度值分别是P1,P2,P3,P4,在水平方向和垂直方向上的位移都是单位1,并假设待插入点的位置坐标为:(x+dx,y+dy)。
那么根据双线性插值算法原理得到插入点的灰度值为:
P’(x+dx,y+dy)=(1-dx)(1-dy)P1+dx(1-dy)P2+dy(1-dx)P3+dxdyP4
化简后得到:
P’(x+dx,y+dy)=P1+(P2-P1)dx+(P3-P1)dy+[(P4-P3)-(P2-P1)]dxdy
从上式看出,当知道待插值点的偏移距离dx和dy后,那么该插值像素点的灰度值可根据周围的4点得到。该系统中的画幅缩放处理正是采用双线性插值算法,其在FPGA内部实现的具体功能如框图4所示,主要由数据缓存单元、双线性插值单元、插值系数控制单元组成。
在实现图像缩放算法以前,首要算出图像的缩放因子k。这里以一行图像为例,以单位长度“1”表示相邻2个像素的距离,图像缩放前的分辨率为A×1,图像缩放后的分辨率为B×1,则缩放前后的图像的像素缩放因子k=B/A。例如,分辨率为640x512的图像缩放为720x576的图像,则在水平方向上缩放因子k=1.25;垂直方向上的缩放因子k=1.125;根据不同的情况,在水平、垂直方向上的缩放比例因子不同。
根据图4和插值的运算公式,每经过一个像素时钟,插值系数dx,dy需要实时提供给插值运算模块,这就要求FPGA时序同步,并且FPGA各个功能模块能够有效配合。
3 实验结果及分析
将硬件系统和相机连接,该相机基本参数是320x256分辨率,14 b像素深度,帧频25/50可调。通过PC机的RS 232串口连接转一个转换设备,使之满足RS 422差分协议,以便发送命令给硬件系统和返回硬件系统状态。
FPGA程序采用模块化方式,分为图像采集输出模块、双缓存控制模块、通信控制模块、伪彩处理模块、灰度拉伸模块、画幅缩放模块和SDI时序生成模块,其中伪彩处理模块、灰度拉伸模块和画幅缩放模块通过RS 422接口发送不同的指令给FPGA,就会触发相应的模块工作,具体FPGA初始化过程中软件工作流程如图5所示。
SDI输出显示采用JVC公司专用的SDI监视器,和电路板之间用75 Ω的同轴电缆连接,系统工作后测试了相应功能,并将图像显示在监视器上,图6是显示的未通过任何增强处理的7~14位图像。
图7是显示的经过灰度拉伸处理的图像,将14位拉伸成8位。
图8是经过拉伸处理后再经过伪彩色增强处理的图像。图9是经过伪彩色增强处理的拉伸图像再进行画幅拉伸使之全屏显示。
4 结语
本文设计了一种基于SDI接口输出的图像显示系统,在FPGA里面封装了灰度拉伸、伪彩色处理以及画幅拉伸增强算法函数,几种算法可以单独调用,也可以串行一块工作。实验结果表明,该系统可以很稳定地将Camera Link接口或者千兆网口输入图像经协议转换为标清SDI输出,并可以把灰度很低的图像进行对比度增强,极大增强了人眼的视觉效果,由于SDI转换协议以及各个增强算法都在FPGA内部实现,完全可以达到资源优化利用和实时性要求。
新闻来源:电子设计工程,文中所述为作者独立观点,不代表icspec立场。更多精彩资讯请下载icspec App。如对本稿件有异议,请联系微信客服specltkj。
暂无评论哦,快来评论一下吧!
2026-07-16
2026-06-05

2026-06-09