APP下载

基于FPGA的实时图像采集与分析系统设计

2017-08-30黄玉蕾

计算机测量与控制 2017年7期
关键词:像素点像素控制器

林 青,黄玉蕾,焦 纯

(西安培华学院 中兴电信学院,西安 710125)

基于FPGA的实时图像采集与分析系统设计

林 青,黄玉蕾,焦 纯

(西安培华学院 中兴电信学院,西安 710125)

当今社会通信技术的发展促进了视频技术的运用,而视频图像分析技术在安防、娱乐、交通等领域受到了广泛的关注并遇到一些挑战;而近些年FPGA的稳定可靠、研发周期短等特性和该技术的成熟运用为图像的采集分析提供了一个新的方向;因此文章研究分析将FPGA运用到实时图像采集分析系统的技术;分析方法从介绍软硬件基础入手,硬件分析中主要讲解了各个功能模块的硬件选则和工作原理,软件部分分析了图像处理的算法并通过仿真检验算法;最后利用视频库资源的实验表明,系统可以完成对图像信息的读取、存储、算法检测、显示等功能,尽管存在一定的不足;从而得出结论:基于FPGA芯片技术为核心的系统可以完成对实时图像的采集与分析功能,较好地满足了系统对实时性的要求。

FPGA;实时采集;图像处理

0 引言

随着经济发展,社会生活对视频图像的需求量增长巨大。通过对图像的处理,可以快速的发现目标,并实现对目标的识别判断、路线跟踪、位置定位等任务。视频图像的分析技术为人类社会的有序发展提供了安全保障[1-3]。

近年来,依托现场可编门阵列FPGA(Field programmable gate arrays)技术来加大系统运算能力,受到大量研究关注。使用FPGA芯片可以利用其可编写特点,提高研发速率从而抢占市场先机。使用FPGA及相关技术有望满足市场对图像高速分析处理和速度快的要求[4-6]。

2014年,李华等的基于FPGA的彩色图像实时采集系统设计[7];2013年,贡镇的基于FPGA的实时视频图像采集与显示系统的设计与实现[8]。2014年,张智勇等人提出了基于FPGA的红外图像处理算法的测试系统[9];这些系统的设计说明FPGA技术越来越成熟并受到广泛关注和运用。

本文提出,以基于FPGA技术来建设一个实时图像采集系统是一个实用性强的有效方案。以FPGA为核心,完成图像采集模块,完成图像信息的采集和输入,图像存储模块,图像分析算法以及图像显示功能。方案通过实验获得成功,验证了基于FPGA技术系统的稳定高效性。

1 系统总体框架设计

整个系统的设计分为两大部分,硬件和软件。硬件部分分为对图像信息采集模块,对数据的存储及读取显示模块。根据目的要求,在图像采集中使用了CMOS数字图像传感器MT9M011,该芯片具有性能稳定、简单特点,被广泛用于图像采集。图像显示使用VGA显示接口,使用数字存储器SDRAM作为图像数据缓冲器。

图1 实时图像采集与分析系统框架

如图1所示,系统以FPGA控制器为核心,辅助以图像采集、存储、显示电路模块。

系统工作时,当系统上电稳定后,FPGA控制中心对图像采集器发送信息,使其进入到工作状态并按序将图像输送到控制器中。控制器对输入的图像数据先进行量化,同时将10位数字像素处理成为30位RGB信息。此时数据可以存储起来也可以经过算法处理用于图像输出显示。30位数字信号用于VGA显示之前,需要通过数模转换,将模拟信号供于终端显示器。

另一方面需要对实时采集到的图像信息处理进行目标识别判断。目标识别需要对实时获取的图像进行特征提取,然后与目标图像作对比。由于采集的图像存在背景和其它干扰信息,需要对多个采集图像建模,提高对个体比较的准确率。使用合适的图像处理算法去除背景噪音,快速的提取实时图像的特征信息。

系统设定对图像采集大小为320X240,对图像的接受格式为SXGA;系统设定以27 MHz时钟频率进行转换数据;图像的存储位置设定优先SRAM-A,显示模块中,输出图像大小为320X240,,帧数20/s。

2 系统硬件设计

2.1 实时图像采集模块

