论文部分内容阅读
综合国内外在视频监控技术上的发展特点,本文在市场上单点单方向低分辨率监控系统的基础上提出了一种基于FPGA的360°全景监控系统的实现方案,主要完成了以双NIOS II软核处理器为核心的远程网络全景监控功能和以VGA播放为核心的本地常规监控功能。本设计首先采用8个CMOS图像传感器OV9650按照正八边形布局采集360°全景视频,再采用一片CPLD对图像传感器进行初始化配置,并对其采集的360°全景视频数据进行预处理,然后送给FPGA端;由FPGA捕获全景视频数据之后分别实现远程监控功能和本地监控功能。其中远程客户端可以是任意一台接入监控网络的PC机,利用PC机编写监控应用程序接收、解析,并采取滚动式播放全景视频;而本地客户端可以是任意一台有VGA接口的显示器,通过VGA线接上显示器即可播放其中一个摄像头的监控视频,同时添加了按键以便用户能够在8个摄像头间来回切换监控画面。本文在实现远程监控功能时的设计思想为:全景视频数据经过FPGA内部2个RAM乒乓缓存后送入由2个NIOS II软核和相应外设构建的SOPC系统,通过多核架构实现全景视频数据的读取、存储和网络传输。设计首先定制符合AVALON总线规范的2个RAM控制器读取外部RAM中的全景图像数据;然后在第一个NIOS II软核中开启DMA传输,将全景视频数据存入SRAM中;同时在另一个NIOS II软核中移植实时操作系统uC/OS-II进行多任务调度,并选用LWIP协议、socket编程将SRAM中的全景视频数据传输到网络上。本文在实现本地监控功能时的设计思想为:经过按键选中的一路视频数据经过SDRAM缓存后送入由视频转换芯片ADV7123构成的VGA驱动模块。设计首先通过VHDL语言完成视频从输入YUV422格式到输出RGB565格式的转换,并编写SDRAM硬件驱动、VGA时序;同时调用FPGA内部FIFO IP核实现摄像头(24MHz)、SDRAM(100MHz)、VGA(25MHz)三者间跨时钟域的数据交互,并最终得到VGA播放所需要的格式视频数据。最后,本全景监控系统采用Altera公司提供的FPGA开发板作为实验平台,实验结果表明本设计达到了预期目标。