999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于嵌入式的人臉圖像采集顯示系統(tǒng)的制作

2015-04-16 01:29:58郭中華連億東伍馮潔向光成
電腦與電信 2015年7期
關(guān)鍵詞:嵌入式設(shè)置設(shè)備

郭中華 連億東 伍馮潔 向光成 楊 智

(1.中山大學(xué)南方學(xué)院,廣東 廣州 510655;2.廣州大學(xué)實(shí)驗(yàn)中心,廣東 廣州 510006;3.深圳市廣天川科技有限公司,廣東 深圳 518129;4.中山大學(xué),廣東 廣州 510655)

1 系統(tǒng)架構(gòu)

本系統(tǒng)的圖像采集采用USB攝像頭,處理器使用三星公司的S5PV210,該處理器內(nèi)部集成PowerVR SGX540高性能圖形引擎,適合對(duì)圖像進(jìn)行處理。由于本人臉圖像采集系統(tǒng)后續(xù)作為人臉識(shí)別使用,所以在該系統(tǒng)中移植了OpenCv以便后續(xù)對(duì)人臉進(jìn)一步處理,系統(tǒng)整體架構(gòu)如圖1。

圖1 系統(tǒng)整體架構(gòu)

2 系統(tǒng)環(huán)境設(shè)置

通過(guò)USB攝像頭獲取的人臉圖像要能正常在LCD屏上顯示,開發(fā)板上需要設(shè)置以下環(huán)境,具體設(shè)置如下。

2.1 系統(tǒng)基本環(huán)境配置

本文中使用的USB攝像頭驅(qū)動(dòng)為UVC類攝像頭,從2.6.26版本開始,Linux UVC驅(qū)動(dòng)被添加到內(nèi)核中,對(duì)內(nèi)核進(jìn)行配置就可以使用UVC。以下是配置步驟:

2.2 移植OpenCv

OpenCv是一個(gè)計(jì)算機(jī)視覺庫(kù),包含許多對(duì)圖像處理的函數(shù),也包括了對(duì)攝像頭設(shè)備的訪問(wèn)和從攝像頭設(shè)備捕獲圖像的函數(shù)。使用OpenCv庫(kù)函數(shù)來(lái)訪問(wèn)攝像頭,返回的圖像數(shù)據(jù)指針?lè)浅S欣诤罄m(xù)使用OpenCv的其它圖像處理函數(shù)。筆者在Linux系統(tǒng)下使用Cmake-gui配置交叉編譯OpenCv所需的makefile文件,根據(jù)預(yù)定設(shè)計(jì)在移植時(shí)有以下關(guān)鍵設(shè)置需要注意:

(1)指定操作系統(tǒng)

Operating System:填寫Linux,要注意大小寫。

(2)頭文件索引模式

Include Mode:需要設(shè)置為Search only in Target Root,這樣在編譯的時(shí)候會(huì)優(yōu)先選擇交叉編譯工具鏈目錄下的.h文件,以保證交叉編譯的順利進(jìn)行。

(3)OpenCv編譯添加選項(xiàng)

WITH_V4L:使用OpenCv的庫(kù)函數(shù)來(lái)打開USB攝像頭設(shè)備必須勾上的一個(gè)選項(xiàng)。OpenCv有直接打開攝像頭的庫(kù)函數(shù),依賴于V4L,如果沒有配置這一個(gè)選項(xiàng),很可能會(huì)導(dǎo)致在ARM嵌入式中打不開攝像頭設(shè)備。

2.3 Qt中OpenCv的添加

編寫Qt程序時(shí),使用了OpenCv中的函數(shù),需要為編譯工具指明所引用的.h頭文件和.so庫(kù)文件的路徑。具體方法為:打開Qt工程中的.pro文件,在其中添加OpenCv的.h和.so文件路徑。本文移植OpenCv后,ARM版的OpenCv庫(kù)文件在PC上的位置是:/usr/local/arm/opencv2.4.9.2/。根據(jù)本文的配置,在Qt工程中的.pro文件中添加以下內(nèi)容以完成在Qt中添加OpenCv。

3 人臉圖像的采集

為了對(duì)采集到的人臉圖像做進(jìn)一步處理,本系統(tǒng)使用了計(jì)算機(jī)視覺庫(kù)OpenCv,通過(guò)opencv采集人臉圖像的具體流程如圖2。

圖2 視頻圖像獲取流程

(1)打開視頻設(shè)備

本系統(tǒng)對(duì)攝像頭設(shè)備進(jìn)行訪問(wèn)采用的是opencv自帶的函數(shù)cvCaptureFromCAM(index),index參數(shù)代表打開的攝像頭,其中-1代表隨機(jī)打開一個(gè)攝像頭,0、1、2…分別代表/dev/video0、/dev/video1、/dev/video2…。調(diào)用改函數(shù)打開攝像頭設(shè)備后會(huì)返回一個(gè)CvCapture指針。在OpenCv中,CvCapture專門用來(lái)存儲(chǔ)視頻類型文件的一些主要信息,如分辨率等等。主要代碼如下:

