新四季網

表情識別輸入方法

2023-05-13 07:15:16 2

表情識別輸入方法
【專利摘要】一種表情識別輸入方法,包括:獲取連續兩幀圖像,計算所述兩幀圖像的差分灰度圖像;定位當前幀中眉毛、眼睛、嘴巴的位置;跟蹤眉毛、眼睛、嘴巴的的運動並計算下一幀圖像相對上一幀圖像中眉毛、眼睛、嘴巴這些目標對象的位移矢量;將上述目標對象的位移矢量與預設表情庫中的表情圖像匹配;輸入匹配表情圖像對應的按鍵值。該方法利用人類頭部的形狀或位移輸入指定的按鍵值,避免了手的參與。且由於大腦與頭部器官距離近,所以對表情的控制速度快,輸入快。
【專利說明】表情識別輸入方法
【技術領域】
[0001]本發明涉及一種表情識別輸入方法。
【背景技術】
[0002]為了生活的便利,人們設計了除鍵盤、滑鼠之外的多種輸入法,如觸摸板輸入法、觸控螢幕輸入法、基於腦電波識別的輸入法等等。但是,這些輸入法從輸入速度考慮,前面幾個輸入方式通常需要手操作,手在幹其他活時或殘障人士使用不太方便,對輸入速度要求較高的遊戲玩家輸入速度不能滿足要求,最後一個需要對大腦進行訓練才能實現輸入,且輸入速度特別慢。
[0003]有鑑於此,特提出本發明。

【發明內容】

