车载视频监控记录系统的设计
扫描二维码
随时随地手机看文章
物流车、货车、押钞车通常是不法分子的攻击目标,如何能在抢劫事故发生后有效捉拿罪犯?在大中城市,交通事故的发生率非常高,而不少事故发生后,难以判断谁是责任方,相互争吵,皆因不能提出有力证据。为了解决这些问题,提出车辆实时视频记录要求。
车载视频监控系统是将视频技术应用于汽车、火车等交通工具,其基本功能是监视并记录交通工具内外的环境状况。其中图像传输和存储中非常关键问题就是图像信号巨大的数据量,对一定容量的传输通道和存储介质造成巨大压力和困难。为了节约传输带宽与存储,必须对视频信息进行高效压缩。该系统采用FPGA为主控中心,以ADI公司的实时压缩和解压缩高质量运动图像和静止数字图像的JPEG2000编解码器ADV212为核心设计和实现。
2 系统总体结构
系统复位后,以OV7648 CMOS彩色图像传感器为核心的摄像头输出640×480像素阵列大小,即307 200个像素,为SAV/EAV模式ITU.R-BT656 YUV4:2:2格式(8位)的数字视频信号,由视频信号输出数据总线传输到ADV212的视频接口。同时输出像素时钟PCLK,为ADV212器件提供时钟参考。但系统复位后,ADV212编码部分不能立即接收数字视频信号进行JPEG2000的编码压缩。系统控制器件FPGA需要通过数据总线DATA[15:0]和地址总线ADRE[3:0]配置ADV212内部直接访问以及间接访问的寄存器,加载ADV212编码模式所需的固件。并设置ADV212编码参数后,ADV212才能开始硬件编码,从而产生J2C格式的视频信号。系统选用ADV212的JDATA模式在握手机制配合下通过读使能信号读CODE FIFO,由主机接口HDATA[31:24](JDATA[7:0])输出压缩后的数据,经FPGA将数据写入Flash。压缩后的数据通过USB通讯模块读取到上位机。图1为系统硬件整体结构框图。
3 ADV212的视频和主机接口
(1)视频接口(VDATA总线) 利用VDATA总线输入未压缩的数据,而通过HDATA总线输出压缩后的数据。视频接口支持多种格式的视频数据和静止图像输入输出,包括8位,10位,12位单分量格式。这些模式中,VCLK引脚必须输入像素时钟信号(ADV7180 LLC时钟)。该系统选用JDATA模式,VDATA总线的高8位VDATA[11:4]分别与P[7:O]相连接,而低4位VDATA[3:0]通过10 kΩ的电阻拉低。
(2)主机接口(HDATA总线)ADV212通过异步SRAM方式、DMA访问方式或JDATA接口直接和大多数主机处理器及ASIC器件相连接。ADV212支持16位和32位的控制总线及8位,16位和32位的数据传输总线。控制总线和数据总线配置可以不同,这样可使得ADV212应用于那些需要不同宽度控制总线和数据总线的场合。主机接口用于配置、控制、状态传递以及传输压缩后的数据流。
JDATA模式由HDATA[31:28]~JDATA[7:4],HDATA[27:24]~JDATA[3:0]总线输出压缩后的数据。由Host Data Bus的HDATA[15:0]总线用于配置、控制、状态传递。主机接口的地址总线ADDR[3:0]分别与FPGA的地址总线A[3:0]相连,控制ADV212直接型寄存器。
4 ADV212寄存器初始化
系统复位后,系统ADV212编码部分不能立即接收数字视频信号进行JPEG2000的编码压缩工作。该系统控制器件FPGA需对ADV212寄存器初始化,加载ADV212编码模式所需的同件并设置ADV212编码参数,ADV212才能开始硬件编码工作产生J2C格式的视频信号。
ADV212包含16个直接访问的寄存器,主机必须首先初始化这些寄存器来保证其他操作正确。这里选用JDATA模式,通过ADDR[3:0]、HDATA[15:0]、CS、RD、WR、ACK等引脚访问这些寄存器。而对于间接访问的寄存器则是通过间接地址寄存器IADDR和间接数据寄存器IDATA实现,这两个寄存器可直接进行读写。由于该系统选用ADV212的JDA-TA模式,为16位主机模式,因此,访问间接寄存器还要用到分段传输寄存器STAGE。
当系统上电复位后,系统控制器件FPGA设置ADV212内部的时钟JCLK和HCLK,这两个时钟由内部PLL通过MCLK引脚输入的时钟产生。系统ADV212的MCLK引脚时钟由27 MHz的有源品体振荡器提供,JCLK和HCLK内部时钟经PLL寄存器设置为81 MHz。主控器件FPGA等待20μs后,设置软件复位寄存器为No-Boot Host模式。根据JDATA模式HDATA主机接口控制总线为16位和数据总线为8位,配置BUSMODE和MMODE寄存器。其中32 KB的encode固件程序通过USB通讯模块下载到系统的Flash存储器中,当系统上电复位后由FPGA把Flash中的固件数据通过访问间接寄存器加载到ADV212的固件RAM空间。设置ADV212编码参数包括:压缩比、量化步长、小波变换级别、小波变换模式、JPEG2000渐进模式等。
如果ADV212固件加载正确,嵌入式处理器会将应用程序ID写入SWFLAG寄存器。通过检验SWFLAG寄存器是否为所预知的值(编码模式的应用程序ID为OXFF82)就可判定固件加载是否正确。ADV212寄存器初始化后,在VALID和HOLD握手协议的配合下,通过读信号读CODE FIFO。图2为电路连接图。图中VDATA总线为YUV视频数据输入接口,HDATA总线和ADDR总线为FPGA对ADV212的配置总线,JDATA总线为ADV212中JDATA模式的压缩数据输出接口。
[!--empirenews.page--]5 系统分析
视频监控记录系统与CMOS摄像头封装在一个壳体内,为简化系统外围电路,系统未选用数字控制器DSP控制ADV212的DMA模式。选用Xilinx的XC2S100E FPGA作为主控器件,ADV212的JDATA模式与外围电路连接。由于该系统可循环记录,压缩存储容量为2 G字节,因此系统选用三星公司的K9K8G08UIM型2 G字节Flash,其页编程最大时间为700μs,数据写周期为25 ns,每页为4 K字节。当系统ADV212的Code FIFO门限值设为2 K时,图像压缩码流速率为2 K/(4 K×25 ns+700μs)=1.18MB/s,此速率下每场的字节数为20 K,系统能实现把十几分钟用16 G存储器存储的数字视频数据用2 G存储器存储的功能。为满足不同的图象压缩编码和图像质量要求,相应压缩码流速率可通过改变编码同件参数中RCVAL寄存器的值来改变码流速率,具体公式为:
其中系统输入为PAL制式视频信号,25帧/s,一帧分2场。经测试当图像压缩码速率小于1Mb/s时,图像逐渐变得模糊起来。
6 结束语
车载视频监控记录系统是将移动交通工具上的摄像机的图像通过数字压缩后,以JPEG2000标准(J2C)和增强的文件格式(JP2)的数据码流记录在Flash内,通过USB通讯模块读取到上位机,可用JPEG2000解码软件解码回放出图像。系统压缩具有很多优点,比较突出的特点:压缩比可较为精确的控制,支持渐进传输,容错性好。该系统用FPGA作为主控器件,具有很大的灵活性、扩展性和实时性。通过改变RCVAL寄存器的值可得到不同的压缩码流速率,以此实现视频信号不同压缩比下的压缩,具有较宽的压缩率变化范围,方便应用于对码流速率大小要求不同的应用场合,具有广泛的应用价值。