APP下载

基于FPGA 的增强现实人工标识识别

2014-03-13

电子科技 2014年5期
关键词:器件总线摄像头

李 聪

(西安电子科技大学 电子工程学院,陕西 西安 710071)

增强现实[1](Augmented Reality,AR)技术是在虚拟现实(Virtual Reality,VR)技术上发展起来的一门新兴技术,该技术用于生成一个虚、实结合的环境,在这个环境中,计算机生成的各种信息被用于增强或补充用户所在的真实环境,同时用户可以通过各种方式来与虚拟物体进行交互。由于其广泛的应用背景,成为近年来的一个研究热点。

要实现虚拟和现实的完美结合,必须将虚拟物体准确地融合到现实世界中的相应位置上,这个过程称为注册。其中基于标志点的增强现实三维注册技术是利用计算机视觉技术来计算观察者相对于标识点的位置,方位和姿态,从而实现对标志点的跟踪与定位,将需要叠加的虚拟物体正确叠加在标识点上,实现对现实场景的增强,并实时显示增强后的效果。其中,对标志点的识别是整个增强现实系统的基础。

本文利用FPGA 实现了人工标识识别的系统开发,对TRDB-D5M 摄像头采集到的含有标识的图像进行相关的图像处理,实现了对标识区域和标识图案的识别。

1 系统的总体框架

1.1 标识的选择

合理选取标志图案可以有效地降低技术实现的难度,所以在标识的选取过程中,为便于识别和分析需要满足以下两点要求[2-5]:(1)能被摄像机清晰地采集到,易于识别以及辨认。(2)具有规则的几何外形和鲜明的色彩特征,并以简单图形为佳。

在数字图像处理中,黑白颜色较易区分,正方形提供同平面的4 个角点,而且形状简单,易于识别,因此大多数AR 人工标识选取黑色矩形框作为基准标识[6]。且为了区分标识,其内分别有简单图形,本文基于ARToolkit[2]中的标识,选择如图1 所示的含有图片模板的标识。

图1 所选标识

1.2 系统硬件结构设计

设计构建的增强现实人工标识识别系统的整体框架如图所示,其中视频采集显示系统主要包括CMOS图像传感器摄像头、FPGA 核心控制单元以及VGA 显示单元。标识识别系统则由视频处理模块组成,主要完成视频图像在图形学上的算法处理。整个硬件系统实现图像的采集、接受、存储以及输出显示等功能,主要由数据获取单元、格式转换模块、I2C 控制器、SDRAM、VGA 控制器和VGA 数模转换器模块构成。

图2 系统硬件框图

如图2 所示,左边是TRDB-D5M 摄像头设备和它的控制电路,通过采样和A/D 转换输出可被处理的数字视频信号,其中,摄像头通过I2C 总线进行配置,从而控制它的工作模式。它们之间的传递信号主要是SDA 和SCL。FPGA 模块主要完成输入输出设备的配置、控制等功能,以及完成输入到输出数据的传输和处理功能,是本设计的核心部分。其中,主要包括CMOS传感器数据获取单元、图像类型转换单元、VGA、I2C和SDRAM 控制器等模块。CMOS 传感器数据获取单元负责接收摄像头输出的视频数据。图像数据转换模块主要将获取到的原始Bayer 型图像格式转换为RGB格式,并通过SDRAM 控制器将转换后的图像缓存进SDRAM,最后VGA 控制器产生行场同步信号并将数据输出,再通过A/D 转换后送给VGA 显示。

1.3 I2C 总线工作原理

设计中I2C 总线[7]主要应用在TRDB-D5M 摄像头的配置上。控制单元通过I2C 总线和摄像头通信,修改其内部寄存器。直接关系到摄像头的工作参数,如曝光时间、像素时钟、分辨率等。

I2C 总线主要通过主器件寻址从器件,并传输数据,并由主器件终止数据传送,其中数据传送协议如下所示:

(1)在数据传送过程中,必须确认数据传送的开始和结束。开始和结束条件定义如图3 所示。