本方案中,使用的是CMOS型数字图像传感器MT9M011,输出SXGA格式。芯片内部将模拟电信号转成10位数字信号输出。另外该芯片内部包含I2C总线控制,所以操作容易,时序简单,利于控制器的编程控制。

如图2所示,图像采集器与控制器连接接口示意图。MT9M011虽然有许多的引脚,但是与控制器主要接口是主时钟、总线控制、场有效信号、行有效信号、像素时钟、数据输出为0~9。主时钟线是FPGA用来给图像采集芯片提供主时钟。 使用场有效信号、行有效信号、像素时钟配合IO来输出10位数字图像信息数据流。

图2 图像采集器与控制器连接

I2C总线控制是相当重要的,控制器通过总线中的SCLK和SDATA来完成对图像采集传感器的设置。因为总线可对MT9M011得内部寄存器设置进行改写、配置、编程等操作。列如改变调节曝光时间、分辨率、帧率等。

图3 I2C总线时序图

如图3是总线读写时序图。本系统FPGA作为主机向MT9M011发送地址,再发送对采集器内部寄存器地址设置,最后发送配置数据。当SCK高电平,SDA有高变低时,视为其实信号,触发工作机制。当SCK高电平,SDA有低变高时停止工作。在此期间,SDA发送大量的信息到采集器。

2.2 图像存储模块

为了提高系统容量,需要外接SDRAM存储器用来辅助。由于外接图像显示模块对图像帧的需求速率难免和外接图像采集设备传输图像速率不一致,导致存储读取矛盾。为使系统正常工作,存储器模块需要采取适当的策略:乒乓策略。

如图4,为了解决采集与显示模块处理速率矛盾,设计存储模块使用两片SRAM构成,两片RAM在高层控制管理下,轮流执行相应的工作,即乒乓操作。

图4 存储模块乒乓操作原理

当管理层将采集的图像数据写入SRAM-A时,SRAM-B处于稳定状态,此时高层控制器命令视频显示模块只能够从B处读取数据进行显示;相反的,SRAM-B进行更新时,SRAM-A处于稳定状态,此时高层控制器命令视频显示模块只能够从A处读取数据;使用乒乓原理,系统可实现图像采集和实时显示的连续性,解决了潜在的模块间的不兼容问题。

2.3 图像显示模块

系统从SDRAM里读出的数据信息,需要经过经D/A转换,本系统使用ADV7123 转换器将数字信号转成模拟信号,由VGA 显示终端显示出来。在VGA模式中,VGA时序标准是由HS和VS信号来指定行起始点和帧起始点。

图5是利用ADC7123完成数模转换原理图。IOR、IOG、IOB分别为红、绿、蓝色接口的输出端。CLK是时钟信号,SYNC是FPGA提供的同步信号。由图可以看出,HS和VS直接由FPGA控制器提供给VGA接口。使用HS和VS的组合,可以为地址产生提供依据,因为其具有行列计数器功能。地址产生和RAM控制程序依据VGA时序,例如对行列极速器检测,将关于数字图像的数据发至数模转换器中,依据VGA的时序。最后将模拟信号送至VGA接口和显示终端。

图5 图像AD转换及VGA显示接口

图6是信息同步时序图。如图,当VS高电平时,场信息和行信息有效。同步信号可以在FPGA里面构建。使用800像素脉冲计数器。PCLK在计数器8-103之间输出低电平,其它为高,那么为行同步信号HS。以HS行为单位计数到4时输出低电平,计数器清零,作为VS同步信号。

图6 行场同步时序图

3 系统软件设计

3.1 基于LBP图像识别算法

图像识别技术在生活中应用越来越广泛,为生活、安全提供了极大方便。使用扩展LBP技术,可以对物体的特征进行纹理提取。

扩展LBP的算子可以由(P,R)表示,P代表和中心像素相邻像素点的数量,R表示以中心像素点为中心相邻点到中心的距离。图7可以很容易看出原理。

图7 不同参数像素分布示意图

为了方便对LBP算子描述,使用函数E表示中心像素点和相邻点的分布:

E=e(gr,g0,g1…gk-1)

(1)

式中,gr代表某个中心像素点的灰度值,gk表示与中心点相邻的像素点。每个中心点和相邻点组成半径和数量可以不同。一个中心点周围其他点gk的坐标为(xk,yk) 可以如下表示:

