2 系统的硬件设计
整个系统由图像采集模块、图像处理模块、USB HOST接口的存储模块、10/100M以太网接口等五部分组成,其主要设计思想是(见图一):将CCD摄像头采集的模拟信号送入图像采集模块进行A/D转换,然后在时序和控制信号的作用下,把图像数据送到AT91RM9200,AT91RM9200对采集来的图像进行实时处理和分析,判断图像中是否有动目标,并提取出动目标,再将当前图像中动目标的位置信息和最近被记录下的图像中动目标的位置信息进行相似度比较,决定是否记录当前图像。这样的方法能有效的避免长时间记录静止不变的图像,减少了存储介质的浪费,也减轻了资料检索的工作量。为了方便资料的存储与提取,给AT91RM9200的USB HOST接口接USB存储设备来存储图像数据,最后通过把图像数据通过因特网传输到用户终端。
图一 系统框图
图像采集模块
系统使用的图像采集设备是CCD摄像头,成像器件:1/4 "SHARP CCD,有效像素:PAL:512x582、NTSC:512x492;水平清晰度:420TV LINE;扫描频率:PAL/NTSC: 50Hz/60Hz。
由于CCD输出的是模拟信号,要经AD转换才能送给CPU进行处理,ADC芯片采用Philips的SAA7114,SAA7114有六路模拟输入,内置模拟源选择器可构成6×CVBS、2×Y/C2×CVBS、1×Y/C和4 ×CVBS;两路模拟预处理通道,内有抗混迭滤波器;CVBS或Y/C通道含完全可编程静态增益控制或自动增益控制功能,对CVBS、Y/C通道可进行自动钳位控制;能自动检测50Hz/60Hz场频,并可自动在PAL和NTSC制式进行切换;能将PAL、NTSC和SECAM信号解码及模数变换得到符合ITU-601/ITU-656的数字电视信号。该芯片是目前视频解码芯片中接收视频源的宽容性及视频解码图像质量最好的一种。其通过I2C接口,进行初始化设置。SAA7114的 A/D转换精度是9b,并行输出8b视频输出带为27 MHz。每一个时钟周期(1/27MHz)并行输出1个字节,除了输出数字象素外,SAA7114还输出时钟信号以同步。可以通过设置SAA7114的相关寄存器来控制SAA7114输出图像的尺寸。[3]
同步FIFO采用TI公司的SN74ACT7881,大小为1024b×18,同步FIFO与SAA7114的接口速度为27MHz,宽度为8b。FIFO与AT91RM9200的接口速度可以配置为27MHz,宽度为16b。当FIFO中快写满数据时,给AT91RM9200发出控制信号以使AT91RM9200产生中断,取走FIFO中的数据。
图二 图像采集模块
3.2图像处理模块
AT91RM9200是图像处理模块的核心部件,主要完成系统初始化和后续的图像处理,系统采用ATMEL公司的AT91RM9200。该芯片融合了ARM920T ARMThumb 处理器,工作于180 MHz时性能高达200 MIPS,存储器管理单元,16-K 字节的数据缓存,16-K字节的指令缓存, 支持SDRAM,静态存储器,Burst Flash,无缝连接的CompactFlash,SmartMedia及NAND Flash。存储控制器(MC) 管理ASB 总线并最多达4 个主机的访问控制。它通过一个总线判决器和一个地址译码器将4G字节的地址空间分区来访问内置的SRAM与ROM,内置外设及通过外部总线接口(EBI) 的外部存储器 。它还可通过一个异常中止状态与一个失调检波器来帮助应用程序调试。SAA7114的初始化接口采用AT91RM9200的两线接口(TWI),图1是AT91RM9200跟SAA7114的连接图。