图3 I2C 总线开始和结束条件

当时钟线SCL 为高电平时,数据线SDA 从高电平向低电平跳变表示开始条件,而从低电平向高电平跳变表示结束条件。

(2)I2C 总线数据传输是必须遵循总线协议所规定的数据传输格式,如图4 所示。

图4 I2C 总线数据传输

开始条件产生后送出的第一个Byte 数据为从器件的地址,每发送完一个Byte 后都要求接收方发回一个应答信号。主器件在接收应答信号之前必须先释放对SDA 线的控制,以便从器件在这一位上发出应答。数据传输完毕,从器件发回一个非应答信号,主器件据此产生结束条件。

2 人工标识识别算法及FPGA 的实现

为获取模板标识以便于后期将虚拟图像叠加在标识上,必须通过图像处理的方法分离出实时图像中的标识区域,将其与模板匹配完成对标识的识别。该模块的工作流程如图5 所示。

图5 人工标识识别算法流程图

2.1 图像的格式转换

TRDB-D5M 摄像头输出视频色彩格式为拜耳型(Bayer Pattern),这种格式的图像数据在后期处理以及显示操作时不方便,因此需要通过图像格式转换模块将Bayer 型转换为常用的RGB 型。

转化的基本原理是根据像素周围已知颜色分量进行插值,估算未知的颜色分量[8]。从理论上来说,插值方法越简单,得到的图像质量越低,处理时间越短;反之,质量越高,时间越长。因此,在实际的应用中,选择适当的方法,在图像质量,处理速度以及资源利用方面起到重要的作用。本文基于3×3 插值算法利用FPGA 实现了图像的转换。此方法的基本特征是“平均”。在估算缺失的颜色分量时,选择一个3×3 邻域,根据邻域内相同颜色分量值,使用双线性插值算法计算平均值实现色彩还原。该方法简单,在图像平滑区域可以收到较好的还原效果[9-11]。3×3 邻域示意图如图6 所示。

图6 3×3 邻域示意图

B5处像素的R、G、B 分量的计算公式如下

而G7处像素的R、G、B 分量的计算公式为

2.2 灰度处理

在对图像进行二值化处理之前,首先对彩色图像进行灰阶处理,将R、G、B 这3 个分量以不同的权值加权平均得到合理的灰度图像,其算法有式(7)所示[15]

由式(7)可以看出,R、G、B 是影响灰阶的3 个分量,且G 的权重最大。如图7(a)为转换后的RGB 图像,图7(b)为灰度图像。

图7 RGB 图及灰度图像

2.3 二值化处理

在对图像进行二值化处理时,本文采用固定阈值的方法来完成这一操作:当图像f(x,y)处的灰度值小于阈值T 时,就把该点作为图像的背景,以“0”表示,否则,以“1”表示。而阈值的选取尤为重要,适当的阈值能消除光照所带来的影响,在这里阈值选取为128。图像f(x,y)经过二值化处理后,输出的二值图像g(x,y),其算法公式如公式(8)所示[14]

处理后的二值化图像如图8 所示。

图8 二值化图像

2.2 标识识别

2.2.1 标识区域的识别

在一幅含有人工标识的二值化图像中,由于标识的周围存在着大量的干扰信息,这需要对标识域进行提取:首先检测标识的外框,然后在外框的区域里搜索特征点,即标识图案的识别。

本文采用对该二值图像进行连通域分析[16],先对图像进行逐像素扫描,完成对图像的分析,对于闭合的边缘,找出其中所有的四边形区域作为候选匹配区域,对于非闭合或者太小的边缘,则被直接丢弃,并确定候选区域的4 条边的位置。

2.2.2 标识图像的识别

在检测到标识的外框后,就要在外框的区域内搜索特征点,从而匹配相应的虚拟信息。论文中采用了模板匹配法[14-16],该方法具有较好的通用性,可以识别多种类型的图案。