(2)獲取一幀圖像

在確保攝像頭打開成功過(guò)后,則是對(duì)圖像信息的獲取,通過(guò)OpenCv中提供函數(shù)cvQueryFrame()可以獲取下一幀圖像,并返回一個(gè)IplImage指針。在OpenCv中,IplImage專門來(lái)用存儲(chǔ)圖像的信息,也是OpenCv中處理圖像的通用參數(shù)格式。主要代碼如下:

IplImage*frame;//創(chuàng)建一個(gè)IplImage指針

frame=cvQueryFrame(capture);//從攝像頭視頻流中獲取一幀圖像

(3)關(guān)閉視頻設(shè)備

OpenCv中提供函數(shù)cvReleaseCapture(CvCapture**capture),通過(guò)釋放Capture關(guān)閉攝像頭設(shè)備。主要代碼如下:

cvReleaseCapture(capture);

4 人臉圖像的顯示

基于嵌入式Linux常見的GUI系統(tǒng)有MiniGUI、MicroWindows、OpenGUI和基于 Framebuffer的 Qt/Embedded。Qt提供了一個(gè)圖形用戶界面應(yīng)用程序的開發(fā)框架,在這些基礎(chǔ)上做視頻圖像的顯示非常方便。本系統(tǒng)采用Qt/Embedded作為開發(fā)平臺(tái),將通過(guò)OpenCv獲取到的圖像內(nèi)容繪制在LCD屏幕上進(jìn)行顯示。

4.1 人臉圖像顯示流程

根據(jù)預(yù)定設(shè)計(jì)最終人臉圖像將顯示到LCD屏上,為了使系統(tǒng)具有更好的人機(jī)交互性,在這里使用Qt作為圖形化用戶界面,其具體實(shí)現(xiàn)流程圖3所示。

圖3 圖像顯示程序流程圖

4.2 Qt顯示人臉圖像的具體實(shí)現(xiàn)

為了將人臉圖像在嵌入式板上流暢地顯示出來(lái),筆者做了以下改進(jìn):

(1)顯示界面大小設(shè)置

在Qt工程中打開.ui文件,拖出一個(gè)Label部件,如果屏幕足夠大,將Label的大小調(diào)整為使用的攝像頭采集圖像支持的最大分辨率得以完整顯示全部圖像內(nèi)容,如本文采用的LCD屏幕分辨率為800*480,攝像頭采集的圖像分辨率為640*480,則可以把Label設(shè)置為640*480,以此得到最佳的界面顯示效果。

(2)顏色通道轉(zhuǎn)換

在OpenCv中,Iplimage的顏色通道順序是BGR;而在Qt中,Qimage的顏色通道順序是RGB,為了使Qt正確地顯示出每一幀的圖像的顏色,需要將每一幀圖像的通道順序從BGR調(diào)整為RGB,OpenCv已提供了對(duì)應(yīng)的函數(shù)cvCvtColor(const CvArr*src,CvArr*dst,int code)[1]。主要代碼如下:

cvCvtColor(frame,frame,CV_BGR2RGB);//第一個(gè)參數(shù)為源圖像,第二個(gè)參數(shù)為結(jié)果輸出圖像,第三個(gè)參數(shù)為轉(zhuǎn)換方案。

(3)使用Qimage[2]

Qt中的Qimage類對(duì)應(yīng)OpenCv的IplImage,是專門用來(lái)處理圖像的一個(gè)類。使用OpenCv的函數(shù)打開攝像頭,返回的是IplImage結(jié)構(gòu)的指針,IplImage的圖像數(shù)據(jù)賦值給Qimage,在Qt的Label上顯示。主要代碼如下:

#define image_Format QImage::Format_RGB888//圖像顯示格式

QImage qimage=QImage((uchar*)frame->imageData,frame->width,frame->height,image_Format);//創(chuàng)建一個(gè) Qimage對(duì)象,即Qimage圖像,其寬和高由原來(lái)的IplImage指定,圖像顯示格式為RGB888,圖像數(shù)據(jù)直接賦給Qimage圖像。

(4)將Qimage加載到Label上

QPixmap類可以實(shí)現(xiàn)將圖像繪制在一個(gè)Label上,根據(jù)圖像的大小設(shè)定好Label的尺寸可以更完整地呈現(xiàn)圖像。主要代碼如下∶ui->Label->setPixmap(QPixmap∶fromImage(qimage));

(5)添加定時(shí)器,間隔刷新界面

圖像數(shù)據(jù)的連續(xù)采集和顯示是通過(guò)定時(shí)器實(shí)現(xiàn)的,QTimer類提供了定時(shí)器信號(hào)和單觸發(fā)定時(shí)器。設(shè)置定時(shí)啟動(dòng)觸發(fā)周期,每當(dāng)定時(shí)器時(shí)間到就觸發(fā)一個(gè)定時(shí)器事件,在事件中調(diào)用VIDIOCMCAPTURE函數(shù)完成對(duì)圖像的采集,并通過(guò)QPixmap類將圖像顯示到LCD上[3]。

