• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于OpenCV的嵌入式圖像處理平臺的構(gòu)建

      2015-04-13 00:20:10方華郭靜田敬北
      無線互聯(lián)科技 2015年3期
      關(guān)鍵詞:嵌入式

      方華++郭靜++田敬北

      摘 要:文章以ARM Cortex-A8 (S5PV210)為核心,構(gòu)建了一種基于OpenCV的嵌入式圖像處理平臺,提出在主流的Ubuntu操作系統(tǒng)上交叉編譯Qt和OpenCV后將其移植到嵌入式Linux操作系統(tǒng)中,為嵌入式平臺下復(fù)雜圖像處理算法的設(shè)計和實現(xiàn)提供了一條有效途徑,降低了開發(fā)難度。在此平臺上進行的在線人臉識別實驗結(jié)果表明該平臺運行可靠,功能正常。

      關(guān)鍵詞:OpenCV;嵌入式;圖像處理平臺;Qt

      與基于PC機和圖像處理卡等的傳統(tǒng)圖像處理系統(tǒng)相比,采用嵌入式系統(tǒng)可以開發(fā)出具有便攜性、實時性、成本更低以及可靠性更佳的圖像處理平臺,但也存在軟件設(shè)計難度大,開發(fā)周期長、代碼效率主要依賴設(shè)計人員經(jīng)驗等問題。為此,文章提出一種基于OpenCV的嵌入式圖像處理平臺,在宿主機上采用Ubuntu操作系統(tǒng),安裝OpenCV以實現(xiàn)圖像處理和計算機視覺方面的通用算法,降低開發(fā)難度,縮短軟件開發(fā)周期[1],同時OpenCV中大部分函數(shù)都進行了匯編優(yōu)化,有效提高了程序的運行效率?;贠penCV的開源特性也降低了產(chǎn)品的成本。

      1 構(gòu)建平臺所用的軟硬件配備

      1.1 宿主機配置和源代碼預(yù)備

      宿主機主要是用來開發(fā)和調(diào)試嵌入式系統(tǒng)應(yīng)用程序的計算機系統(tǒng)。宿主機硬件可以用PC機,配置Linux操作系統(tǒng)。在構(gòu)建本嵌入式圖像處理平臺的過程中需要準(zhǔn)備如下源代碼:用于生成目標(biāo)系統(tǒng)的編譯器gcc源代碼、用于圖形界面顯示的Qt源代碼以及用于圖像處理的OpenCV源代碼。

      1.2 建立rootfs目錄

      將下載的得到的文件解壓,使用如下命令建立相關(guān)目錄:

      $sudo mkdir rootfs

      $cd rootfs

      $sudo mkdir root home lib dev sbin mnt sys proc tmp var etc usr

      1.3 權(quán)限環(huán)境變量的設(shè)置

      正確的權(quán)限設(shè)置是保證正常創(chuàng)建編譯環(huán)境的重要條件,編譯環(huán)境設(shè)置權(quán)限的基本原則是,保證用戶對所有操作目錄及目錄下的文件擁有讀寫的權(quán)限[2]。具體設(shè)置如下:

      sudo chown –R root:root rootfs/

      sudo chown –R 755 root rootfs/

      2 嵌入式圖像處理平臺的構(gòu)建

      2.1 嵌入式圖像處理平臺硬件結(jié)構(gòu)

      文章以友善之臂公司生產(chǎn)的Smart210開發(fā)板作為硬件平臺,以三星公司的S5PV210嵌入式中央處理器作為核心部件。該款處理器采用了ARM Cortex?-A8內(nèi)核,ARM V7指令集,主頻可達1GHZ,具有2000DMIPS的高性能運算能力,已經(jīng)被廣泛應(yīng)用于手機和平板等移動多媒體設(shè)備上。

      2.2 軟件平臺搭建

      軟件平臺的搭建主要分為操作系統(tǒng)移植、移植Qt和移植OpenCV三個部分。在圖像處理開發(fā)工具上選擇了廣泛應(yīng)用的OpenCV,利用該視覺庫可以很方便地實現(xiàn)數(shù)字圖像處理。在顯示方面,選擇以支持多平臺而著稱的Qt圖形界面設(shè)計工具,其優(yōu)點在于一次編寫,隨處編譯,已成為圖像處理領(lǐng)域強有力的輔助工具。

      2.2.1 操作系統(tǒng)移植

      嵌入式圖像處理平臺的搭建的首要步驟為操作系統(tǒng)的選擇和移植。嵌入式Linux操作系統(tǒng)作為嵌入式主流操作系統(tǒng),其最大的特點是源碼公開并且遵循GPL協(xié)議。由于嵌入式Linux操作系統(tǒng)支持廣泛的硬件、融合了各種強大的應(yīng)用軟件及完善的設(shè)備驅(qū)動和開發(fā)工具,因此文章選用了嵌入式Linux操作系統(tǒng)進行移植,其關(guān)鍵在于正確制作根文件系統(tǒng)以啟動Linux內(nèi)核。制作根文件系統(tǒng)的流程,如圖 1所示。

      2.2.2 圖形界面庫Qt的移植步驟

      Step1:編譯Qt-4.8.4,方法如下:

      tar xfvz qt-everywhere-opensource-src-4.8.5.tar.gz

      cd qt-everywhere-opensource-src-4.8.5

      ./configure -opensource -embedded arm -xplatform -prefix /opt/qt-4.8.5 -I /tslib/include -L /tslib/lib

      Step2:把/opt/qt-4.8.5/lib下的所有文件放入開發(fā)板文件系統(tǒng)中。

      Step3:修改etc/profile文件,添加Qt庫的環(huán)境變量。

      2.2.3 計算機開源視覺庫OpenCV的移植步驟

      在進行OpenCV的移植時文章提出改用Qt編寫圖形接口部分,而不使用OpenCV的HighGUI庫。其原因在于OpenCV中的HighGUI模塊中的函數(shù)是基于GTK+的,主要為了將圖像顯示在GTK+窗體上,由于移植GTK+比較復(fù)雜,需要的依賴庫比較多,移植相當(dāng)繁瑣,容易出錯。在嵌入式圖像處理開發(fā)平臺中,應(yīng)用程序的開發(fā)與GTK+相關(guān)性不大,因此調(diào)用OpenCV函數(shù)編寫圖像處理程序時,不采用HighGUI中的庫函數(shù)會使界面的編寫更簡單。

      具體移植步驟如下:

      Step1:下載源碼并解壓。

      Step2:安裝cmake以及cmake-gui。

      Step3:配置OpenCV。

      Step4:配置cmake和cmake-gui。

      Step5:make和make install。

      Step6:將lib文件夾下的所有文件拷貝到開發(fā)板。

      Step7:設(shè)置環(huán)境變量。

      3 嵌入式圖像處理平臺應(yīng)用

      為了驗證嵌入式圖像處理平臺是否構(gòu)建成功,文章設(shè)計了人臉識別應(yīng)用程序進行驗證。人臉識別是通過對攝像頭獲取的視頻流數(shù)據(jù)進行圖像處理中的檢測定位和特征提取,從而識別出人臉的具體位置,并進行在線跟蹤。實驗中采用基于OpenCV的人臉識別分類器,通過接入的USB攝像頭實時監(jiān)測人臉。

      3.1 人臉識別算法

      OpenCV人臉識別分類器利用Haar-like特征來表示人臉特征[3],采用積分圖作為加速器的方法高效計算人臉特征,再由AdaBoost迭代學(xué)習(xí)算法進行特征選擇和分類器的訓(xùn)練,最終實現(xiàn)人臉圖像的跟蹤識別。對于每一個特征,Adaboost算法根據(jù)訓(xùn)練樣本的特征值排序,并計算樣本權(quán)重,求得分類誤差后得出最優(yōu)弱分類器,經(jīng)過多次循環(huán)特征選擇能夠得到更多的最優(yōu)弱分類器,再組合最優(yōu)弱分類器得到強分類器,相當(dāng)于按照弱分類器的錯誤率加權(quán)投票的方式將弱分類器構(gòu)造為一個強分類器;然后,將強分類器強強聯(lián)手串聯(lián)成一個級聯(lián)分類器。

      3.2 實驗結(jié)果

      實驗分為標(biāo)識人臉和跟蹤人臉兩方面,當(dāng)單個或者多個人臉出現(xiàn)在攝像頭前,顯示屏上均能顯示并標(biāo)識人臉,當(dāng)人臉從中間分別向兩邊移動時,能夠?qū)崟r跟蹤人臉。同時,在本嵌入式圖像處理平臺上,檢測出人臉的平均時間為300ms,而在普通的PC機上,編寫同樣的算法,運行也需要150ms的檢測時間。在相同的代碼下,本嵌入式平臺和普通PC機平臺主要參數(shù)不同。由該實驗可看出,在本嵌入式平臺下,能夠準(zhǔn)確的檢測到攝像頭所拍攝到的人臉,人臉識別的測試運行也證明了嵌入式圖像處理平臺的可行性和穩(wěn)定性。

      [參考文獻]

      [1]賈小軍,喻擎蒼.基于開源計算機視覺庫OpenCV的圖像處理[J].計算機應(yīng)用與軟件,2008(4):276-278.

      [2]宋凱,嚴(yán)麗平,甘嵐.嵌入式圖像處理系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機工程與設(shè)計,2009(19):4368-4370+4377.

      [3]劉曉克,孫燮華,周永霞.基于新Haar-like特征的多角度人臉檢測[J].計算機工程,2009(19):195-197.

      猜你喜歡
      嵌入式
      TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
      電子制作(2019年7期)2019-04-25 13:17:14
      嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
      電子制作(2018年18期)2018-11-14 01:48:16
      搭建基于Qt的嵌入式開發(fā)平臺
      嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
      Altera加入嵌入式視覺聯(lián)盟
      倍福 CX8091嵌入式控制器
      自動化博覽(2014年4期)2014-02-28 22:31:15
      重庆市| 莱阳市| 循化| 高州市| 辉南县| 峨眉山市| 金沙县| 高清| 定州市| 商都县| 彰武县| 杭锦旗| 静乐县| 康保县| 玛纳斯县| 金昌市| 仁寿县| 饶平县| 曲阜市| 西丰县| 通州市| 青海省| 乐山市| 蒙阴县| 穆棱市| 扎赉特旗| 常德市| 尚志市| 稻城县| 兴化市| 崇信县| 十堰市| 唐山市| 连州市| 滦南县| 辰溪县| 务川| 弋阳县| 黎平县| 南开区| 武义县|