(2)

假设每个点是相互独立的,有:

E=e(gr,g0-gr,g1-gr…gk-1-gr)

(3)

中心像素点的相互独立虽然会造成部分数据的丢失,但对结果影响不大。

由于主要是为了获得二值特征,只需要知道差值结果符号,这样的结果不受曝光强度影响:

E=e(s(g0-gr),s(g1-gr)…s(gk-1-gr))

(4)

式子中,

(5)

计算获取的二值,s需要权重值,再进行求和运算,可获得此像素点局部纹理特征值,表达式:

(6)

算法步骤总计以下几步:

1.将检测图像划分多个分块;

2. 对于每块中的一个像素,将相邻的多个像素的灰度值与其进行比较,若周围像素值大于中心像素值,则该像素点的位置被标记为1,否则为0,即得到该窗口中心像素点的LBP值;

3.计算每块的直方图;

4.统计每块的直方图并整合为特征向量。

3.2 算法检测

为了验证该算法,本文对两幅大小不同的图片使用了LBP算法进行了作处理,进行算法验证。一般情况下,算法对图像的处理首先是将图片分割成块,然后对每块图像矩阵信息进行计算,然后对每块的统计信息左整合处理,得到原图的特征数据图。对图像的分割显得尤为重要,分割的数量要根据实际情况确定。数量过多,那么算法对图形的描述更精细,是LBP算法维度过高;若数量太少,获取的信息又较为粗糙,失去细节信息,对原图的数据估计和掌握姜出现不足。所以,经过多次验证,对参数P取值8较为合适。

图8是对花瓣进行LBP算法处理后的获取的图片特征信息。左图是原图,右图是仿真获取的LBP特征图谱。可以观察发现,特征图是对原图纹理信息的提取。图像轮廓较为清晰,算法处理得到较好数据。

图8 200*200图像LBP预处理

图9是对小图进行LBP算法处理后的获取的图片特征信息。虽然右图仿真获取的LBP特征图谱相比图8颗粒较为粗,但获取的轮廓信息依然较为清晰,算法处理得到较好数据。

图9 100*100图像LBP预处理

4 实验结果与分析

4.1 实验过程

本次实验视频数据库来自UCSD,用于系统图像采集模块对图像的采集。FPGA控制系统可以调用显示模块显示获取的图像。在图像的检测阶段,将截取的图像使用LBP算法对其进行纹理轮廓的提取获得LBP图谱。该方法对特征信息提取能力很突出,且有一定的稳定性。对提取的图像建立图像集,利用图像集建模为后期图像比对识别提供建模资源。

本实验使用共100个视频资源,包含了不同场景、光照、行为等。随机使用20个视屏作为系统学习训练,将剩下的作为实验的检测测试。为了有个说服力较高的结果,对部分图像随机加了干扰噪声等。

4.2 实验结果及分析

本节展示实验的结果。

图10是系统对花瓣经过系统处理后显示和经过算法处理后的效果图。(a)图是给系统图形采集模块需要采集的原图像,(b)图是系统将采集后的图像经过显示模块显示,观察发现,图像出现一定程度的斑点和毛刺,但不影响视觉信息的获取。(c)图是进行LBP算法处理后的图谱,获取原图像的纹理信息。图10结果表明,该系统对实时图像采集分析能力达到基本要求,实验具有较好的效果,图片清晰,特征图谱纹理清晰。

图10 花瓣实验图像效果

图11是对图片的检测成功概率。随着图片数量的增加,检测识别率提高,因为随着数据输入的增加,所可以使用的资源越来越多,识别率慢慢稳定。由图中可以得出,在大型的图像识别系统中,需要大量图像数据存储库来比对识别。特别是完成较复杂的图像建模工作,需要大量的基础图像数据。图11的结果表明,该系统对图片的处理计算能力任务较好的完成,识别成功率高,利于后续工作展开。

图11 测试结果

从实验中,可以得出一个结论:

1)该系统可以完成实时图像采集;显示输出图片完成有序,没有明显信息丢失和乱码,系统具有基本工作能力;

