您的当前位置:首页正文

基于OpenCV的嵌入式图像处理平台的构建

2022-11-16 来源:步旅网
第3期 2015年2月 无线互联科技 WireleSS Internet Technology No.3 February,2015 基于0penCV的嵌入式图像处理平台的构建 方华 郭静。田敬北 (1.广西科技大学工程训练中心,广西 柳州 545006;2.广西科技大学电气与信息工程学院,广西 柳州 545006) 摘要:< ̄ARM Cortex-A8(S5PV210)为核心,构建了一种基于OpenCV的嵌入式图像处理平台,提出在主流的Ubuntu 操作系统上交叉编译Qt和OpenCV. ̄将其移植到嵌入式Linux操作系统中,为嵌入式平台下复杂图像处理算法的设计和实 现提供了一条有效途径,降低了开发难度。在此平台上进行的在线人脸识别实验结果表明该平台运行可靠,功能正常。 关键词:OpenCV;嵌入式;图像处理平台;Qt 与基于Pc机和图像处理卡等的传统图像处理系统相 sudo chown—R 755 root rootfs/ 比,采用嵌入式系统可以开发出具有便携性、实时性、成 2嵌入式图像处理平台的构建 本更低以及可靠性更佳的图像处理平台,但也存在软件设 2.I嵌入式图像处理平台硬件结构 计难度大,开发周期长、代码效率主要依赖设计人员经验 文章以友善之臂公司生产的Smart210开发板作为硬件 等问题。为此,文章提出一种基于OpenCV的嵌入式图像处 平台,以三星公司的¥5PV210嵌入式中央处理器作为核心部 理平台,在宿主机上采用Ubuntu操作系统,安装OpenCV以 件。该款处理器采用了-ARM Cortexm-A8内核,ARM v7指令 实现图像处理和计算机视觉方面的通用算法,降低开发难 集,主频可达1GHZ,具有2000DMIPS的高性能运算能力,已 度,缩短软件开发周期…,同时OpenCV中大部分函数都进 经被广泛应用于手机和平板等移动多媒体设备上。 行了汇编优化,有效提高了程序的运行效率。基于OpenCV 2.2软件平台搭建 的开源特性也降低了产品的成本。 软件平台的搭建主要分为操作系统移植、移植Qt和移 植OpenCV ̄个部分。在图像处理开发工具上选择了广泛应 用的OpenCV,利用该视觉库可以很方便地实现数字图像处 1 构建平台所用的软硬件配备 1.1宿主机配置和源代码预备 宿主机主要是用来开发和调试嵌入式系统应用程序 理。在显示方面,选择以支持多平台而著称的Qt图形界面 的计算机系统。宿主机硬件可以用Pc机,配置Linux操作系 设计工具,其优点在于一次编写,随处编译,已成为图像处 统。在构建本嵌入式图像处理平台的过程中需要准备如下 理领域强有力的辅助工具。 源代码:用于生成目标系统的编译器gcc源代码、用于图形 2.2.i操作系统移植 界面显示的Qt源代码以及用于图像处理的OpenCV源代码。 1.2建立rootfs目录 录: 嵌入式图像处理平台的搭建的首要步骤为操作系统的 选择和移植。嵌入式Linux操作系统作为嵌入式主流操作 入式Linux操作系统支持广泛的硬件、融合了各种强大的 应用软件及完善的设备驱动和开发工具,因此文章选用了 嵌入式Linux操作系统进行移植,其关键在于正确制作根 将下载的得到的文件解压,使用如下命令建立相关目 系统,其最大的特点是源码公开并且遵循GPL协议。由于嵌 ¥sudo mkdir rootfs ¥cd rootfs ¥sudo mkdir root home lib dev sbin mnt sys 文件系统以启动Linux ̄核。制作根文件系统的流程,如图 proc tmp var etc usr 1所示。 1.3权限环境变量的设置 2.2.2图形界面库Qt的移植步骤 Stepl:编译Qt一4.8.4,方法如下: tar xfvz qt——everywhere——opensource——src—— 4.8.5.tar.gz 正确的权限设置是保证正常创建编译环境的重要条 件,编译环境设置权限的基本原则是,保证用户对所有操 作目录及目录下的文件拥有读写的权限 。具体设置如下: sudo chown~R root:root rootfs/ cd qt—everywhere—opensource—src一4.8.5 基金项目:广西科技开发计划项目,项目编号:桂科攻14122007-20。 作者简介:方华(1965-),女,江苏南京人,副教授,博士研究生,研究方向:自动控制技术和机器视觉;郭静(1989-),女,湖南湘 潭人,硕士研究生,研究方向:控制理论与控制工程。 一53 第3期 2015年2月 No.3 无线互联科技・软件透视 February,2015 ./c0nfigure—opensource—embedded amm Step6:将lib文件夹下的所有文件拷贝到开发板。 Step7:设置环境变量。 xplatform—prefix/opt/qt一4.8.5 一I/tsl ib/ include—L/tslib/lib 3 嵌入式图像处理平台应用 为了验证嵌入式图像处理平台是否构建成功,文章设 Step2:把/Opt/qt~4.8.5/lib下的所有文件放入开发板 文件系统中。 计了人脸识别应用程序进行验证。人脸识别是通过对摄像 头获取的视频流数据进行图像处理中的检测定位和特征 提取,从而识别出人脸的具体位置,并进行在线跟踪。实 验中采用基于0penCV的人脸识别分类器,通过接入的USB 摄像头实时监测人脸。 3.1人脸识别算法 Step3:修 ̄etc/profj1e文件,添加Qt库的环境变量。 OpenCV)k脸识别分类器利用Haar-like特征来表示人 脸特征 ,采用积分图作为加速器的方法高效计算人脸特 征,再由AdaBoost迭代学习算法进行特征选择和分类器的 训练,最终实现人脸图像的跟踪识别。对于每一个特征, Adaboost算法根据训练样本的特征值排序,并计算样本权 图1 制作根文件系统流程 重,求得分类误差后得出最优弱分类器,经过多次循环特 2.2.3计算机开源视觉库OpenCV ̄移植步骤 征选择能够得到更多的最优弱分类器,再组合最优弱分类 在进行OpenCV的移植时文章提出改用Qt编写图形 器得到强分类器,相当于按照弱分类器的错误率加权投票 接口部分,而不使用OpenCV的HighGUI库。其原因在于 的方式将弱分类器构造为一个强分类器;然后,将强分类 OpenCV中的HighGUI模块中的函数是基于GTK+的,主要为 器强强联手串联成一个级联分类器。 了将图像显示在GTK+窗体上,由于移植GTK+Lh较复杂,需 3.2实验结果 要的依赖库比较多,移植相当繁琐,容易出错。在嵌入式图 实验分为标识人脸和跟踪人脸两方面,当单个或者多 像处理开发平台中,应用程序的开发与GTK+相关性不大,因 个人脸出现在摄像头前,显示屏上均能显示并标识人脸, 此调用0penCV函数编写图像处理程序时,不采用HighGUI 当人脸从中间分别向两边移动时,能够实时跟踪人脸。同 中的库函数会使界面的编写更简单。 具体移植步骤如下: Stepl:下载源码并解压。 Step2:安装cmake以及cmake—gui。 Step3:配置OpenCV。 时,在本嵌入式图像处理平台上,检测出人脸的平均时间 为300ms,而在普通的PC机上,编写同样的算法,运行也需 要150ms的检测时间。在相同的代码下,本嵌入式平台和普 通Pc机平台主要参数不同。由该实验可看出,在本嵌入式 平台下,能够准确的检测到摄像头所拍摄到的人脸,人脸 识别的测试运行也证明了嵌入式图像处理平台的可行性和 稳定性。 Step4:配置cmake和cmake—gui。 Step5:make ̄Dmake install。 [参考文献] [1]贾小军,喻擎苍.基于开源计算机视觉库0penCV ̄像处理[J].计算机应用与软件,2008(4):276—278. 【2]宋凯,严丽平,甘岚.嵌入式图像处理系统的设计与实现[J].计算机工程与设计,2009(19):4368-4370+4377 [3]刘晓克,孙燮华,周永霞.基于新Haar-like特征的多角度人脸检测[J].计算机工程,2009(19):195—197. OpenCV Embedded Image Processing PlatfoITn iS Constructed Based on the FANG Hua GUO Jing TIAN Jingbei (1.Engineering training center of Guangxi University of science and technology,Liuzhou 545006,China;2.College of electrical and information engineering,Guangxi University of science and technology,Liuzhou 545006,China) Abstract:Based on the ARM Cortex-A8(S5PV2101 as the core.to construct an embedded image processing platform based on OpenCV is proposed in the Ubuntu operating system,the mainstream of cross compiling Qt and OpenCV after transplanted into the embedded Linux operation in the system,provides an effective way for the design and implementation of complex image processing algorithm based on embedded platform,reduce the difficulty of development.Online face recognition experiment results on this platform show that the platform is reliable in operation,normal function. Key words:OpenCV;Embedded;Image processing platform;et 一54 

因篇幅问题不能全部显示,请点此查看更多更全内容