视频序列中目标特征提取标识的FPGA实现

2015-12-02 04:25王翠萍
山东电力高等专科学校学报 2015年4期
关键词:标号指向图像

王翠萍

山东英才学院 山东 济南 250104

0 引言

视频监控的智能化是目前安防发展的一个趋势,如运动目标检测、目标识别。在这个过程中经常需要对目标进行背景分离然后进行特征提取并标识。对于目标的背景分离根据应用的不同对应采用的算法也不同,目标背景分离并不是本文的讨论的重点。本文主要讨论目标分离后的二值化图像的处理。对二值化图像经常要进行目标连通域检测,在检测过程中需要提取目标的一些特征,比如目标的大小和目标框的坐标。并根据目标框的坐标在视频中将目标框选出来。

FPGA内置了硬核DSP和存储器模块,效率和灵活性要远远优于DSPIC,并且具有强大的数据并行处理能力,其图像处理能力在极低时钟频率下就可以实现图像处理的实时性。基于FPGA[1]可以实现SOPC(片上可编程系统),用户可以根据需要定制系统,缩短产品研发和更新换代的周期,快速做出有自己特色和自主知识产权的产品,因此其在智能视频监控中得到广泛采用。

1 快速连通域检测法目标特征提取

1.1 算法原理

连通区域检测是图像处理、模式识别中常用的一个基本方法。在目标分割,边缘检测,区域检测中有着广泛的应用。算法有4邻域或8邻域检测和基于像素或行程检测。本系统采用基于行程的8邻域连通域检测方法提取目标的外接矩形框 (目标框)坐标,该方法运行速度快,扫描一次二值化图像数据即可完成目标数目的统计和目标特征的提取。将一行中连续的多个目标点作为一个行程,根据当前行与上一行行程的相接关系,按照特定规则标记当前行程和特征修改[3]。不同的标记规则造成了特征修改方式的不同。文献[2]规则中“STEP7”对上一行中不同标号的行程处理是在等价数组中记录等价关系,和更新第一个出现行程的特征,并没有比较行程标号的大小。文献[3]也没有采用比较标号大小,导致多叉树深度增加,特征的修改深度相应增加。

基于行程的连通域检测方法[4-6]所用到的数据结构:

//行程结构体

typedef struct_line{long index;unsigned short colthOfStart,colthOfEnd;}line;

//连通域特征结构体

typedef struct COMPONENT {unsigned short left,top,right,bottom;long area;}_Com;

//单元结构体

typedef struct_node{long flag;_Com ComAttr;}node;

2.2 算法实现

定义两个行程数组,数组大小为列像素的一半,如 line Array1[WIDTH/2],Array2[WIDTH/2]。定义两个行程指针分别指向两个行程数组,一个用于当前行行程数组访问,另一个用于上一行行程数组访问,如 line*curLine=Array1;line*preLine=Array2。初始化全局行程标识为1,label=1。当检测到一个行程结束时处理步骤如下:

1)与上一行行程无相接行程

更新该行程标识index为全局标识,然后全局标识加1;用该行程数据初始化其标识指向单元的特征,行程标识初始化该单元标号。即

nodeArray[*(curLine+cur_index).index].flag=*(curLine+cur_index).index;label++;

2)与上一行有行程相接分三种情况

(1)若当前行程未标识,更新当前行程标识为上一相接行程指向单元的标号。即*(curArray+cur_index).index=nodeArray [(* (preArray+pre_index).index].flag;并更新当前行程标识指向单元特征。

(2)若当前行程标识大于上一行相接行程标识,更新当前行程标识指向单元标号和更新上一行相接行程标识指向单元的属性,即

nodeArray[*(curArray+cur_index).index].flag=*(preArray+pre_index).index;

nodeArray [* (preArray+pre_index).index].ComAttr需要根据

nodeArray [* (curArray+cur_index).index].ComAttr属性更新。

更新当前行程标识为上一行相接行程标识*(curArray+cur_index).index = * (preArray+pre_index).index;

(3)若当前行程标识小于上一行相接行程标识,更新上一行相接行程标识指向单元标号和更新当前行程标识指向单元的属性,即:

nodeArray[*(preArray+pre_index).index].flag=*(curArray+cur_index).index;

nodeArray[*(curArray+curArray_index).index].ComAttr需要根据

nodeArray[*(preArray+preArray_index).index].ComAttr属性更新。

图1 行程标识

图 1a)当前行程标识更新为 5,修改 nodeArray[5]属性;b) 先更新 nodeArray[5].flag=1; 并根 据nodeArray[5]更新 nodeArray[1]的属性。 更新行程标识为 1;c)需 要 更 新 nodeArray[3].flag=1, 根 据nodeArray[3]更新 nodeArray[1]属性;d)用 nodeArray[3].flag 更新当前行程标识,更新 nodeArray[1]属性。