[0004]本發明要解決的技術問題在於克服現有技術的不足,提供一種避免雙手參與且輸入速度快的表情識別輸入方法,
[0005]為解決上述技術問題,本發明採用技術方案的基本構思是:
[0006]一種表情識別輸入方法,包括以下步驟:
[0007]獲取連續兩幀圖像,計算所述兩幀圖像的差分灰度圖像;
[0008]定位當前幀中眉毛、眼睛、嘴巴的位置;
[0009]跟蹤眉毛、眼睛、嘴巴的的運動並計算下一幀圖像相對上一幀圖像中眉毛、眼睛、嘴巴這些目標對象的位移矢量;
[0010]將上述目標對象的位移矢量與預設表情庫中的表情圖像匹配;
[0011]輸入匹配表情圖像對應的按鍵值。
[0012]進一步地,所述定位當前幀中眉毛、眼睛、嘴巴的位置的步驟具體包括:
[0013]去除差分灰度圖像中的幹擾噪聲;
[0014]對去除幹擾噪聲後的圖像根據尋找輪廓線算法尋找輪廓線上的點,獲得圖像的輪廓線,所述輪廓線包括頭部、五官以及頸部的輪廓線;
[0015]對確定了輪廓線的差分灰度圖像進行垂直投影,根據垂直投影算法獲取垂直投影曲線,根據水平方向頭部定位算法計算水平方向頭部的位置;
[0016]計算上述確定了水平方向頭部的位置的差分灰度圖像輪廓外側水平間距,獲得差分灰度圖像輪廓外側水平間距曲線;
[0017]對上述差分灰度圖像輪廓外側水平間距利用包絡檢波算法獲得檢波結果,並根據檢波結果獲得包絡檢波後的差分灰度圖像輪廓外側水平間距曲線;
[0018]從左側讀取包絡檢波後的差分灰度圖像輪廓外側水平間距值,並尋找第二個間距小於頸部定位門限值Vtn的坐標點,該點為頭部與頸部的水平邊界點,將頸部從所述差分灰度圖像中分離;
[0019]將去掉頸部後的頭部差分灰度圖像利用人類頭部器官比例初步劃分出眉毛與眼睛部分、鼻子部分、嘴巴部分和下巴;
[0020]對眉毛與眼睛部分做垂直投影,根據垂直投影算法獲得眉毛與眼睛部分的垂直投影曲線,根據眉毛與眼睛部分水平位置定位算法計算出眉毛與眼睛部分的水平位置;
[0021]對確定了眉毛與眼睛水平位置的差分灰度圖像進行水平投影,根據水平投影算法獲得眉毛與眼睛部分的水平投影曲線,利用眼睛與眉毛的區分算法計算眼睛和眉毛的垂直分界點,從而確定眉毛和眼睛的各自的垂直位置;
[0022]對嘴巴部分進行垂直投影,根據垂直投影算法獲得嘴巴部分的垂直投影曲線,利用嘴部提取算法計算嘴巴部分的水平位置。
[0023]進一步地,所述將去掉頸部後的頭部差分灰度圖像利用人類頭部器官比例初步劃分出眉毛與眼睛部分、鼻子部分、嘴巴部分和下巴的步驟具體為:
[0024]按照人類頭部額頭、眉毛到鼻子底部、鼻子底部到下巴縱向比例為1:1:1的關係,計算額頭的高度,從差分灰度圖像中去除額頭部分;
[0025]將去除額頭部分的差分灰度圖像從縱向按1/4、1/4、3/8、1/8分割開,最上邊1/4為眉毛與眼睛部分,中間1/4為鼻子部分,中間3/8部分為嘴巴部分,下邊1/8為下巴。
[0026]進一步地,當幀率足夠高時,所述跟蹤眉毛、眼睛、嘴巴的的運動並計算下一幀圖像相對上一幀圖像中眉毛、眼睛、嘴巴這些目標對象的位移矢量的步驟具體為:
[0027]依次選取一個搜索向量i,該向量是以上一幀圖像中的目標對象的圖像幾何中心為原點,在7乘7像素的範圍內以該範圍內的任意像素點為終點構成的;
[0028]讀取上一幀圖像與當前幀中的搜索向量對應的圖像中的對應像素點,計算兩個像素點的灰度差值,並取絕對值;
[0029]將絕對值累加到Si ;
[0030]當向量遍歷完成時,比較所有向量對應的累加值Si,尋找最小值,該值對應的向量即為上一幀圖像在當前幀中的移動向量。
[0031]進一步地,所述去除差分灰度圖像中的幹擾噪聲的步驟具體為:
[0032]讀取差分灰度圖像中像素的灰度值;
[0033]判斷每個像素的灰度值是否大於噪聲門限Vr ;
[0034]如果大於\,則保留該像素;
[0035]如果小於或等於噪聲門限VN。,則刪除該像素。
[0036]所述尋找輪廓線算法的步驟具體為:
[0037]讀取差分灰度圖像中非O像素點;
[0038]計算該像素點與周圍8個像素點中的非O像素點灰度值的絕對值;
[0039]選取結果中絕對差值最小的點作為輪廓線上的下一點。
[0040]進一步地,所述垂直投影算法具體為:
[0041]讀取所述差分灰度圖像各像素的灰度值;
[0042]將多個灰度值按列累加,多個累加值形成一個數組,即為垂直投影數組,利用該數組繪製垂直投影曲線。
[0043]所述水平投影算法具體為:
[0044]讀取所述差分灰度圖像各像素的灰度值;
[0045]將各像素的灰度值按行累加,多個累加值形成一個數組,即為水平投影數組,利用該數組繪製水平投影曲線。
[0046]進一步地,
[0047]所述水平方向頭部定位算法具體為:
[0048]從左邊依次讀取垂直投影值;
[0049]判斷垂直投影值是否大於門限值Vt ;
[0050]左邊第一個垂直投影值大於門限值Vt的投影點的坐標為頭部水平位置的左邊界;
[0051 ] 從右邊依次讀取垂直投影值;
[0052]判斷垂直投影值是否大於門限值Vt ;
[0053]右邊第一個大於門限值Vt的投影點的坐標為頭部水平位置的右邊界。
[0054]進一步地,所述計算上述確定了水平方向頭部的位置的差分灰度圖像輪廓外側水平間距的步驟具體為:
[0055]從所述差分灰度圖像中按行從左邊讀取第一個非零灰度值對應的橫坐標;
[0056]從所述差分灰度圖像中按行從右邊讀取第一個非零灰度值對應的橫坐標;
[0057]計算兩個橫坐標的差並存儲下來,此值為每行圖像輪廓外側水平間距。
[0058]所述包絡檢波算法具體為:
[0059]定義輪廓外側上一個像素水平間距記錄值變量並賦零;
[0060]順序讀取輪廓外側各像素水平間距值;
[0061]判斷當前讀取值與上一值的大小;
[0062]如果當前讀取值大於上一值,則將當前讀取值賦給上一記錄值,將上一記錄值作為檢波結果輸出;
[0063]如果當前讀取值小於或等於上一值,則將上一記錄值減1,將上一記錄值作為檢波結果輸出。
[0064]進一步地,所述眉毛與眼睛部分水平位置定位算法的步驟具體為:
[0065]讀取眉毛與眼睛部分圖像的垂直投影值,並計算出投影最左邊與最右邊非零值點的距離即為垂直投影非零值外側寬度;
[0066]連續讀取眉毛與眼睛部分圖像垂直投影,並計算投影值連續大於眉毛與眼睛部分投影門限Vte的寬度以及該寬度區域對應的起始點位置;
[0067]計算投影值連續大於眉毛與眼睛部分投影門限Vte的寬度與垂直投影非零值外側寬度的比值RW1,以及該寬度區域對應的起始點位置與垂直投影非零值外側寬度的比值Rw2 ;
[0068]判斷I Rffl-0.2 I是否小於誤差值e,如果小於e,則
[0069]判斷I Rw2-0.2 I是否小於誤差值e,如果小於e,則
[0070]在左眼水平位置右側連續讀取眉毛與眼睛部分圖像垂直投影,並計算垂直投影值連續大於眉毛與眼睛部分投影門限Vte的寬度以及該寬度區域對應的起始點位置;
[0071]計算投影值連續大於眉毛與眼睛部分投影門限Vte的寬度與垂直投影非零值外側寬度的比值RW3,以及該寬度區域對應的起始點位置與垂直投影非零值外側寬度的比值Rw4 ;
[0072]判斷I Rff3-0.2 I是否小於誤差值e,如果小於e,則
[0073]判斷I Rw4_0.6 I是否小於誤差值e,如果小於e,則結束。
[0074]進一步地,所述眼睛與眉毛的區分算法的步驟具體為:[0075]讀取眉毛與眼睛部分的水平投影值;
[0076]判斷水平投影值是否大於門限值VTeb ;
[0077]當大於門限值VTeb時,計算該投影點與眉毛與眼睛部分的垂直起始位置、終止位置距離的比值;
[0078]計算該投影點與眉毛與眼睛部分的垂直起始位置、終止位置距離的比值與I的差的絕對值;
[0079]將上述差的絕對值魚誤差值e比較;
[0080]小於誤差值e時確定此點為眉、眼垂直分界點。
[0081]所述嘴部提取算法具體為:
[0082]讀取嘴巴部分圖像垂直投影值並從中刪除最左邊非零部分;
[0083]從最右邊刪除嘴巴部分垂直投影值非零部分,剩餘部分為嘴巴部分圖像的的垂直投影,從而確定嘴巴部分的水平位置。
[0084]採用上述技術方案後,本發明與現有技術相比具有以下有益效果:
[0085]該方法利用人類頭部的形狀或位移可以輸入指定的值,表情識別結果直接轉換為鍵盤輸入信號,這種輸入法避免了手的參與,尤其利於殘障人士使用。另外,由於人體大腦與頭部器官距離近,所以人對表情的控制速度與對手的控制相比非常快,最終可以提高人體對電腦的控制速度,這種控制的實時性對遊戲發燒友非常適用,如在魔獸遊戲中通過憤怒的表情輸入「射擊」的動作等。
[0086]下面結合附圖對本發明的【具體實施方式】作進一步詳細的描述。
【專利附圖】

【附圖說明】
[0087]圖1是本發明表情識別輸入方法的一種流程圖;
[0088]圖2是相鄰兩幀圖像相減後的圖像;
[0089]圖3是表情重複判別算法的流程圖;
[0090]圖4是定位當前幀中眉毛、眼睛、嘴巴的位置的步驟的流程圖;
[0091]圖4a是圖2去除幹擾噪聲後的圖像;
[0092]圖5是頭部的輪廓線圖像;
[0093]圖6是圖5的垂直投影曲線;
[0094]圖7是圖6去除幹擾噪聲後的圖像;
[0095]圖8是垂直投影定位後的頭像;
[0096]圖9是頭像輪廓外側水平間距曲線;
[0097]圖10是包絡檢波後的差分灰度圖像輪廓外側水平間距曲線;
[0098]圖11是眉毛與眼睛部分的垂直投影曲線;
[0099]圖12是眉毛與眼睛部分水平定位結果圖;
[0100]圖13是眉毛與眼睛部分的提取結果圖;
[0101]圖14是眉毛與眼睛部分的水平投影曲線圖;
[0102]圖15是嘴巴部分的垂直投影曲線圖;
[0103]圖16是嘴巴部分圖像提取結果圖;
[0104]圖17是將去掉頸部後的頭部差分灰度圖像利用人類頭部器官比例初步劃分出眉毛與眼睛部分、鼻子部分、嘴巴部分和下巴的步驟的流程圖;
[0105]圖18是按人類頭部器官比例分割頭部的頭部圖像;
[0106]圖19是跟蹤眉毛、眼睛、嘴巴的的運動並計算下一幀圖像相對上一幀圖像中眉毛、眼睛、嘴巴這些目標對象的位移矢量的流程圖;
[0107]圖20是去除差分灰度圖像中的幹擾噪聲的流程圖;
[0108]圖21是尋找輪廓線算法的流程圖;
[0109]圖22是垂直投影算法的流程圖;
[0110]圖23是水平投影算法的流程圖;
[0111]圖24是水平方向頭部定位算法的流程圖;
[0112]圖25是計算上述確定了水平方向頭部的位置的差分灰度圖像輪廓外側水平間距的流程圖;
[0113]圖26是包絡檢波算法的流程圖;
[0114]圖27是眉毛與眼睛部分水平位置定位算法的流程圖;
[0115]圖28是眼睛與眉毛的區分算法的流程圖;
[0116]圖29是嘴部提取算法的流程圖。
【具體實施方式】
[0117]以下【具體實施方式】中的圖6、圖7、圖9、圖10、圖11、圖14和圖15中的二維坐標圖中,橫軸均表示物體位置,單位為像素,縱軸表示像素灰度值之和。
[0118]如圖1所示,本發明是一種表情識別輸入方法,包括以下步驟:
[0119]確保拍攝環境沒有運動物體,即背景是靜止的,在攝像頭前做出表情,執行步驟S11、採集獲取連續兩幀圖像,計算所述兩幀圖像的差分灰度圖像。如圖2 ;拍攝時要求人臉儘量正對攝像頭,並保持合適的距離(以頭部能大致充滿攝像頭輸出的視頻圖像為準)。採用攝像頭或其他射頻採集設備採集圖像。
[0120]S12、定位當前幀中眉毛、眼睛、嘴巴的位置;
[0121]S13、跟蹤眉毛、眼睛、嘴巴的的運動並計算下一幀圖像相對上一幀圖像中眉毛、眼睛、嘴巴這些目標對象的位移矢量;
[0122]S14、將上述目標對象的位移矢量與預設表情庫中的表情圖像匹配;
[0123]S15、輸入匹配表情圖像對應的按鍵值。
[0124]對於步驟S14和S15,根據自己的習慣設計各種不同的表情,並與按鍵做綁定。比如把撅嘴設計為向上按鍵,縮嘴設置為向下按鍵,左偏頭設置為向左按鍵,右偏頭設置為向右按鍵。具體動作與按鍵映射可以參考按鍵動作參考表。該標準記錄了眉毛、眼睛、嘴巴的形狀以及與無按鍵表情的相對位移。可以利用眉毛、眼睛、嘴巴的位移表示按鍵,也可以用眉毛、眼睛、嘴巴的形狀表示按鍵。將上述設置好的表情按鍵值存入表情庫。
[0125]然後將自己想好的按鍵輸入表情識別鍵盤,則完成表情與鍵盤按鍵的綁定。同樣的方法可以設置多個按鍵。
[0126]在表情設置的過程中,系統自動對差別小的表情作出判別,如果差別太小則認為表情重複,不允許設置。具體判別方法見表情重複判別算法描述。
[0127]參照圖3,所述表情重複判別算法包括以下步驟:[0128]S2101:首先讀取一個自定義的表情類型,即利用五官或頭部移動定義的表情,然後進入2102 ;
[0129]S2102:讀取一個表情庫中的表情;
[0130]S2103:計算新表情與表情庫中的表情的距離,然後進入2104 ;
[0131]S2104:判斷新表情與表情庫中的表情的距離是否小於門限值Dt,如果小於則進入2105,否則進入2106 ;
[0132]S2105:確認自定義表情重複,結束程序;
[0133]S2106:判斷表情庫是否搜索完畢,如果沒有完畢則進入2101繼續搜索,如果完畢則程序結束,搜索完畢,則進入S2107,結束。
[0134]本算法主要用於防止將類似的表情定義為不同的按鍵值造成混亂。
[0135]步驟S13是一個識別過程。完成按鍵設置後,結合跟蹤過程可以進行表情識別,舉例說明如下:
[0136]在跟蹤眉毛、眼睛、嘴巴的同時,計算眉毛、眼睛、嘴巴的位移,當位移達到預置位移的時候,可以認為頭部發生了向左或向右偏移,然後向電腦USB接口送出綁定的按鍵值。
[0137]在跟蹤眉毛、眼睛、嘴巴的同時,把眉毛、眼睛、嘴巴形狀與定義的按鍵表情做搜索匹配。當發現與按鍵定義表情匹配時,向電腦USB接口送出綁定的按鍵值。
[0138]該方法利用人類頭部的形狀或位移可以輸入指定的值,表情識別結果直接轉換為鍵盤輸入信號,這種輸入法避免了手的參與,尤其利於殘障人士使用。另外,由於人體大腦與頭部器官距離近,所以人對表情的控制速度與對手的控制相比非常快,最終可以提高人體對電腦的控制速度,這種控制的實時性對遊戲發燒友非常適用,如在魔獸遊戲中通過憤怒的表情輸入「射擊」的動作等。
[0139]參照圖4,優選的,所述步驟S12、定位當前幀中眉毛、眼睛、嘴巴的位置的步驟具體包括:
[0140]S121、去除差分灰度圖像中的幹擾噪聲;圖4a是兩幀圖像的差分灰度圖像去除幹擾噪聲後的圖像,由於攝像頭等視頻採集電路的影響,會在輸出圖像中產生噪聲幹擾點,這些噪點不利於圖像處理,需要去除。
[0141]S122、對去除幹擾噪聲後的圖像根據尋找輪廓線算法尋找輪廓線上的點,獲得圖像的輪廓線,如圖5,所述輪廓線包括頭部、五官以及頸部的輪廓線;通過本算法可以保留圖像中重要的輪廓線上的信息點,去除不重要的非輪廓線上的點。
[0142]S123、對確定了輪廓線的差分灰度圖像進行垂直投影,根據垂直投影算法獲取垂直投影曲線,如圖6,根據水平方向頭部定位算法計算水平方向頭部的位置;
[0143]垂直投影表示頭部輪廓線在垂直方向上像素的集中程度,投影值越大說明該投影方向上對應的線條越多,可以用於定位物體的水平位置。線條密集區大致處於頭部,所以通過設置垂直投影門限Vt可以計算出水平方向頭部的位置,可參照圖7。根據水平方向頭部定位算法獲得的頭部圖像如圖8所示。
[0144]在上述圖8的基礎上執行步驟S124、計算上述確定了水平方向頭部的位置的差分灰度圖像輪廓外側水平間距,獲得差分灰度圖像輪廓外側水平間距曲線,如圖9 ;
[0145]S125、對上述差分灰度圖像輪廓外側水平間距利用包絡檢波算法獲得檢波結果,並根據檢波結果獲得包絡檢波後的差分灰度圖像輪廓外側水平間距曲線,如圖10 ;[0146]S126、從左側讀取包絡檢波後的差分灰度圖像輪廓外側水平間距值,並尋找第二個間距小於頸部定位門限值Vtn的坐標點,該點為頭部與頸部的水平邊界點,將頸部從所述差分灰度圖像中分離;
[0147]S127、將去掉頸部後的頭部差分灰度圖像利用人類頭部器官比例初步劃分出眉毛與眼睛部分、鼻子部分、嘴巴部分和下巴;
[0148]S128、對眉毛與眼睛部分做垂直投影,根據垂直投影算法獲得眉毛與眼睛部分的垂直投影曲線,如圖11,根據每個眼睛寬度約佔人臉寬度1/5,可以利用圖11定位出眼睛的水平位置,如圖12所示,根據眉毛與眼睛部分水平位置定位算法計算出眉毛與眼睛部分的水平位置,圖像如圖13 ;
[0149]在圖13的基礎上執行步驟S129、對確定了眉毛與眼睛水平位置的差分灰度圖像進行水平投影,根據水平投影算法獲得眉毛與眼睛部分的水平投影曲線,如圖14,利用眼睛與眉毛的區分算法計算眼睛和眉毛的垂直分界點,從而確定眉毛和眼睛的各自的垂直位置;
[0150]S130、對嘴巴部分進行垂直投影,投影結果繪製的曲線如圖15所示,從該圖可以看出臉部輪廓與嘴部的投影明顯分為3部分。根據垂直投影算法獲得嘴巴部分的垂直投影曲線,利用嘴部提取算法計算嘴巴部分的水平位置,從而得到嘴巴部分的圖像,如圖16。
[0151]參照圖17,優選的,所述步驟S125、將去掉頸部後的頭部差分灰度圖像利用人類頭部器官比例初步劃分出眉毛與眼睛部分、鼻子部分、嘴巴部分和下巴的步驟具體為:
[0152]S1251、按照人類頭部額頭、眉毛到鼻子底部、鼻子底部到下巴縱向比例為1:1:1的關係,計算額頭的高度,從差分灰度圖像中去除額頭部分;
[0153]S1252、將去除額頭部分的差分灰度圖像從縱向按1/4、1/4、3/8、1/8分割開,最上邊1/4為眉毛與眼睛部分,中間1/4為鼻子部分,中間3/8部分為嘴巴部分,下邊1/8為下巴。
[0154]按人類頭部器官比例分割頭部的圖像如圖18所示。
[0155]當幀率足夠高時,兩幀之間的運動物體的形狀與位置差別不大,所述步驟S13、跟蹤眉毛、眼睛、嘴巴的的運動並計算下一幀圖像相對上一幀圖像中眉毛、眼睛、嘴巴這些目標對象的位移矢量的步驟具體為,參照圖19:
[0156]S131、依次選取一個搜索向量i,該向量是以上一幀圖像中的目標對象的圖像幾何中心為原點,在7乘7像素的範圍內以該範圍內的任意像素點為終點構成的;
[0157]S132、讀取上一幀圖像與當前幀中的搜索向量對應的圖像中的對應像素點,計算兩個像素點的灰度差值,並取絕對值;
[0158]S133、將絕對值累加到Si ;
[0159]S134、判斷向量遍歷是否完成,如果沒有完成則進入步驟S131 ;
[0160]S135、當向量遍歷完成時,比較所有向量對應的累加值Si,尋找最小值,該值對應的向量即為上一幀圖像在當前幀中的移動向量。
[0161]以跟蹤嘴的運動為例,撅嘴過程,有可能伴隨著嘴的位置與形狀同時變化。當幀率足夠高,可以認為兩幀之間嘴的形狀變化微小,可以忽略。從而利用當前幀中定位的嘴的圖像搜索其在下一幀中的位置。因為兩幀之間時間很短,嘴的位移很小,所以可以以當前嘴的位置為中心,設置搜索向量,依次按照各個向量搜索,利用匹配算法,尋找嘴部位移矢量,從而實現下一幀中嘴部的定位。具體搜索匹配算法見搜索匹配算法描述。
[0162]參照圖20,優選的,所述步驟S121、去除差分灰度圖像中的幹擾噪聲的步驟具體為:
[0163]S1211、讀取差分灰度圖像中像素的灰度值;
[0164]S1212、判斷每個像素的灰度值是否大於噪聲門限Vn。,進入S1213和S1214 ;
[0165]S1213、如果大於vn,則保留該像素;
[0166]S1214、當灰度值等於O時,刪除該像素。
[0167]本算法主要用於搜索內容相似的圖像。
[0168]參照圖21,優選的,所述步驟S122中的尋找輪廓線算法的步驟具體為:
[0169]S1221、讀取差分灰度圖像中非O像素點;
[0170]S1222、計算該像素點與周圍8個像素點中的非O像素點灰度值的絕對值;
[0171]S1223、選取結果中絕對差值最小的點作為輪廓線上的下一點。
[0172]本算法主要用於搜索頭部以及五官的輪廓線。
[0173]參照圖22,優選的,所述步驟S 123、S126中的垂直投影算法具體為:
[0174]S1501、按列讀取所述差分灰度圖像各像素的灰度值;
[0175]S1502、將多個灰度值按列累加,每列可得到一個累加值,多個累加值形成一個數組,即為垂直投影數組,利用該數組繪製垂直投影曲線。
[0176]本算法主要用於定位頭部及五官的水平位置。
[0177]參照圖23,優選的,所述步驟S 127中的水平投影算法具體為:
[0178]S1601、按行讀取所述差分灰度圖像各像素的灰度值;
[0179]S1602、將各像素的灰度值按行累加,每行可得到一個累加值,多個累加值形成一個數組,即為水平投影數組,利用該數組繪製水平投影曲線。
[0180]本算法主要用於定位頭部及五官的垂直位置。
[0181]參照圖24,優選的,所述步驟S 123中的水平方向頭部定位算法具體為:
[0182]S1801、從左邊依次讀取垂直投影值;
[0183]S1802、判斷垂直投影值是否大於門限值Vt ;
[0184]S1803、左邊第一個垂直投影值大於門限值Vt的投影點的坐標為頭部水平位置的左邊界;
[0185]S1804、從右邊依次讀取垂直投影值;
[0186]S1805、判斷垂直投影值是否大於門限值Vt ;
[0187]S1806、右邊第一個大於門限值Vt的投影點的坐標為頭部水平位置的右邊界。本算法主要用於定位頭部水平位置。
[0188]參照圖25,優選的,所述步驟S124中計算上述確定了水平方向頭部的位置的差分灰度圖像輪廓外側水平間距的步驟具體為:
[0189]S2401、從所述差分灰度圖像中按行從左邊讀取第一個非零灰度值對應的橫坐標;
[0190]S2402、從所述差分灰度圖像中按行從右邊讀取第一個非零灰度值對應的橫坐標;
[0191]S2403、計算兩個橫坐標的差並存儲下來,此值為每行圖像輪廓外側水平間距。[0192]參照圖26,優選的,所述步驟S124中的包絡檢波算法具體為:
[0193]S2501、定義輪廓外側上一個像素水平間距記錄值變量並賦零;
[0194]S2502、順序讀取輪廓外側各像素水平間距值;
[0195]S2503、判斷當前讀取值與上一值的大小;
[0196]S2504、如果當前讀取值大於上一值,則將當前讀取值賦給上一記錄值,將上一記錄值作為檢波結果輸出;
[0197]S2505、如果當前讀取值小於或等於上一值,則將上一記錄值減1,將上一記錄值作為檢波結果輸出。
[0198]根據每個眼睛寬度約佔人臉寬度1/5,參照圖27,優選的,所述步驟S126中的眉毛與眼睛部分水平位置定位算法的步驟具體為:
[0199]S2801、讀取眉毛與眼睛部分圖像的垂直投影值,並計算出投影最左邊與最右邊非零值點的距離即為垂直投影非零值外側寬度;
[0200]S2802、連續讀取眉毛與眼睛部分圖像垂直投影,並計算投影值連續大於眉毛與眼睛部分投影門限Vte的寬度以及該寬度區域對應的起始點位置;
[0201]S2803、計算投影值連續大於眉毛與眼睛部分投影門限Vte的寬度與垂直投影非零值外側寬度的比值Rwi,以及該寬度區域對應的起始點位置與垂直投影非零值外側寬度的比值 Rw2;
[0202]S2804、判斷I RW1_0.2 |是否小於誤差值e,如果小於e,說明該投影部分為眉毛與眼睛部分,進入S2805,否則進入S2802 ;
[0203]S2805、判斷I Rw2-0.2 |是否小於誤差值e,如果小於e,說明該投影部分為左眼水平位置,進入S2806,否則進入S2802 ;
[0204]S2806、在左眼水平位置右側連續讀取眉毛與眼睛部分圖像垂直投影,並計算垂直投影值連續大於眉毛與眼睛部分投影門限Vte的寬度以及該寬度區域對應的起始點位置;
[0205]S2807、計算投影值連續大於眉毛與眼睛部分投影門限Vte的寬度與垂直投影非零值外側寬度的比值Rw3,以及該寬度區域對應的起始點位置與垂直投影非零值外側寬度的比值 Rw4 ;
[0206]S2808、判斷I Rw3-0.2 |是否小於誤差值e,如果小於e,說明該投影部分為眉毛與眼睛部分,進入S2809,否則進入S2806 ;
[0207]S2809、判斷I Rw4-0.6 |是否小於誤差值e,如果小於e,說明該投影部分為右眼水平位置,進入S2810,結束,否則進入S,2806。
[0208]參照圖28,優選的,所述步驟S127中的眼睛與眉毛的區分算法的步驟具體為:
[0209]S1901、讀取眉毛與眼睛部分的水平投影值;
[0210]S1902、判斷水平投影值是否大於門限值VTeb ;
[0211]S1903、當大於門限值VTeb時,計算該投影點與眉毛與眼睛部分的垂直起始位置、終止位置距離的比值;否則進入S1901 ;
[0212]S1904、計算該投影點與眉毛與眼睛部分的垂直起始位置、終止位置距離的比值與I的差的絕對值;
[0213]S1905、將上述差的絕對值與誤差值e比較;
[0214]S1906、小於誤差值e時,確定此點為眉、眼垂直分界點,否則進入S1901。[0215]本算法主要用於定位眼部與眉毛的垂直位置。
[0216]參照圖29,優選的,所述步驟S128中的嘴部提取算法具體為:
[0217]S2701、讀取嘴巴部分圖像垂直投影值並從中刪除最左邊非零部分;
[0218]S2702、從最右邊刪除嘴巴部分垂直投影值非零部分,剩餘部分為嘴巴部分圖像的的垂直投影,從而確定嘴巴部分的水平位置。
[0219]所述表情可以為目標對象的形狀或位移。
[0220]以上所述僅是本發明的優選實施方式,應當指出,對於本【技術領域】的普通技術人員來說,在不脫離本發明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發明的保護範圍。
【權利要求】
1.一種表情識別輸入方法,其特徵在於:包括以下步驟: 獲取連續兩幀圖像,計算所述兩幀圖像的差分灰度圖像; 定位當前幀中眉毛、眼睛、嘴巴的位置; 跟蹤眉毛、眼睛、嘴巴的的運動並計算下一幀圖像相對上一幀圖像中眉毛、眼睛、嘴巴這些目標對象的位移矢量; 將上述目標對象的位移矢量與預設表情庫中的表情圖像匹配; 輸入匹配表情圖像對應的按鍵值。
2.根據權利要求1所述的表情識別輸入方法,其特徵在於:所述定位當前幀中眉毛、眼睛、嘴巴的位置的步驟具體包括: 去除差分灰度圖像中的幹擾噪聲; 對去除幹擾噪聲後的圖像根據尋找輪廓線算法尋找輪廓線上的點,獲得圖像的輪廓線,所述輪廓線包括頭部、五官以及頸部的輪廓線; 對確定了輪廓線的差分灰度圖像進行垂直投影,根據垂直投影算法獲取垂直投影曲線,根據水平方向頭部定位算法計算水平方向頭部的位置; 計算上述確定了水平方向頭部的位置的差分灰度圖像輪廓外側水平間距,獲得差分灰度圖像輪廓外側水平間距曲線; 對上述差分灰度圖像輪廓外側水平間距利用包絡檢波算法獲得檢波結果,並根據檢波結果獲得包絡檢波後的差分 灰度圖像輪廓外側水平間距曲線; 從左側讀取包絡檢波後的差分灰度圖像輪廓外側水平間距值,並尋找第二個間距小於頸部定位門限值Vtn的坐標點,該點為頭部與頸部的水平邊界點,將頸部從所述差分灰度圖像中分離; 將去掉頸部後的頭部差分灰度圖像利用人類頭部器官比例初步劃分出眉毛與眼睛部分、鼻子部分、嘴巴部分和下巴; 對眉毛與眼睛部分做垂直投影,根據垂直投影算法獲得眉毛與眼睛部分的垂直投影曲線,根據眉毛與眼睛部分水平位置定位算法計算出眉毛與眼睛部分的水平位置; 對確定了眉毛與眼睛水平位置的差分灰度圖像進行水平投影,根據水平投影算法獲得眉毛與眼睛部分的水平投影曲線,利用眼睛與眉毛的區分算法計算眼睛和眉毛的垂直分界點,從而確定眉毛和眼睛的各自的垂直位置; 對嘴巴部分進行垂直投影,根據垂直投影算法獲得嘴巴部分的垂直投影曲線,利用嘴部提取算法計算嘴巴部分的水平位置。
3.根據權利要求2所述的表情識別輸入方法,其特徵在於:所述將去掉頸部後的頭部差分灰度圖像利用人類頭部器官比例初步劃分出眉毛與眼睛部分、鼻子部分、嘴巴部分和下巴的步驟具體為: 按照人類頭部額頭、眉毛到鼻子底部、鼻子底部到下巴縱向比例為1:1:1的關係,計算額頭的高度,從差分灰度圖像中去除額頭部分; 將去除額頭部分的差分灰度圖像從縱向按1/4、1/4、3/8、1/8分割開,最上邊1/4為眉毛與眼睛部分,中間1/4為鼻子部分,中間3/8部分為嘴巴部分,下邊1/8為下巴。
4.根據權利要求1所述的表情識別輸入方法,其特徵在於:當幀率足夠高時,所述跟蹤眉毛、眼睛、嘴巴的的運動並計算下一幀圖像相對上一幀圖像中眉毛、眼睛、嘴巴這些目標對象的位移矢量的步驟具體為: 依次選取一個搜索向量i,該向量是以上一幀圖像中的目標對象的圖像幾何中心為原點,在7乘7像素的範圍內以該範圍內的任意像素點為終點構成的; 讀取上一幀圖像與當前幀中的搜索向量對應的圖像中的對應像素點,計算兩個像素點的灰度差值,並取絕對值; 將絕對值累加到Si ; 當向量遍歷完成時,比較所有向量對應的累加值Si,尋找最小值,該值對應的向量即為上一幀圖像在當前幀中的移動向量。
5.根據權利要求2所述的表情識別輸入方法,其特徵在於:所述去除差分灰度圖像中的幹擾噪聲的步驟具體為: 讀取差分灰度圖像中像素的灰度值; 判斷每個像素的灰度值是否大於噪聲門限VN。; 如果大於Vn,則保留該像素; 如果小於或等於噪聲門限VN。,則刪除該像素。 所述尋找輪廓線算法的步驟具體為: 讀取差分灰度圖像中非O像素點; 計算該像素點與周圍8個像素點中的非O像素點灰度值的絕對值; 選取結果中絕對差值最小的點作為輪廓線上的下一點。
6.根據權利要求2所述的表情識別輸入方法,其特徵在於: 所述垂直投影算法具體為: 讀取所述差分灰度圖像各像素的灰度值; 將多個灰度值按列累加,多個累加值形成一個數組,即為垂直投影數組,利用該數組繪製垂直投影曲線。 所述水平投影算法具體為: 讀取所述差分灰度圖像各像素的灰度值; 將各像素的灰度值按行累加,多個累加值形成一個數組,即為水平投影數組,利用該數組繪製水平投影曲線。
7.根據權利要求2所述的表情識別輸入方法,其特徵在於: 所述水平方向頭部定位算法具體為: 從左邊依次讀取垂直投影值; 判斷垂直投影值是否大於門限值Vt ; 左邊第一個垂直投影值大於門限值Vt的投影點的坐標為頭部水平位置的左邊界; 從右邊依次讀取垂直投影值; 判斷垂直投影值是否大於門限值Vt ; 右邊第一個大於門限值Vt的投影點的坐標為頭部水平位置的右邊界。
8.根據權利要求2所述的表情識別輸入方法,其特徵在於: 所述計算上述確定了水平方向頭部的位置的差分灰度圖像輪廓外側水平間距的步驟具體為: 從所述差分灰度圖像中按行從左邊讀取第一個非零灰度值對應的橫坐標;從所述差分灰度圖像中按行從右邊讀取第一個非零灰度值對應的橫坐標; 計算兩個橫坐標的差並存儲下來,此值為每行圖像輪廓外側水平間距。 所述包絡檢波算法具體為: 定義輪廓外側上一個像素水平間距記錄值變量並賦零; 順序讀取輪廓外側各像素水平間距值; 判斷當前讀取值與上一值的大小; 如果當前讀取值大於上一值,則將當前讀取值賦給上一記錄值,將上一記錄值作為檢波結果輸出; 如果當前讀取值小於或等於上一值,則將上一記錄值減1,將上一記錄值作為檢波結果輸出。
9.根據權利要求2所述的表情識別輸入方法,其特徵在於:所述眉毛與眼睛部分水平位置定位算法的步驟具體為: 讀取眉毛與眼睛部分圖像的垂直投影值,並計算出投影最左邊與最右邊非零值點的距離即為垂直投影非零值外側寬度; 連續讀取眉毛與眼睛部分圖像垂直投影,並計算投影值連續大於眉毛與眼睛部分投影門限Vte的寬度以及該寬度區域對應的起始點位置; 計算投影值連續大於眉毛與眼睛部分投影門限Vte的寬度與垂直投影非零值外側寬度的比值RW1,以及該寬度區域對應的起始點位置與垂直投影非零值外側寬度的比值Rw2 ; 判斷I Rw1-0.2 I是否小於誤差值e,如果小於e,則 判斷I Rw2-0.2 I是否小於誤差值e,如果小於e,則 在左眼水平位置右側連續讀取眉毛與眼睛部分圖像垂直投影,並計算垂直投影值連續大於眉毛與眼睛部分投影門限Vte的寬度以及該寬度區域對應的起始點位置; 計算投影值連續大於眉毛與眼睛部分投影門限Vte的寬度與垂直投影非零值外側寬度的比值RW3,以及該寬度區域對應的起始點位置與垂直投影非零值外側寬度的比值Rw4 ; 判斷I Rw3-0.2 I是否小於誤差值e,如果小於e,則 判斷I Rw4-0.6 I是否小於誤差值e,如果小於e,則結束。
10.根據權利要求2所述的表情識別輸入方法,其特徵在於:所述眼睛與眉毛的區分算法的步驟具體為: 讀取眉毛與眼睛部分的水平投影值; 判斷水平投影值是否大於門限值Vm3 ; 當大於門限值VTeb時,計算該投影點與眉毛與眼睛部分的垂直起始位置、終止位置距離的比值; 計算該投影點與眉毛與眼睛部分的垂直起始位置、終止位置距離的比值與I的差的絕對值; 將上述差的絕對值魚誤差值e比較; 小於誤差值e時確定此點為眉、眼垂直分界點。 所述嘴部提取算法具體為: 讀取嘴巴部分圖像垂直投影值並從中刪除最左邊非零部分; 從最右邊刪除嘴巴部分垂直投影值非零部分,剩餘部分為嘴巴部分圖像的的垂直投影,從而確定嘴 巴部分的水平位置。
【文檔編號】G06K9/00GK103677226SQ201210323547
【公開日】2014年3月26日 申請日期:2012年9月4日 優先權日:2012年9月4日
【發明者】李爭平, 李晉紅, 張常年, 王輝柏, 韋歡 申請人:北方工業大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