基于ZYNQ FPGA实现图像采集存储显示

1 FPGA硬件系统设计
基于ZYNQ FPGA实现图像数据采集、存储、处理和显示系统框图如图1所示。说明:2路摄像头采集系统,4种显示方案,原始数据显示2路,经过算法处理2路。
基于ZYNQ FPGA实现图像采集存储显示_第1张图片
图1 系统设计
OV5640模块:图像传感器,视频流来源。
写VDMA模块:硬件采集到的数据通过写VDMA存储到PS端的DDR中。
ZYNQ模块:ZYNQ-7000系列FPGA,ARM + FPGA架构,核心处理芯片。
读VDMA模块:通过读VDMA从PS端的DDR中读取图像数据。
RGB转换DVI模块:32bit转为RGB888,再转为DVI时序输出到HDMI显示。
HDMI显示器:显示图像视频数据。
2 关键技术
1)OV5640摄像头
设计中采用两片美国OmniVision公司的CMOS图像传感器OV5640,OV5640芯片支持DVP和MIPI接口。为保证OV5640正常工作,需要依次实现以下时序要求。
a、ResetB拉低、PWND拉高;
b、DOVDD和AVDD同时上电;
c、电源稳定5ms后,拉低PWND,再过1ms,拉高ResetB;
d、20ms后初始化OV5640DESCCB寄存器。
e、通过IIC接口配置,配置目标为RGB565、30FPS、720输出格式;
f、FPGA接收来自OV5640的视频流数据输入,需要对摄像头完成相应的时序操作。每次传输8bit,16bit为一个像素点,所以要进行数据转换8bit-16bit-32bit;
2)图像处理算法
边缘检测算法要求首先找到图片中物体的边缘,由于边缘处颜色变化一般比较明显,在工程上一般借助卷积滤波器实现,卷积滤波器相当于求导的离散版本。针对图像进行边缘检测,有多种不同的滤波器算子,我们采用的Sobel滤波器算子图1,分别针对图像水平方向的边缘以及竖直方向的边缘,求和得出图像的边缘。

你可能感兴趣的:(fpga)