5 結(jié)論

本文基于三星s5pv210處理器和嵌入式Linux系統(tǒng),結(jié)合使用OpenCv和Qt編程詳細(xì)介紹了通過(guò)USB攝像頭實(shí)時(shí)顯示視頻圖像的一種方案。通過(guò)實(shí)驗(yàn)測(cè)試對(duì)比使用在Qt中添加V4L2驅(qū)動(dòng)方式采集圖像的方式[4],發(fā)現(xiàn)本文采用的方案在采集和顯示圖像的流暢度更好一些。此外,該方案適用于使用OpenCv進(jìn)一步對(duì)圖像進(jìn)行處理,可大大減少如人臉識(shí)別等計(jì)算機(jī)視覺處理系統(tǒng)的開發(fā)成本和周期,經(jīng)推廣可用于計(jì)算機(jī)視覺項(xiàng)目涉及的多個(gè)領(lǐng)域。

[1]李明瑞.嵌入式人臉檢測(cè)與識(shí)別系統(tǒng)的研究與實(shí)現(xiàn)[D].長(zhǎng)沙理工大學(xué),2012:39-40.

[2]陳鵬.基于ARM11的嵌入式人臉識(shí)別系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)[D].鄭州:鄭州大學(xué)信息工程學(xué)院,2013:17-17.

[3]吳健.基于ARM的嵌入式USB圖像[J].現(xiàn)代顯示,2011,第127期:41-42.

[4]白長(zhǎng)清,陳沛.嵌入式終端基于Linux V4L2的圖像采集系統(tǒng)[J].科技資訊,2012:22-23.

猜你喜歡
嵌入式設(shè)置設(shè)備
諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
中隊(duì)崗位該如何設(shè)置
基于MPU6050簡(jiǎn)單控制設(shè)備
電子制作(2018年11期)2018-08-04 03:26:08
搭建基于Qt的嵌入式開發(fā)平臺(tái)
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
500kV輸變電設(shè)備運(yùn)行維護(hù)探討
本刊欄目設(shè)置說(shuō)明
中俄臨床醫(yī)學(xué)專業(yè)課程設(shè)置的比較與思考
原來(lái)他們都是可穿戴設(shè)備
Altera加入嵌入式視覺聯(lián)盟
主站蜘蛛池模板: 蜜桃臀无码内射一区二区三区| 一本色道久久88| 永久成人无码激情视频免费| 91麻豆国产精品91久久久| 一级黄色网站在线免费看| 91精品久久久久久无码人妻| 久久免费成人| 久久熟女AV| 亚洲第一成年网| 国产成a人片在线播放| 国产视频大全| 国产自在自线午夜精品视频| 午夜福利视频一区| 国产精品无码制服丝袜| 久久综合伊人77777| 欧美h在线观看| 中日韩一区二区三区中文免费视频| а∨天堂一区中文字幕| 91青青草视频在线观看的| 亚洲 日韩 激情 无码 中出| 91精品免费高清在线| 亚洲国产欧美自拍| 91午夜福利在线观看| 久久亚洲欧美综合| www欧美在线观看| 亚洲高清中文字幕在线看不卡| 欧美亚洲综合免费精品高清在线观看| 国产精品成人免费视频99| 亚洲欧美精品一中文字幕| 91欧美在线| 波多野一区| 亚洲国产精品成人久久综合影院| 91久久偷偷做嫩草影院免费看 | 国内熟女少妇一线天| 日本人妻一区二区三区不卡影院 | 精品视频一区二区三区在线播| 中文字幕永久在线看| 日韩专区欧美| 欧美激情第一欧美在线| 亚洲精品无码专区在线观看| 欧美一区二区三区国产精品| 波多野结衣二区| 浮力影院国产第一页| 久久亚洲高清国产| 久久影院一区二区h| 噜噜噜久久| 欧美成人一级| 中文成人在线视频| 91精品小视频| 欧美精品伊人久久| 91青草视频| 中国黄色一级视频| 999在线免费视频| av一区二区三区在线观看| 国产成人91精品| 乱人伦99久久| 国产伦精品一区二区三区视频优播 | 亚洲国产成人久久77| 国产美女精品一区二区| 手机精品视频在线观看免费| 国产精品女主播| 日本福利视频网站| 911亚洲精品| 中文无码影院| 婷婷亚洲最大| 国产爽歪歪免费视频在线观看 | 亚洲大尺度在线| 欧美中文一区| 中文国产成人精品久久一| 91精品国产自产在线观看| 亚洲丝袜第一页| 无码乱人伦一区二区亚洲一| 免费在线色| 久久熟女AV| 亚洲综合国产一区二区三区| 永久在线精品免费视频观看| 东京热高清无码精品| 亚洲国产成人综合精品2020 | 青草娱乐极品免费视频| 久久青草精品一区二区三区| 精品剧情v国产在线观看| 亚洲水蜜桃久久综合网站|