引言
目前,交通监控应用系统大多以紧急报警、车辆定位与语音通信为主,图像方面的应用不多。本文正是基于这样的考虑,设计了车辆图像采集与处理系统。该系统采集车后方的图像信息,实时地传送给前方的显示屏显示,司机可通过显示屏实时观测后方路面及车辆状况,倒车时可以及时发现后方障碍物及行人,安全避让。
实时图像采集处理系统的组成及工作原理
本系统由模拟摄像头采集视频数据,通过视频解码芯片将模拟视频信号转换为数字视频信号。CPLD 作为采样控制器,完成数字视频数据的存储和时序控制。本设计选用 TMS320C6416 实现系统控制和数据处理。具体组成如图 1 所示。
视频采集模块
图像的输入由模拟摄像头完成(本系统选用黑白摄像头)。摄像头输出为标准的复合视频信号(CVBS),该信号必须经过视频解码和 A/D 变换后进入数字系统才有效。由于模拟视频信号非常复杂,除了包含图像信号之外,还包括行同步信号、行消隐信号、场同步信号、场消隐信号等。因而,对视频信号进行 A/D 转换的电路非常复杂。本设计选用 TI 公司的视频解码芯片 TVP5146 完成从模拟到数字视频的转换。TVP5146 允许 10 路模拟视频输入,具有 4 路 10bit 30MSPS A/D 转换器;场同步信号 VS,行同步信号 HS,奇偶场信号 FID,时钟输出信号 DATACLK 等都由引脚直接引出,省去同步时钟电路的设计。
基于 DSP 的图像处理模块
实时图像处理系统设计的难点是如何在有限的时间内完成大量图像数据的处理。只有图像处理系统的处理速度达到每秒 25 帧以上时才能达到实时的效果,所以在系统设计中,处理器是关键,要求处理器运算速度快、实时处理能力强,并且还具有高速的存储器及 I/O 存取能力。本设计选用 TMS3206416DSK 作为视频信号处理系统。TMS3206416DSK 是一个低成本的开发平台,用户可以根据功能需要扩展硬件设计,便于硬件开发,缩短设计时间。
CPLD 控制模块
TMS320C6416DSK 板上含有一片 CPLD,它主要实现系统的逻辑控制和存储器地址解码功能。本设计仍需一片 CPLD 完成视频存储及显示的时序控制,选用 Altera 公司的 EPM7064ATC100 来完成上述功能,它的工作电压是 3.3V,具有 64 个逻辑单元,68 个 I/O 可用引脚,引脚间 4.5ns 延时,其最高的时钟频率为 222.2MHz。该器件基于 EEPROM 结构,可以通过 JTAG 接口现场编辑内部的结构逻辑,编程语言为 VHDL。数字视频信号输出时序如图 2 所示。
数字视频信号按图 2 所示时序输出。以 NTSC 制为例,图中 Y[9:0]为输出的亮度视频信号,DATACLK 为行锁定系统的输出时钟,为像素时钟频率的两倍,即 27MHz,用来同步数据采集,HS 为行同步信号,VS 为场同步信号,VBLK 为场消隐信号,FID 为奇偶场信号。HS 的高电平表示一行有效采样点 720 个,VS 的高电平表示一场有效信号,对于 NTSC 制信号,单场为 243 行,奇偶场信号 FID 为“1”时,表示当前为奇数场, 为“0”表示偶数场。
图像存储模块
为了实现图像的实时采集与处理,往往需要视频的输入转换和图像处理并行进行。传统上实现数据采集与处理同步的方法有:使用 FIFO 存储器;使用双口 RAM;使用双 / 单口 RAM 交替切换存储数据。考虑到图像处理系统需要处理的数据量太大,而且 FIFO 存储器和双口 RAM 的价格因素,本设计使用高速双 / 单口 SRAM 交替切换存储数据的方法。一帧图像容量为 720×486=349.92K 像素,选用 512K×8bit 的高速 SRAM。TVP5146 对亮度信号的采样频率是 13.5MHz,2 次写入的数据间隔是 74ns,可以选择 Cypress 公司的 CY7C1049CV33(512K×8bit,12ns,3.3V)来完成数据储存。
两帧的切换由 CPLD 设计的帧存控制器自动实现。当帧 A 存储 TVP5146 输出的数据时, DSP 读取并处理帧 B 的数据,完成处理后送往液晶显示。在帧 A 存满一帧数据,处理器也处理完帧 B 数据并完成一帧图像显示后,由 CPLD 构造的乒乓开关转换两个接口,DSP 开始从帧 A 里读取数据进行处理,这样,两帧轮换进行,实现了采集与处理显示的并行操作。
本设计采用场合并行法,将两场的数据写入一个帧存中。系统利用 VS 信号对此进行控制。当 VS 信号有效时,表明新的一场开始了,此时无效行计数器开始工作,控制不需要采集的图像行,计数到阈值后,有效行计数器开始工作,控制所要采集的图像行,并发出高位地址信号 A[18..11];同样,当 HS 有效后,无效像素计数器开始计数每行中的无效像素,然后有效像素计数器开始计数需要采集的行有效像素;每次计满 720 个像素后,等待下一次有效行信号的到来,同时将有效行计数器加 1。由于系统选用的帧存容量较大,因此利用 FID 的反相信号作为帧存地址的 A10,为每行图像提供了 1024 个存储空间(实际使用 720 个),可以简化数据写入与读出的控制电路。隔行的视频信号就会被逐行地存储到帧存体中。
图 3 所示为 CPLD 编程构成帧存储器和视频采集控制器。视频采集控制器根据 TVP5146 的同步信号 DATACLK、HS、VS 在内部产生对帧存储器的地址信号 A[18:0]、写信号 WR 以及帧切换信号 RDY1、RDY2。帧存控制器根据切换信号 RDY1、RDY2 进行接口转换:当一帧图像存入帧存储器时,帧切换的两个必要条件之一 RDY1 置为高电平,RDY2 在 DSP 处理完一帧图像并送出显示后置为高电平,当两者同时为真时,切换两通道的连接,开始新一轮图像处理过程,同时 RDY1、RDY2 复位,为下一次切换作准备。
TMS320C6146DSK 外扩 SDRAM 共 4M×64bit 的容量,为 2 片 MT48LC2M32B2,用来作为 DSP 处理后送往液晶显示前的视频数据缓存。
图像显示模块
本设计选用 EPSON 的 E35G23 图形显示模块,320×240 像素,带有行列驱动电路以及背光电路,16 级灰度显示。系统采用 CPLD 构成液晶显示控制器,应用 CPLD 产生帧同步信号及扫描时钟信号。VFRAM 为帧同步信号,标志着 LCD 屏新一帧的图像开始,每一帧中包含 240 个 VLINE 信号。在帧标志信号 VFRAM 有效后产生行同步信号,读数据缓存区,在像素时钟 VCLK 的控制下,将数据写入 LCD,每一行包含 320 个 VCLK 信号,完成一帧数据的写入。
结语
本文以高速 DSP TMS320C6416 为核心处理器,应用 TVP5146 完成模拟视频信号的数字化转换,CPLD 完成系统的时序控制,采用双 / 单口 SRAM 交替储存采集的视频数据,DSP 处理完数据后送往 SDRAM 缓存,最后将数据从缓存读出并送往液晶屏显示,实现视频数据实时采集处理显示。本系统是基于车辆视频监控而设计的,将对减少交通事故起到良好作用。
- 用于自动测试设备的 12 位 DAC
- NSI45030AZT1G 恒流 LED 灯串的典型应用
- SG1842交直流开关转换器典型应用电路
- 使用 Analog Devices 的 LTC1066-1CS 的参考设计
- OP184FS-REEL7 仅 5V、12 位 DAC 摆幅轨到轨运算放大器的典型应用
- 使用 NXP Semiconductors 的 TDA1521 的参考设计
- 【训练营】物联网感应灯-997610A
- LT3692AIFE、具有启动电流限制的 12V 至 3.3V 和 2.5V 降压转换器的典型应用电路
- MC78M08CDTRKG 8V可调输出稳压器的典型应用
- 2021电赛 | C题-三端口DC-DC变换器