91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

采用OpenCV計(jì)算機(jī)視覺庫(kù)實(shí)現(xiàn)人臉檢測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2018-11-23 09:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.引言

OpenCV(Intel·Open Source Computer Vision Library)是Intel 公司面向應(yīng)用程序開發(fā)者開發(fā)的計(jì)算機(jī)視覺庫(kù),其中包含大量的函數(shù)用來(lái)處理計(jì)算機(jī)視覺領(lǐng)域中常見的問題,例如運(yùn)動(dòng)分析和跟蹤、人臉識(shí)別、3D 重建和目標(biāo)識(shí)別等[1].可以通過訪問http://www.source- forge.net/projects/opencvlibrary 免費(fèi)獲得OpenCV 庫(kù)以及相關(guān)的資料。

相對(duì)于其它圖像函數(shù)庫(kù), OpenCV 是一種源碼開放式的函數(shù)庫(kù), 開發(fā)者可以自由地調(diào)用函數(shù)庫(kù)中的相關(guān)處理函數(shù)。OpenCV 中包含300多個(gè)處理函數(shù), 具備強(qiáng)大的圖像和矩陣運(yùn)算能力, 可以大大減少開發(fā)者的編程工作量, 有效提高開發(fā)效率和程序運(yùn)行的可靠性。另外, 由于OpenCV 具有很好的移植性, 開發(fā)者可以根據(jù)需要在MS-Windows 和Linux 兩種平臺(tái)進(jìn)行開發(fā).

人臉檢測(cè)(Face Detection)是指在輸入圖像中確定所有人臉(如果存在)的位置、大小、位姿的過程。人臉檢測(cè)作為人臉信息處理中的一項(xiàng)關(guān)鍵技術(shù), 近年來(lái)成為模式識(shí)別與計(jì)算機(jī)視覺領(lǐng)域內(nèi)一項(xiàng)受到普遍重視、研究十分活躍的課題。人臉檢測(cè)問題最初于人臉識(shí)別(FaceRecognition)。人臉識(shí)別的研究可以追溯到上個(gè)世紀(jì)六、七十年代, 經(jīng)過幾十年的曲折發(fā)展已日趨成熟。人臉檢測(cè)是自動(dòng)人臉識(shí)別系統(tǒng)中的一個(gè)關(guān)鍵環(huán)節(jié), 但是早期的人臉識(shí)別研究主要針對(duì)具有較強(qiáng)約束條件的人臉圖像(如無(wú)背景的圖像), 往往假設(shè)人臉位置已知或很容易獲得, 因此人臉檢測(cè)問題并未受到重視。近幾年隨著電子商務(wù)等應(yīng)用的發(fā)展,人臉識(shí)別成為最有潛力的生物身份驗(yàn)證手段, 這種應(yīng)用背景要求自動(dòng)人臉識(shí)別系統(tǒng)能夠?qū)σ话阌纱怂媾R的一系列問題使得人臉檢測(cè)開始作為一個(gè)獨(dú)立的課題受到研究者的重視。今天, 人臉檢測(cè)的應(yīng)用背景已經(jīng)遠(yuǎn)遠(yuǎn)超出了人臉識(shí)別系統(tǒng)的范疇, 在基于內(nèi)容的檢索、數(shù)字視頻處理、視覺監(jiān)測(cè)等方面有著重要的應(yīng)用價(jià)值。

人臉檢測(cè)研究具有重要的學(xué)術(shù)價(jià)值。人臉是一類具有相當(dāng)復(fù)雜的細(xì)節(jié)變化的自然結(jié)構(gòu)目標(biāo), 此類目標(biāo)的檢測(cè)問題的挑戰(zhàn)性在于: (1)人臉由于外貌、表情、膚色等不同, 具有模式的可變性; (2)一般可能存在眼鏡、胡須等附屬物; (3)作為三維物體的人臉的影像不可避免地受由光照產(chǎn)生的陰影的影響。因此, 如果能夠找到解決這些問題的方法, 成功構(gòu)造出人臉檢測(cè)與跟蹤系統(tǒng), 將為解決其它類似的復(fù)雜模式檢測(cè)問題提供重要的啟示。

