本發(fā)明涉及人機交互的注視點估計領域,具體涉及基于相關熵的注視點估計方法。
背景技術:
近年來,眼睛注視跟蹤技術復雜性和應用性已經(jīng)引起了商業(yè)部門的極大興趣。各種各樣的學科中使用眼睛注視追蹤技術,包括認知科學、心理學(特別是心理語言學、視覺世界的范式),人機交互(hci)、市場研究和醫(yī)學研究(神經(jīng)診斷)。具體應用包括跟蹤眼動在語言閱讀,音樂閱讀,人類活動識別,廣告設計,和運動設計。因此,對注視追蹤的研究一直吸引著研究者的興趣。
注視點估計精度通常會受到提取的人眼圖像的影響,對人眼圖像的超像素級別的提取有利于提高注視估計精度。對于傳統(tǒng)的對人眼提取算法,這些算法主要是利用提取特征點的方法對人眼內外眼角點進行判斷,然后利用人眼圖像高和寬的比例對人眼進行分割。但是根據(jù)這些算法提取出來的人眼圖像跟真正的人眼圖像有很大的偏差,而且在實際中實驗對象頭部姿態(tài)會有一些偏差,這樣更不利于對人眼圖像的精確提取。
對注視點的估計主要依據(jù)注視點空間與人眼特征空間的相似性,根據(jù)空間結構的權重共享關系,從而對注視點進行估計。但是在對人眼特征空間和注視點空間進行建模中,由于結構的差異性,需要對人眼特征空間進行降維處理,從而實現(xiàn)二者結構的相似性或者一致性。而傳統(tǒng)的算法例如pca,lda等算法,這些算法僅僅利用人眼特征的局部信息或者全局信息,而忽略注視空間的信息,這樣對人眼特征進行降維后的空間不能保證與注視空間結構的相似性。這樣會導致在對注視點過程中因為空間結構的差異性導致注視估計誤差的產(chǎn)生。所以基于注視空間的人眼特征降維處理有著重要的作用。
在一般情況下,對實驗對象進行注視點估計,需要一個標定的過程,而傳統(tǒng)的方法需要測試者進行較長時間的標定過程,需要很多標定點才能達到高的精度。注視點估計在不同環(huán)境下的適用性方面也面臨著挑戰(zhàn),例如攝像機分辨率低,或者有噪聲干擾的環(huán)境下,這對注視點估計有著很大的影響。因此在不同環(huán)境下的適應性對注視點估計應用有著很大的影響。
技術實現(xiàn)要素:
本發(fā)明的目的是克服上述現(xiàn)有的技術的缺點,提供了一種基于相關熵的注視點估計方法,該方法能在不同的環(huán)境條件下對注視點進行精確的估計。
為了達到上述目的,本發(fā)明采用如下技術方案:
一種基于相關熵的注視點估計方法,該方法只需要單攝像頭以及在屏幕上均勻標定點,具體包括如下步驟:
步驟1:人臉圖像提?。涸趯ψ⒁朁c估計過程中,采用adboost人臉檢測算法對人臉圖像進行提??;
步驟2:人眼圖像亞像素提?。涸诮?jīng)過步驟(1)對人臉圖像進行提取后,采用亞像素級的方法對人眼圖像進行精準提取,具體方法為:主要是在不同的頭部姿態(tài)條件下,尋找最優(yōu)的人眼區(qū)域圖像;首先初始化人眼區(qū)域的初始頂點坐標e0(x,y),通過對齊操作后的位置信息為e(x,y),二者之間的變換函數(shù)如下:
在公式中transform(x,y)是對齊變換函數(shù),s為圖像縮放比例,θ是旋轉角度,tx,ty是在x、y方向上的偏移像素位移;
假設e={vec(e1)|...|vec(en)}是標準的裁剪的人眼圖像集,作為訓練樣本,通過人眼區(qū)域圖像對齊操作使下面目標函數(shù)實現(xiàn)最小化實現(xiàn)對人眼圖像提?。?/p>
公式中τ為變換矩陣,
步驟3:人眼特征降維:在經(jīng)過對步驟(2)提取的人眼圖像進行提取后,對人眼圖像進行hog特征提取,然后使用kl散度算法對人眼圖像的hog特征進行降維操作;具體方法為:假設α,β,γ分別代表人眼特征空間、注視點空間和人眼特征投影空間,對于不同的空間結構,特征降維的目的主要過程是通過人眼特征空間轉換,使轉換后的空間γ與注視點空間β更加的相似;為了更好學習度量測度,使用歐式距離表示空間的距離測度關系,即:d(i,j)=||i-j||2;假設對于訓練樣本集,定義訓練樣本之間的條件分布如下:
式(11)中:d(i,j)=||i-j||2表示空間位置(i,j)之間的距離測度關系。對于人眼特征投影空間和注視點空間的條件分布分別是:
式(12)和(13)中d(cei,cej)和d(gi,gj)分別表示人眼特征投影空間和注視點空間的距離測度關系,c表示投影變換矩陣,ei表示第i個人眼特征,gi表示第i個注視點位置信息。
對于人眼投影空間pt(j|i)以及注視點空間pg(j|i)結構,通過最小化kl散度kl(pg(j|i)|pt(j|i))函數(shù)實現(xiàn)對轉換矩陣c進行求解:
其中
得到矩陣a后,通過a=ctc求解,得到轉換矩陣c,從而實現(xiàn)對人眼圖像特征的降維;
步驟4:注視點位置估計:首先通過標定過程得到訓練樣本集包含人眼特征集以及對應的注視點位置信息集合,在測試過程中通過訓練樣本集中人眼特征集合對測試人眼特征進行重構,得到測試人眼特征與訓練集中人眼特征集合之間的權重關系,最后利用權重共享關系利用訓練樣本集中的注視點位置信息集合對測試者注視點位置進行計算;具體方法為:首先進行標定過程,在標定過程中頭部姿態(tài)靜止,測試者眼睛注視屏幕上的標定點,人眼的注視隨著標定點位置變化而變化,在標定過程中保存測試者場景圖像和標定點坐標信息x={x1,x2,...,xn},通過步驟1、2、3對場景圖像進行處理后,得到人眼特征向量的訓練集e={e1,e2,...,en}∈rm×n,m表示人眼特征的維數(shù),n表示樣本個數(shù)。根據(jù)人眼特征向量的訓練集e={e1,e2,...,en}∈rm×n與標定點位置信息x={x1,x2,...,xn},假設測試人眼特征e′,通過相關熵利用樣本局部相似性對測試人眼特征e′進行重構:
式中e為訓練人眼特征向量集,e′表示測試人眼特征,d∈rn×1表示測試人眼特征e′與第i個訓練人眼特征向量之間的距離,
在得到測試人眼特征e′與訓練樣本e={e1,e2,...,en}∈rm×n之間的權重關系w后,最后利用人眼特征空間與注視點空間的權重共享關系,對于測試樣本的注視點位置x′,可由訓練樣本的注視點位置點集x={x1,x2,...,xn}計算可得:
m表示人眼特征的維數(shù),n表示樣本個數(shù)。
本發(fā)明提供的技術方案的有益效果:
1、由于基于人眼圖像信息的處理方式,本發(fā)明對硬件要求低,只使用到了單個攝像頭,而無任何其他輔助設備;
2、由于增強了基于相關熵算法的局部性,本發(fā)明通過簡單的標定環(huán)節(jié),可以實現(xiàn)高精度的目的;
3、由于對人眼圖像進行亞像素級別的提取,本發(fā)明可以在低分辨率情況下對人眼進行亞像素級別的人眼圖像,保證人眼圖像提取的準確性;
4、由于使用kl散度對人眼特征空間進行投影變換,本發(fā)明保證了人眼特征空間與注視點空間結構的相似性,對注視點估計精度有很大提高。
5、由于基于相關熵算法進行估計,本發(fā)明在復雜的環(huán)境干擾下抗干擾能力強。
附圖說明
圖1是注視點估計整個流程圖。
圖2(a)表示人眼圖像初始預選區(qū)域。
圖2(b)表示在尋找最優(yōu)人眼圖像過程。
圖2(c)表示最優(yōu)人眼圖像的選取。
圖2(d)表示選擇的最優(yōu)以及對齊后的人眼圖像。
圖3(a)表示人眼特征空間結構示意圖。
圖3(b)表示注視點空間結構示意圖。
圖3(c)表示人眼特征降維后的空間結構示意圖。
圖4是表示不同訓練樣本集時標定點分布情況示意圖。
具體實施方式
下面結合附圖對本發(fā)明做進一步詳細描述:
本發(fā)明的具體實施的流程圖如圖1所示,包含步驟如下:
步驟一、人臉圖像采集;
步驟二、人眼圖像亞像素提??;
步驟三、人眼圖像特征降維;
步驟四、注視點位置估計;
所述步驟一的具體實現(xiàn)步驟為:
采用基于adaboost算法對采集圖像進行人臉定位,然后對人臉圖像進行提取,為后面提取人眼圖像步驟。
步驟二的具體實現(xiàn)步驟:
在經(jīng)過步驟一提取人臉圖像后,首先初始化人眼區(qū)域的初始頂點坐標(x0,y0),假設通過對齊操作后的位置信息為(x,y),二者之間的變換函數(shù)如下:
在公式中transform(x,y)是對齊變換函數(shù),s為圖像縮放比例,θ是旋轉角度,tx,ty是在x、y方向上的偏移像素位移。
假設e={vec(e1)|...|vec(en)}是標準的裁剪的人眼圖像集(vec(en)表示人眼特征向量),作為訓練樣本,通過人眼區(qū)域圖像對齊操作使下面目標函數(shù)實現(xiàn)最小化實現(xiàn)對人眼圖像提?。?/p>
公式(2)中τ為變換矩陣,
對于在公式
根據(jù)泰勒公式:
f(x+δx,y+δy)=f(x,y)+[δx,δy]*jac(x,y)(4)
其中jac(x,y)表示函數(shù)f(x,y)的雅克比函數(shù)。
上式(3)等價表達式:
其中
對于目標函數(shù)(5),因為l1范數(shù)是np-hard問題,很難對目標函數(shù)進行求解,通過對該函數(shù)進行l(wèi)2范數(shù)等價變換如下:
通過利用稀疏編碼工具箱求取公式(6)可以得到τ變換矩陣,通過對初始位置預選人眼圖像區(qū)域進行τ變換矩陣的變換,可以得到的最優(yōu)的人眼區(qū)域圖像。實驗結果如圖2所示。
步驟三的具體實現(xiàn)步驟:
該過程主要是經(jīng)過步驟二提取人眼圖像后,進行hog特征提取,然后經(jīng)過該步驟對人眼hog特征進行降維。假設α,β,γ分別代表人眼特征空間,注視點空間和人眼特征投影空間,并且d(,)函數(shù)表示不同空間的距離測度關系,而人眼特征投影空間衡量準則與注視點空間準則相似,即:d(cei,cej)~d(gi,gj),其中c為人眼特征空間轉換矩陣。
使用歐式距離表示空間的距離測度關系,即:d(i,j)=||i-j||2。人眼特征空間、特征投影空間和注視點空間的三個空間的距離測度分別表示如下:
de=(ei-ej)t(ei-ej)(7)
dt=(cei-cej)t(cei-cej)(8)
dg=(gi-gj)t(gi-gj)(9)
對于公式(8)即特征投影空間的距離測度轉換成如下表達形式:
其中a是半正定矩陣(psd)。
對于不同的空間結構,特征降維的目的主要過程是通過人眼特征空間轉換,使轉換后的空間γ與注視點空間β更加的相似。為了更好學習度量測度,假設對于訓練樣本集,定義訓練樣本之間的條件分布如下:
式(11)中:d(i,j)=||i-j||2表示空間位置(i,j)之間的距離測度關系。
對于人眼特征投影空間和注視點空間的條件分布分別是:
式(12)和(13)中d(cei,cej)和d(gi,gj)分別表示人眼特征投影空間和注視點空間的距離測度關系,c表示投影變換矩陣,ei表示第i個人眼特征,gi表示第i個注視點位置信息。
在非常溫和的條件下,如果樣本集符合這種分布,那么該樣本集具有很好的相似性結構。目的是通過尋找半正定矩陣a使pt(j|i)盡可能與pg(j|i)更加的接近。為了尋找這樣一個半正定矩陣,我們通過最小化kl散度kl(pg(j|i)||pt(j|i))函數(shù):
其中
由于目標函數(shù)(14)為凸函數(shù),存在最小值,求解過程使用交互迭代法,主要通過對主函數(shù)進行梯度下降法和投影到psd錐。目標函數(shù)(14)的梯度函數(shù)表達式如下:
對于第t次迭代過程,通過步長
為了確保矩陣a為半正定矩陣,主要通過對矩陣a投影到psd錐。操作過程如下:
首先對矩陣a進行特征值求解(evd)操作如下:
其中λk為矩陣a的特征值,uk為λk相應的特征向量。通過對負特征值的消除操作:
從而利用交互迭代法對上述過程進行梯度操作和投影操作直到矩陣a收斂為止。實驗結果如圖3所示。
通過a=ctc求解,得到投影矩陣c實現(xiàn)對人眼特征的降維。
步驟四的具體實現(xiàn)步驟:
該過程主要是首先通過標定過程得到訓練樣本集(包含人眼特征集以及對應的注視點位置信息集合),在測試過程中通過訓練樣本集中人眼特征集合對測試人眼特征進行重構,得到測試人眼特征與訓練集中人眼特征集合之間的權重關系,最后利用權重共享關系利用訓練樣本集中的注視點位置信息集合對測試者注視點位置進行計算。
1、標定過程
分別設計不同的標定模式驗證標定點個數(shù)對注視點估計的影響,標定點個數(shù)分別為9、16、25和36個,如圖4所示。在標定過程中頭部姿態(tài)靜止,測試者眼睛注視屏幕上的標定點,人眼的注視隨著標定點位置變化而變化,在標定過程中保存測試者場景圖像和標定點坐標信息x={x1,x2,...,xn},根據(jù)步驟1、2、3對場景圖像處理得到人眼特征信息e={e1,e2,...,en}∈rm×n,保存測試者處理后的人眼特征集e={e1,e2,...,en}∈rm×n,以及相對應的注視點位置坐標x={x1,x2,...,xn}(用于后面的注視點估計),m表示人眼特征的維數(shù),n表示樣本個數(shù)。
2、測試人眼特征重構
對于任意測試人眼特征e′,在本文中采用局部限制相關熵算法對人眼特征e′進行重構,主要是利用樣本的局部相似性對測試人眼特征e′進行重構,公式如下:
式中e為訓練人眼特征向量集,e′表示測試人眼特征,d∈rn×1表示測試人眼特征e′與第i個訓練人眼特征向量之間的距離,
根據(jù)共軛凸函數(shù)理論,存在以下命題:
命題1:根據(jù)函數(shù)
將公式(20)帶入到公式(19)中,可以的增強函數(shù)如下:
其中p=(p1,p2,...,pn)是輔助變量。
為了求解公式(21)可以通過使用交互最大化方法進行求解:
公式(23)可以寫成如下形式:
其中
方程式(24)為l2正則化范數(shù),對函數(shù)(24)進行求導很容易得到解析解,函數(shù)的導數(shù)如下:
上述結果可以寫成:
3、注視點位置估計
在得到測試人眼特征e′與訓練樣本e={e1,e2,...,en}∈rm×n之間的權重關系w后,最后利用權重共享關系,對于測試過程中的注視點位置x′,可由訓練樣本的注視點位置點集x={x1,x2,...,xn}計算可得: