新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式實時面部檢測應用設計指南

        嵌入式實時面部檢測應用設計指南

        作者: 時間:2013-01-15 來源:網絡 收藏

        計算機視覺系統與人類的視覺系統非常相似,對來自范圍廣泛的各種產品的視頻信息進行分析和提取,執行與人類視覺系統相同的視覺功能。

        本文引用地址:http://www.104case.com/article/148138.htm

          在智能手機、數碼相機和便攜式攝像機等便攜產品中,必須在有限的尺寸、成本和功耗條件下提供較高的性能。新興的大容量視覺產品市場包括汽車安全、監控和游戲。計算機視覺算法識別場景中的物體,然后產生一個比其它圖像區域更重要的圖像區。例如,物體和可用于增強視頻會議體驗、公共安全檔案管理,以及基于內容的檢索和其它許多方面。

          可以進行剪裁和尺寸調整,以便適當地將圖像放在中心。在本文中,我們提出了一種數碼圖像中的、剪裁選定的主面部,并將調整尺寸到固定尺寸輸出圖像的(參見圖1)。這種可在單一圖像或在視頻流上使用,并且用于運行。只要人們關注移動產品上的面部,為了實現吞吐量,就必須采取合適的執行步驟。

          本文提出了在可編程向量處理器上執行實時面部檢測的部署步驟,這些步驟可用于在任何移動產品上執行類似的計算機視覺算法,從這一點上說,它們是通用的。

        CEVA面部檢測應用

          圖1:CEVA面部檢測應用

          雖然靜態圖像處理消耗少量的帶寬和分配內存,但是,視頻對于目前的存儲器系統的要求卻相當嚴苛。

          另一方面,由于檢測和區分物體需要更多的處理步驟,計算機視覺算法的存儲器系統極具挑戰性。考慮19x19像素大小的面部圖形縮略圖。對于這種小圖,可能的灰度值組合就有256361種,需要極高的三維空間。由于面部圖像的復雜性,明確描述面部特征具有一定的難度;因此,建立了以統計模型為基礎的其它方法。這些方法將人臉區域視為一個圖形,通過瞄準許多“面部”和“非面部”樣品構建區分器,然后通過分析檢測區域的圖形來確定圖像是否包含人臉。

          面部檢測算法必須克服的其它挑戰是:姿態(正面,45度,側面,倒置)、存在或缺乏結構部分(胡須、眼鏡)、面部表情、遮擋(部分面部可能被其它物體遮住)、圖像取向(在相機光軸不同的旋轉方向,面部外表直接變化)及成像條件(照明、相機特點、分辨率)。

          雖然文獻中已經介紹了許多面部檢測算法,但是,只有少量算法能夠滿足移動產品的實時限制性。雖然據報道,許多面部檢測算法能夠產生高的檢測率,但是,由于手機等移動產品的計算和存儲器限制,很少有算法適合實時部署在這些移動產品上。

          通常,面部檢測算法的實時執行在具有相對強大的CPU和較大存儲器尺寸的PC電腦上進行。針對現有面部檢測產品的考察顯示,Viola和Jones在2001年推出的算法已經被廣泛采納。這是一項突破性的工作,允許采用基于外表的方法來實時運行,同時保持相同或更高的準確度。

          這種算法利用簡單特征的增強級聯,并且可以分為三個主要部分:(1)積分圖 - 用于快速特征評估的高效卷積;(2)使用用于特征選擇的Adaboost,并按照重要性順序對它們進行篩選。每個特征可作為一個簡單的(弱)區分器使用;(3)使用Adaboost來了解將最不可能包含面部的區域濾出的級聯區分器(弱區分器的集合)。圖2是區分器級聯的示意圖。在圖像中,大多數子圖像并不是面部實例。

          根據這種假設,我們可以利用更小的高效區分器在早期排除許多否定例,同時檢測出差不多所有的肯定例。在后期采用更復雜的區分器來審查疑難情況。

          例:24級級聯區分器

          一級2特征區分器=> 排除60%非面部,同時檢測100%面部

          二級5特征區分器=> 排除80%非面部,同時檢測100%面部

          3級、4級和5級20特征區分器

          6級和7級50特征區分器

          8級至12級100特征區分器

          13級至24級200特征區分器

        區分器的級聯

          圖2:區分器的級聯

        在面部檢測算法的第一級,利用被稱為積分圖像的中間表示,可以快速計算矩形特征。如圖3所示,點(x,y)的積分圖像值是上部和左部所有像素的總和。D內像素的總和可以計算為4+1-(2+3)。

        采用積分圖像對矩形特征進行快速評估

          圖3:采用積分圖像對矩形特征進行快速評估

          為了在嵌入式產品上執行實時面部檢測應用,需要將指令級并行性和和數據級并行性相結合的高級并行性。超長指令字(VLIW)架構能夠實現高級并行指令處理,提供擴展的并行性及低功耗。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
        光電開關相關文章:光電開關原理

        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 云龙县| 杨浦区| 巫溪县| 抚远县| 那曲县| 北票市| 正宁县| 淮北市| 临湘市| 龙口市| 上饶市| 洪湖市| 昌吉市| 苗栗县| 敦化市| 阿城市| 迁西县| 宁城县| 天津市| 碌曲县| 西林县| 绥中县| 锦州市| 塔城市| 疏勒县| 靖安县| 峨山| 灵山县| 容城县| 阳东县| 阿图什市| 开化县| 藁城市| 江西省| 江津市| 会宁县| 泽库县| 房山区| 鲜城| 故城县| 红河县|