目前, 國(guó)外對(duì)人臉檢測(cè)問題的研究很多, 比較著名的有MIT, CMU等; 國(guó)內(nèi)的清華大學(xué)、北京工業(yè)大學(xué)、中科院計(jì)算所和自動(dòng)化所等都有人員從事人臉檢測(cè)相關(guān)的研究。而且, MPEG7 標(biāo)準(zhǔn)組織已經(jīng)建立了人臉識(shí)別草案小組, 人臉檢測(cè)算法也是一項(xiàng)征集的內(nèi)容。隨著人臉檢測(cè)研究的深入, 國(guó)際上發(fā)表的有關(guān)論文數(shù)量也大幅度增長(zhǎng)。

2.系統(tǒng)設(shè)計(jì)

本文采用OpenCV 實(shí)現(xiàn)人臉檢測(cè)的原理是基于Adaboost 算法, 該算法是一種分類器算法, 其基本思想是利用大量的分類能力一般的簡(jiǎn)單分類器(Basic classifier)通過一定的方法疊加(boost)起來(lái), 構(gòu)成一個(gè)分類能力很強(qiáng)的強(qiáng)分類器(Stage classifier), 再將若干個(gè)強(qiáng)分類器串聯(lián)成為分級(jí)分類器(classifier cascade)完成圖像搜索檢測(cè)。串聯(lián)的級(jí)數(shù)依賴于系統(tǒng)對(duì)錯(cuò)誤率和識(shí)別速度的要求。

本系統(tǒng)由訓(xùn)練和檢測(cè)兩個(gè)模塊完成, 兩部分的流程圖如圖1 和圖2 所示:

采用OpenCV計(jì)算機(jī)視覺庫(kù)實(shí)現(xiàn)人臉檢測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

圖1 訓(xùn)練程序流程圖

采用OpenCV計(jì)算機(jī)視覺庫(kù)實(shí)現(xiàn)人臉檢測(cè)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

圖2 檢測(cè)程序流程圖

3.系統(tǒng)實(shí)現(xiàn)

本系統(tǒng)采用Microsoft VC++編程工具實(shí)現(xiàn), 從OpenCV 官方網(wǎng)站上下載OpenCV 的最新版本后按照安裝說(shuō)明安裝OpenCV 開發(fā)包, 并在VC++系統(tǒng)中配置好開發(fā)環(huán)境。系統(tǒng)中實(shí)現(xiàn)的主要檢測(cè)函數(shù)如下, 其中調(diào)用了OpenCV 函數(shù)庫(kù)中的部分函數(shù)。

CRect CFaceDetect::DetectAndDrawFaces( IplImage* img )

{

CRect rc(0,0,0,0);

if( m_pHidCascade && img )

{

int scale = 2;

CvSize img_size = cvGetSize( img );

IplImage* temp = cvCreateImage ( cvSize (img_size.width/2,

img_size.height/2), 8, 3 );

int i;

cvPyrDown( img, temp );

cvClearMemStorage( m_pStorage );

if( m_pHidCascade )

{

CvSeq* faces = cvHaarDetectObjects ( temp,

m_pHidCascade, m_pStorage, 1.2, 2, 1 );

for( i = 0; i < (faces ? faces- >total : 0); i++ )

{

CvRect r = *(CvRect*)cvGetSeqElem( faces, i );

cvRectangle( img,

cvPoint(r.x*scale, r.y*scale),

cvPoint ((r.x+r.width)*scale, (r.y+r.height)

*scale),

CV_RGB(255,0,0), 3 );

rc.left = r.x*scale;

rc.top = r.y*scale;

rc.right = (r.x+r.width)*scale;

rc.bottom = (r.y+r.height)*scale;

}

}

cvReleaseImage( &temp );

}

return rc;

}

其中函數(shù)cvHaarDetectObjects 使用針對(duì)某目標(biāo)物體訓(xùn)練的級(jí)聯(lián)分類器在圖像中找到包含目標(biāo)物體的矩形區(qū)域, 并且將這些區(qū)域作為一序列的矩形框返回。函數(shù)以不同比例大小的掃描窗口對(duì)圖像進(jìn)行幾次搜索。每次都要對(duì)圖像中的這些重疊區(qū)域利用cvRunHaarClassifierCascade進(jìn)行檢測(cè)。有時(shí)候也會(huì)利用某些繼承(heuristics)技術(shù)以減少分析的候選區(qū)域, 例如利用Canny 裁減(pruning)方法。函數(shù)在處理和收集到候選的方框(全部通過級(jí)聯(lián)分類器各層的區(qū)域) 科之后, 接著對(duì)這些區(qū)域進(jìn)行組合并且返回一系列各個(gè)足夠大的組合中的平均矩形。調(diào)節(jié)程序中的缺省參數(shù)(scale_factor=1.1, min_neighbors=3,flags=0)用于對(duì)目標(biāo)進(jìn)行更精確同時(shí)也是耗時(shí)較長(zhǎng)的進(jìn)一步檢測(cè)。為了能對(duì)視頻圖像進(jìn)行更快的實(shí)時(shí)檢測(cè), 參數(shù)設(shè)置通常是: scale_factor=1.2,min_neighbors=2, flags=CV_HAAR_DO_CANNY_PRUNING,min_size =

