标题 | 一种基于FPGA的视频监测模块实现 |
范文 | 陶佳丽 丁启凤 许强 赵希宇 姜志鹏 摘 要:利用摄像头获取监控现场视频信息,以FPGA为核心处理器,实现了一种视频处理模块。摄像头采用了PMOD CAM-0.3M模块,其传感器为OV7670,硬件开发平台采用了Basys3,片上FPGA采用了Xilinx的Artix7芯片,使用Vivado为开发软件,根据背景差分算法,实现了对现场的实时视频监测。 关键词:FPGA核心处理器; 视频监测 中图分类号:TP23? ? ? ? ? ? 文献标识码:A? ? ? ? ? 文章编号:1006-3315(2020)1-000-001 近年来,随着VLSI(Very large Scale Integration超大规模集成电路)技术的飞速发展,已能够在FPGA(Field Programmable Gate Array,现场可编程门阵列)芯片中实现复杂算法,包括各类视频处理算法。本文介绍了一种基于FPGA的视频监测模块的实现方法。 一、硬件设计 本视频监测系统的硬件模块框图如图1所示。 如图中所示,摄像头采用的是PMOD CAM 0.3M摄像头模块,与FPGA接口时,只提供了8位数据线,因此所采集的视频数据应分2次传给FPGA。这种摄像头模块的其核心传感器为OV7670,OV7670的内部如图2所示。 从图2可以看出,OV7670的时序产生模块负责产生所需的控制信号,能够控制图像阵列和帧信号的产生,控制帧率的时序、产生VSYNC、HSYNC和PCLK等外部接口时所需的时序控制信号。模块处理模块实现自动增益控制、自动白平衡等级功能,其产生的RGB三色信号,经过后续的模/数转换模块ADC转换为所需的数字信号,其转换速度最高可达到12MHz[1]。 本次设计中采用了Basys3开发平台,平台上所用的FPGA芯片为XILINX的Artix7系列,如图1所示,其具体型号为XC7A35T-1CPG236C[2]。该芯片拥有33,280个逻辑单元,分布于5200个区域中,每个区域中还提供了6输入查找表和8个触发器,另外还有,800 Kbits的快速RAM,资源比较丰富,能满足一般性的小型系统需求。 二、软件设计 1.SCCB总线初始化 图2中右下角的SCCB接口,全称为Serial Camera Control Bus,属于一种串行摄像头控制接口。OV7670采用了2线式SCCB接口,接口的时钟线和数据线分别是SIO_C和SIO_D,只能接收来自FPGA的数据。对SCCB接口进行配置的仿真结果如图3所示。 2.背景差分算法 为了能够对监测现场进行自动监测,本次设计采用了较简便的背景差分法。所谓背景差分法,是指首先存储一张正常情况下的图像作为背景数据,然后在监测过程中,将摄像得到的画面,与背景数据进行差分运算。如果监测现场没有发生任何显著变化,则摄像所得到的画面与背景进行差分后大部分像素位置参数正常。考虑到实际工程中存在着非入侵情况下的摄像现场画面的细微变化,因此在设计时,设置了门限,当差分值异常的像素位置总数不大于门限时,均认为监测现场属于正常情况。 本次设计进行差分计算的部分代码如下: always@(posedge clk) begin if(rst) outd<=0; else? ?if (dinA>dinB) odata<=dinA-dinB; else? ? outd<=dataB-dataA; end 三、結论 本文以FPGA为核心控制芯片,将摄像头所采集的视频数据与背景图片进行差分计算,根据差分计算的结果判断所监测现场的情况,充分利用了FPGA芯片强大的可编程功能和丰富的内部资源。在其他场合,当所需视频分辨力较高时,可选用分辨率更高的摄像头,并配以更复杂的监测算法,以达到更佳的设计效果。 基金:金陵科技学院2018年大学生创新训练计划项目(201813573095J);江苏省现代教育技术研究课题(2016-R-48673) 江苏省教育科学“十三五”规划2018年度重点资助课题(B-a/2018/01/39) 参考文献: [1] Patel D,Parmar R, Desai A, et al.Gesture recognition using FPGA and OV7670 camera[C]// International Conference on Inventive Systems & Control.2017 [2]姜志鹏,陈正宇,史金芬.应用型工科院校“口袋实验室”培养模式探索——以电子信息工程专业为例[J]统计与管理,2015(10) |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。