当前位置:首页 > 工业控制 > 《机电信息》
[导读]摘要:为了解决视频流数据实时显示和图像预处理问题,设计了基于FPGA和OV5640摄像头的图像采集和处理系统。该系统通过OV5640摄像头进行图像数据的采集,然后将其传输至FPGA内部,FPGA先控制视频流数据存储在SDRAM中,再将其传输至TFT显示屏进行实时视频流显示和处理。

引言

基于FPGA图像采集和处理系统具有功耗低、体积小、处理速度快的优势,在图像采集和数据处理方面有广泛应用。本次设计主要解决了视频流数据实时显示和图像预处理问题,图像采集和处理系统基于FPGA和OV5640摄像头,通过OV5640摄像头进行图像数据的采集,然后将其传输至FPGA内部,FPGA首先控制视频流数据存储在SDRAM中,再将其传输至TFT显示屏进行实时视频流显示。与此同时,内部集成图像处理模块能实现视频数据的中值滤波、高斯滤波、边缘检测等功能。该图像采集和处理系统结构如图1所示。

1摄像头

本次设计摄像头选用OV5640,支持MIPI和DVP两种接口。DVP接口是并行总线接口,MIPI接口是LVDS低压差分接口。现拟采用DVP接口驱动该摄像头。

OV5640所使用总线为SCCB,该总线类似于I2C总线,总线时序分为写时序和读时序。

写时序:Start一deviceid一ac一一kaddr一ac一一kdata一ac一一Stwp:

读时序:Start一deviceid一ac一一raddr一ac一一Start一ac一一rdata一nac一一Stwp。

其中,Start表示启动总线:deviceid是设备ID,最后一位表示读写操作码,低表示写,高表示读:ac一是写操作应答信号:kaddr表示寄存器地址:raddr表示写对应的寄存器数据:kdata表示写寄存器数据:rdata表示读对应的寄存器数据:Stwp表明关闭总线。

使用OV5640,需首先进行上电初始化,然后对其关键寄存器进行配置以实现寄存器初始化。经过上述两个步骤后,即可操作该摄像头进行图像采集。拟选择的视频采集参数为480dpi,刷新率60fpS,图像格式为RGB565。由此算出PCLK时钟频率至少为PCLK=800×480×(16bit/8bit)×60=46.08MHz,而从时序可知图像显示会有一定比例无效像素点,故PCLK实际频率大于46.08MHz。

在视频流数据实时采集到FPGA再通过VGA接口实时显示于链路中,二者数据速率存在偏差,故需要在其中添加图像数据缓冲单元。图像的每个像素点为16bit,计算可知一帧有效图像的数据量大小6.144Mbit,片内ram无法满足要求,故选用外部存储方式。外部存储选择SDRAM,并将SDRAM的存储空间分为两个子空间,每个子空间存储一帧数据,实时通过乒乓操作进行切换,从而达到视频流数据的无缝传输。

2SDRAM

SDRAM全称为同步动态随机存储器。同步指其工作频率与对应控制器的系统时钟频率相同,且内部命令的执行与数据传输都是以该时钟为基准。本设计选用HY57V281620SDRAM,共有128Mbit存储空间,4个Bank。

为控制SDRAM,首先需对其进行上电初始化,然后便可对SDRAM进行操作,即读、写以及刷新。根据数据手册中读写刷新操作的说明,最终完成SDRAM的控制器设计,能够实现FPGA外挂SDRAM的读、写、刷新操作。

3TFT显示器

视频显示器选择RGB接口TFT屏,RGB接口的TFT屏扫描方式和VGA标准类似,都为行列扫描。TFT屏扫描方式与VGA差异在于VGA显示器接收模拟信号,而TFT屏则省略了此过程,直接接收数字信号。故可以按照设计VGA显示器的方法驱动该显示屏。

为驱动VGA接口,需了解其时序,其分为行扫描、列扫描。扫描从屏幕的左上方开始,从左到右,从上到下进行扫描,每扫完一行,电子束都回到屏幕的下一行左边起始位置。在这期间,CRT对电子束进行消隐。每行结束时,用行同步信号进行行同步:扫描完所有行,用场同步信号进行场同步,并使扫描回到屏幕左上方。同时进行场消隐,预备下一场(帧)的扫描。

不同VGA显示屏之间除了时序参数不一样外,其他并无差异,可按同一方式设计。在设计VGA驱动代码时,可将时序指标进行参数化设计,这样在更换显示屏时只需改动参数便可完成驱动。

3图像处理模块

图像处理模块用于实现视频流数据的图像预处理,包括中值滤波、SObe1边缘检测等。不同于ARM、DSP等通用CPU,FPGA进行图像处理能高速并发,重复设计,流水线控制。

中值滤波是一种基于排序统计理论的非线性平滑计数,能有效平滑噪声,且能有效保护图像的边缘信息,所以被广泛应用于数字图像处理的边缘提取,其基本原理是把数字图像或数字序列中一点的值用该点邻域内所有点的中值来代替。

FPGA中实现中值滤波,首先利用移位寄存器生成3×3像素矩阵,然后使用当前待滤波像素领域的9个像素的中值代替该像素。求中值的方法是:(1)对3×3矩阵的每行按从大到小进行排序。(2)利用排序法求出最大值那一列的最小值,求出数那一列的中间值,求出最小值那一列的最大值。(3)将求出的三个值再排序,这三个值的中间值就是这个3×3矩阵的中间值。

45SOb1边缘检测

SObe1算子主要用作边缘检测,在技术上,它是离散型差分算子,用来计算图像亮度函数灰度的近似值。SObe1边缘检测的核心在于像素矩阵的卷积,卷积运算的本质就是对制定的图像区域的像素值进行加权求和的过程。其计算过程为图像区域中的每个像素值分别与卷积模板的每个元素对应相乘,将卷积的结果做求和运算。

与中值滤波一致,采用移位寄存器实现3×3像素矩阵。SObe1算子的实现划分为3个步骤:(1)计算Gx、Gy:(2)求GEQ \* jc3 \* hps10 \o\al(\s\up 3(+GEQ \* jc3 \* hps10 \o\al(\s\up 3(:(3)求GEQ \* jc3 \* hps10 \o\al(\s\up 3(+GEQ \* jc3 \* hps10 \o\al(\s\up 3(的平方根。其中,Gx、Gy为原图像3×3像素矩阵与横向纵向高斯模板卷积后矩阵,求平方根时调用成熟稳定可靠的CORD1C1P核实现。

原图与经过中值滤波和SObe1边缘检测的图像分别如图2、图3、图4所示。由图2、图3对比可知,中值滤波后清晰度较好,有效过滤了椒盐噪声。由图3、图4对比可以看出边缘的部分显示为黑,其余部分显示为白,这样可以清楚看到图像边缘。

6结语

本文对图像采集系统的各个分模块做了独立设计,并将其整和、协调控制,完成了实时视频流数据的高速采集、高清显示以及图像预处理功能,并能够对实时视频流数据进行中值滤波、SObe1边缘检测等处理。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