当成功检测到四边形,并且找到其4 个顶点后,就要对每个校正后的候选区域进行模板匹配,已确认是否是预定义的目标标识。模板匹配的思想是将模板图片按照投影模型进行投影,得到标识投影图,再将投影图与摄像头拍摄到的标识图进行对照,计算两幅图像之间的相似程度。匹配接近的程度可借助向量的范数来描述,如欧几里得距离。对每个候选区域都有一个置信度,当接近程度大于此置信度时,则匹配成功,否则失败。

3 结束语

本文基于增强现实技术,利用FPGA 开发板实现了对人工标识识别的硬件系统,为移动增强现实系统的发展具有一定的实际意义。随着计算机硬件的发展以及增强现实系统应用越来越广泛地应用到各个行业,以及嵌入式系统的可移植性、便携性等特点,使其成为未来增强现实的主流应用平台。

[1] 朱淼良,姚远,蒋云良,等.增强现实综述[J].中国图象图形学报,2004,9(7):767-774.

[2] KATO H.ARToolit[CP/OL].(2012-12-03)[2013-07-08]http://www.hitl.washington.edu/projects/artoolkit.

[3] KATO H,BILLINGHURST M,POUPYREV I,et al.Virtual object manipulation of a table-top AR environment[C].Los Alamitors,CA,USA:Proceedings of International Symposium on Augmented Reality 2000(ISAR00),2000:111-119.

[4] BILLINGHURST M,KATO H,POUPYREV I.The magicbook-moving seamlessly between reality and virtuality[J].Computer Graphics and Applications,IEEE,2001,21(3):6-8.

[5] MARCHAND É,CHAUMETTE F.Virtual visual servoing:a framework for real‐time augmented reality[J].Computer Graphics Forum,2002,21(3):289-297.

[6] 秦文虎,査俊元,赵正旭.增强现实中人工标志识别方法研究[J].测控技术,2008,27(10):7-9.

[7] 夏宇闻.Verilog 数字系统设计教程[M].北京:北京航空航天大学出版社,2008.

[8] 孙辉,柏旭光,孙丽娜,等.Bayer 图像色彩还原线性插值方法[J].液晶与显示,2013,28(3):417-423.

[9] 刘怡,黄自力,王经纬,等.FPGA 双线性插值图像变换系统的设计与实现[J].中国测试技术,2008,34(3):65-67.

[10]罗潇,孙海江,陈秋萍,等.Bayer 格式图像的实时彩色复原[J].中国光学与应用光学,2010,3(2):182-187.

[11]MALVAR H S,HE L W,CUTLER R.High quality linear interpolation for demosaicing of bayer-patterned color images[C].Montreal,Canada:Processing of the IEEE International Conference on Speech,Acoustics,and Signal Processing,IEEE,2004.

[12]杨华,佟首峰.基于FPGA 的Bayer 到RGB 图像格式转换设计[J].现代电子技术,2010,33(2):122-124.

[13]张贵清,朱磊,颜露新,等.基于FPGA 的多路同步实时数据采集方案设计与实现[J].测控技术,2005,24(12):26-29.

[14]周立波.基于FPGA 的高速图像号码识别系统研究与实现[D].长沙:湖南大学,2011.

[15]温建平.人脸检测算法及其FPGA 实现[D].广州:华南理工大学,2012.

[16]谭许彬,谢宜壮,陈禾,等.基于FPGA 的连通域标记设计与实现[J].信号处理,2011,27(11):1729-1733.

猜你喜欢

器件总线摄像头
浙江首试公路非现场执法新型摄像头
摄像头连接器可提供360°视角图像
基于PCI Express总线的xHC与FPGA的直接通信
机载飞控1553B总线转以太网总线设计
一种基于CAN总线的误码测试方法
毫米波高频器件高效加工方法
旋涂-蒸镀工艺制备红光量子点器件
CAN总线并发通信时下位机应用软件设计
奔驰360°摄像头系统介绍
一种加载集总器件的可调三维周期结构