4.結(jié)束語(yǔ)

通過編程實(shí)現(xiàn)人臉檢測(cè)系統(tǒng)表明, 應(yīng)用OpenCV 函數(shù)庫(kù)進(jìn)行圖像處理編程, 功能強(qiáng)大, 簡(jiǎn)捷高效, 可以使編程人員快速地實(shí)現(xiàn)算法。

OpenCV 確實(shí)為VC++編程處理數(shù)字圖像提供了極大的方便, 具有廣闊的應(yīng)用前景。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7806

    瀏覽量

    93191
  • 檢測(cè)系統(tǒng)
    +關(guān)注

    關(guān)注

    3

    文章

    999

    瀏覽量

    45472
  • WINDOWS
    +關(guān)注

    關(guān)注

    4

    文章

    3702

    瀏覽量

    94025
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    樹莓派上使用OpenCV和Python實(shí)現(xiàn)實(shí)時(shí)人臉檢測(cè)

    理論知識(shí),因此初學(xué)者也能輕松跟著步驟實(shí)現(xiàn)。 項(xiàng)目所需設(shè)備 硬件: 樹莓派 3 Model B; 樹莓派攝像頭模塊(PiCam)。 語(yǔ)言和庫(kù)OpenCV Python 3 步驟 本文主要講述如何使用 PiCam
    的頭像 發(fā)表于 03-06 09:00 ?5.2w次閱讀

    基于openCV人臉檢測(cè)系統(tǒng)的設(shè)計(jì)

    通過對(duì)基于Adaboost人臉檢測(cè)算法的研究,利用該算法與計(jì)算機(jī)視覺庫(kù)openCV進(jìn)行
    發(fā)表于 12-23 14:19

    如何在RK3288上去安裝Opencv開源計(jì)算機(jī)視覺庫(kù)

    Opencv是什么呢?如何在RK3288上去安裝Opencv開源計(jì)算機(jī)視覺庫(kù)呢?
    發(fā)表于 02-16 07:06

    【RISC-V + OpenCV 計(jì)算機(jī)視覺】用 VisionFive 2 昉·星光 2 進(jìn)行物體識(shí)別

    廣泛應(yīng)用于視頻監(jiān)控、自動(dòng)駕駛等領(lǐng)域。 基于Debain操作系統(tǒng)OpenCV框架,賽昉科技在VisionFive 2(昉·星光 2)RISC-V單板計(jì)算機(jī)實(shí)現(xiàn)
    發(fā)表于 09-08 11:42

    基于OpenCV計(jì)算機(jī)視覺技術(shù)實(shí)現(xiàn)

    基于OpenCV計(jì)算機(jī)視覺技術(shù)實(shí)現(xiàn)OpencV是用來(lái)實(shí)現(xiàn)計(jì)
    發(fā)表于 11-23 21:06 ?0次下載
    基于<b class='flag-5'>OpenCV</b>的<b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>視覺</b>技術(shù)<b class='flag-5'>實(shí)現(xiàn)</b>

    開放源代碼的計(jì)算機(jī)視覺庫(kù)OpenCv的應(yīng)用

    開放源代碼的計(jì)算機(jī)視覺庫(kù)OpenCv(Intel Open Source Computer Vision Library)由英特爾公司位于俄羅斯的研究實(shí)驗(yàn)室所開發(fā),它是一套可免費(fèi)獲得
    發(fā)表于 04-05 19:38 ?90次下載

    基于計(jì)算機(jī)視覺技術(shù)的人臉檢測(cè)系統(tǒng)設(shè)計(jì)

    通過對(duì)基于Haar-like特征的AdaBoost人臉檢測(cè)算法研究,利用由該算法訓(xùn)練的級(jí)聯(lián)分類器和計(jì)算機(jī)視覺庫(kù)
    發(fā)表于 08-29 14:36 ?43次下載
    基于<b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>視覺</b>技術(shù)的<b class='flag-5'>人臉</b><b class='flag-5'>檢測(cè)</b><b class='flag-5'>系統(tǒng)</b>設(shè)計(jì)

    基于openCV人臉檢測(cè)識(shí)別系統(tǒng)的設(shè)計(jì)

    通過對(duì)基于Adaboost人臉檢測(cè)算法的研究,利用該算法與計(jì)算機(jī)視覺庫(kù)openCV進(jìn)行
    發(fā)表于 06-15 10:53 ?477次下載
    基于<b class='flag-5'>openCV</b>的<b class='flag-5'>人臉</b><b class='flag-5'>檢測(cè)</b>識(shí)別<b class='flag-5'>系統(tǒng)</b>的設(shè)計(jì)

    OpenCV計(jì)算機(jī)視覺性能更加強(qiáng)大實(shí)現(xiàn)嵌入式視覺應(yīng)用

    上實(shí)施復(fù)雜算法的項(xiàng)目,該系列是用于計(jì)算機(jī)視覺應(yīng)用的最高性能可編程平臺(tái)。 不過,此類高級(jí)計(jì)算密集型算法依賴于復(fù)雜的低級(jí)模塊來(lái)實(shí)現(xiàn)快速上市,沒有時(shí)間從低級(jí)代碼開始編寫算法,對(duì)此僅有一個(gè)解決
    發(fā)表于 09-15 14:57 ?1次下載

    openCV人臉檢測(cè)系統(tǒng)的設(shè)計(jì)方案探究

    摘要: 通過對(duì)基于 Adaboost 人臉檢測(cè)算法的研究,利用該算法與計(jì)算機(jī)視覺庫(kù) openCV
    發(fā)表于 10-20 16:39 ?3次下載

    計(jì)算機(jī)視覺應(yīng)用之OpenCV基礎(chǔ)教程

    從工業(yè)檢測(cè)系統(tǒng)到自動(dòng)駕駛系統(tǒng),計(jì)算機(jī)視覺是一個(gè)包括許多有趣應(yīng)用的廣泛領(lǐng)域。許多這樣的系統(tǒng)在原型和
    發(fā)表于 11-18 04:45 ?1.5w次閱讀
    <b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>視覺</b>應(yīng)用之<b class='flag-5'>OpenCV</b>基礎(chǔ)教程

    基于Vivado HLS的計(jì)算機(jī)視覺開發(fā)

    OPENCV(Open Source Computer Vision)被廣泛的使用在計(jì)算機(jī)視覺開發(fā)上。使用Vivado HLS視頻庫(kù)在zynq-7000全可編程soc上加速
    發(fā)表于 11-10 10:47 ?1824次閱讀

    OpenCV跨平臺(tái)計(jì)算機(jī)視覺庫(kù)的詳細(xì)資料簡(jiǎn)介

    OpenCV是一個(gè)基于BSD許可(開源)發(fā)行的跨平臺(tái)計(jì)算機(jī)視覺庫(kù),可以運(yùn)行在Linux、Windows、Android和Mac OS操作系統(tǒng)
    發(fā)表于 08-19 08:00 ?2次下載
    <b class='flag-5'>OpenCV</b>跨平臺(tái)<b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>視覺</b><b class='flag-5'>庫(kù)</b>的詳細(xì)資料簡(jiǎn)介

    計(jì)算機(jī)視覺中如何調(diào)用OpenCV庫(kù)

    學(xué)習(xí)計(jì)算機(jī)視覺最重要的能力應(yīng)該就是編程了,為了幫助小伙伴盡快入門計(jì)算機(jī)視覺,小白準(zhǔn)備了【走進(jìn)OpenCV】系列,主要幫助小伙伴了解如何調(diào)用
    的頭像 發(fā)表于 09-08 10:26 ?5650次閱讀

    opencv計(jì)算機(jī)視覺庫(kù)介紹

    OpenCV是一個(gè)基于BSD許可(開源)發(fā)行的跨平臺(tái)計(jì)算機(jī)視覺庫(kù),可以運(yùn)行在Linux、Windows、Android和Mac OS操作系統(tǒng)
    的頭像 發(fā)表于 04-13 18:23 ?3659次閱讀