1.3 算法验证

算法在VC环境下测试,输入以下三幅分辨率为324×256的二值化图像数据,分别采用本文算法和经典检测算法进行检测。测试结果见表1:

图2 测试图

表1 性能对比表

由表1可以看出,随着连通个数的增加和连通性复杂程度的增加,处理时间只是略有增加。而传统经典算法处理时间增加明显。

2 目标框在视频序列上的叠加实现

视频信号由3部分组成:图像信息、同步脉冲、消隐脉冲[7-8]。视频同步分离芯片LM1881引脚和视频信号组成如图3所示。在视频上显示一个亮点的基本原理是在场同步信号有效期间 (即高电平期间)和行同步信号有效期间(即高电平期间),在行同步信号相应的位置上,图像信号部分叠加一个脉冲信号,脉冲信号的电压幅值大小决定了该点的显示亮度,而脉冲信号的宽度决定了亮点显示的宽度。字符或线条的显示效果就是由许多这样的亮点组成。

本文目标框叠加电路组成如图4所示,包括视频放大电路、行场同步信号分离电路和模拟信号选择电路。当2路模拟复用器芯片在某段时间内选择输出可调电平时,复合视频信号在此段时间内为该电平。这样在显示视频中就会看到一条亮线,线的亮度可通过可调电平改变。当选通时间可精确到一个像素在信号中占用时间时,就可以实现在屏幕任意位置,控制输出1个像素大小的亮点。

图3 视频信号波形

图4 目标框叠加电路组成

3 FPGA视频处理架构设计

本文的FPGA视频处理架构如图5所示,FPGA配置成一个基于NIOSII嵌入式软核的SOPC系统。该嵌入式系统包括图像采集预处理单元、OSD单元、NIOSII微处理器单元、SDRAM控制单元、Avalone总线单元、异步串口UART单元、串行存储EPCS单元、定时器Timer单元;其中图像采集预处理单元与OSD单元采用自定义外设的设计架构,以充分发挥FPGA的并行处理能力。

图5 FPGA内部功能单元组成

4 结束语

本文采用基于行程的连通域检测方法提取二值化目标的外接矩形框特征,征提取速度明显优于传统算法,采用NIOII处理器完全能够做到实时处理。目标框叠加电路为以FPGA为处理核心的视频处理方案提供了一种简单高效的字符叠加方法。并且由于FPGA本身采用并行处理方式,大大提高了图形处理速度,适用于实时性要求高的嵌入式应用场合。

[1]帕克(美),邓天平(译).嵌入式视频处理权威指南[M].北京:机械工业出版社,2014:78-247.

[2]孔斌.快速连通域分析算法及实现[J].模式识别与人工智能,2003,16(1):110-115.

[3]张恒.基于快速连通域分析的目标特征提取算法[J].计算机工程与应用,2009,45(29):230-232.

[4]M.B.Dillencourt,H.Samet.A general approach to connected component labeling for arbitrary image representations[J].Journal of the ACM: vol.39,1992,pp.253-280.

[5] J.Hecquard,R.Acharya.Connected component labeling with linear octree.Pattern Recognition: vol.24,No.2,1991,pp.515-531.

[6] A.Choudhary,R.Thakur.Connected component labeling on coarse grain parallel computers:an experimental study.Journal of Paralleland Distributed Computing: vol.20,1994,pp.78-93.

[7]黄燕群,李利品.基于 FPGA 的 OSD 设计[J].液晶与显示,2010,25(3):439-433.

[8] 杜升平,曹剑中,田雁,等.FPGA 在 OSD 中的应用[J].科学技术与工程,2006,6(14):2065-2067.

猜你喜欢
标号指向图像
科学备考新指向——不等式选讲篇
巧用图像中的点、线、面解题
有趣的图像诗
把准方向盘 握紧指向灯 走好创新路
非连通图2D3,4∪G的优美标号
非连通图D3,4∪G的优美标号
非连通图(P1∨Pm)∪C4n∪P2的优美性
遥感图像几何纠正中GCP选取
趣味数独等4则
图的一种特殊的(d,1)-全标号