2)系统使用的算法在图片集数量大的情况下,正确识别率增大,所以在系统正式开始之前,可以对系统进行训练或者增加图片集数量,待稳定后再投入工作;

3)使用的图片集越多,计算消耗时间有所增加。

5 结论

本文首先从硬件角度分析了各个功能模块的主要器件和工作方式,了解各个模块的特点。然后介绍系统图像处理算法,算法是检测识别的核心。最后实验验证得出结论:基于FPGA作为控制系统的核心控制芯片,设计实现实时图像采集与分析系统,能够高效稳定安全运行,经过对系统实验分析,本系统达到了到了目标要求。

本方案的不足依然存在一些不足:

1)算法有待完善,当数据量增大后,系统消耗时间有所在增加,对系统的实时性有潜在的挑战;为了克服此问题,需要寻找更为合理高效的图像处理算法;

2)系统显示模块的输出图像质量与目标图像存在一点点差距,可以进一步优化对信息的采集方式,同时加入去噪的补偿电路或者算法,提高图像的输出质量。

[1] 李 燕,汤心溢,葛 军,等.基于FPGA的多通道红外图像实时采集系[J].红外与激光工程,2012,41(5):1364-1368.

[2] 刘龙申,沈明霞,孙玉文,等.基于FPGA的农田图像采集与3G 无线传输系统设计[J].农业机械学报,2011,42(2):186-190.

[3] 朱奕丹,方怡冰.基于FPGA 的图像采集与VGA 显示系统[J].计算机应用,2011,31(5):1258-1264.

[4] 刘明波,顾夏华,周琳琦.基于FPGA的远程温湿度监测系统设计与实现[J].计算机测量与控制,2011,19(11):2619-1622.

[5] 赵 晶,陈向东,陈欣鹏,等.基于FPGA的QCM湿度测量系统程序设计与仿真[J].电子设计工程,2013,21(22):126-132.

[6] 程素娥.基于FPGA的智能压力传感器系统[J]. 监测与仪表, 2010,37(8):53-55.

[7] 李 华,朱 波.基于FPGA的彩色图像实时采集系统设计[J].液晶与显示,2014,29(2):258-265.

[8] 贡 镇.基于FPGA的实时视频图像采集与显示系统的设计与实现[J].现代电子技术,2013,36(13):46-48.

[9] 张智勇,杨 晨,刘海桥,等.基于FPGA的红外图像处理算法的测试系统[J].激光与红外,2014,44(7):829-831.

FPGA-Based Design and Analysis of Real Time Image Acquisition and Analysis System

Lin Qing, Huang Yulei, Jiao Chun

(ZTE Telecommunication College, Xian Peihua University, Xi’an 710125,China)

Nowadays, the development of communication technology has promoted the application of video technology, and the video image analysis technology has been paid more and more attention. In recent years, the stable and reliable FPGA, short development cycle and other characteristics and the mature application of the technology provides a new direction for image acquisition and analysis. Therefore, this paper studies the application of FPGA to real-time image acquisition and analysis system. Based on the introduction of hardware and software, the hardware analysis mainly explains the hardware selection and working principle of each functional module. Finally, the experimental results show that the system can complete the function of reading, storing, detecting and displaying the image information. The conclusion is drawn that the system based on FPGA chip technology can complete the function of real-time image acquisition and analysis.

image processing; collection; real time

2017-01-05;

2017-02-06。

陕西省高等教育教学改革研究项目(15BY122);西安培华学院教育教学改革研究项目(PHZ1606)。

林 青(1979-),女,陕西西安人,副教授,主要从事计算机网络、大数据方向的研究。

焦 纯(1973-),男,湖北武汉人,工学博士,副教授,系主任,主要从事计算机专业教学及科研工作方向的研究。

1671-4598(2017)07-0218-04

10.16526/j.cnki.11-4762/tp.2017.07.054

TP216

A

猜你喜欢

像素点像素控制器
像素前线之“幻影”2000
工商业IC卡控制器改造为物联网控制器实践
基于局部相似性的特征匹配筛选算法
“像素”仙人掌
基于5×5邻域像素点相关性的划痕修复算法
基于canvas的前端数据加密
ÉVOLUTIONDIGAE Style de vie tactile
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割
高像素不是全部
模糊PID控制器设计及MATLAB仿真