至少一個示例實(shí)施例涉及眼睛跟蹤技術(shù)。
背景技術(shù):
存在與使用雙眼視差原理提供三維(3D)效果的裸眼3D顯示器關(guān)聯(lián)的用于跟蹤用戶的位置的技術(shù)。可基于用戶的位置控制3D顯示器。精確地跟蹤用戶的位置是在不劣化圖像質(zhì)量的情況下向裸眼3D顯示器輸出3D圖像的一部分。
技術(shù)實(shí)現(xiàn)要素:
至少一些示例實(shí)施例涉及眼睛跟蹤方法。
在至少一些示例實(shí)施例中,所述方法可包括:獲取圖像中與用戶的臉部區(qū)域的至少一部分相應(yīng)的特征點(diǎn);基于特征點(diǎn)確定用戶的第一眼睛的眼睛區(qū)域的內(nèi)部區(qū)域;基于內(nèi)部區(qū)域的至少一個像素的像素值確定用戶的瞳孔區(qū)域;基于瞳孔區(qū)域的每個像素的位置值確定用戶的眼睛位置。
確定內(nèi)部區(qū)域的步驟包括:基于眼睛區(qū)域的像素的位置和眼睛區(qū)域的特征點(diǎn)的位置確定眼睛區(qū)域的內(nèi)部區(qū)域,其中,內(nèi)部眼睛區(qū)域在由特征點(diǎn)限定的邊界內(nèi)。
確定瞳孔區(qū)域的步驟可包括:基于內(nèi)部區(qū)域的像素的第一亮度平均值和圖像的眼睛中心特征點(diǎn)的鄰近像素的第二亮度平均值確定瞳孔區(qū)域的像素,眼睛中心特征點(diǎn)是特征點(diǎn)中的與用戶的第一眼睛的中心相應(yīng)的特征點(diǎn)。
確定瞳孔區(qū)域的像素的步驟可包括:確定內(nèi)部區(qū)域的選擇的像素的亮度值是否小于第一閾值并小于第二閾值亮度平均值,第一閾值基于第一亮度值,第二閾值基于第二亮度平均值。
確定內(nèi)部區(qū)域的步驟可包括:基于眼睛區(qū)域的選擇的像素和特征點(diǎn)中的第一眼睛輪廓特征點(diǎn)計(jì)算第一向量;基于特征點(diǎn)中的第一眼睛輪廓特征點(diǎn)和第二眼睛輪廓特征點(diǎn)計(jì)算第二向量,第二眼睛輪廓特征點(diǎn)鄰近第一眼睛輪廓 特征點(diǎn),基于第一向量和第二向量確定選擇的像素是否在內(nèi)部區(qū)域中,第一眼睛輪廓特征點(diǎn)和第二眼睛輪廓特征點(diǎn)與眼睛區(qū)域的眼睛輪廓相應(yīng)。
確定選擇的像素是否在內(nèi)部區(qū)域中的步驟可包括:當(dāng)?shù)谝谎劬喞卣鼽c(diǎn)和第二眼睛輪廓特征點(diǎn)中的每個眼睛輪廓特征點(diǎn)的向量計(jì)算結(jié)果由同一符號表示時,確定選擇的像素在內(nèi)部區(qū)域中。
所述方法還可包括:基于確定的用戶的眼睛位置控制裸眼顯示器。
至少其它示例實(shí)施例涉及眼睛跟蹤設(shè)備。
在至少一些示例實(shí)施例中,所述眼睛跟蹤設(shè)備可包括:存儲器,被配置為存儲計(jì)算機(jī)可讀指令;處理器,被配置為執(zhí)行所述計(jì)算機(jī)可讀指令,以使處理器被配置為:獲取圖像中與用戶的臉部區(qū)域的至少一部分相應(yīng)的特征點(diǎn);基于特征點(diǎn)確定用戶的第一眼睛的眼睛區(qū)域的內(nèi)部區(qū)域;基于內(nèi)部區(qū)域的至少一個像素的像素值確定用戶的瞳孔區(qū)域;基于瞳孔區(qū)域的每個像素的位置值確定用戶的眼睛位置。
存儲器,被配置為存儲計(jì)算機(jī)可讀指令;處理器,被配置為執(zhí)行所述計(jì)算機(jī)可讀指令,以使處理器被配置為:基于眼睛區(qū)域的特征點(diǎn)確定圖像中用戶的眼睛區(qū)域,基于眼睛區(qū)域的像素的位置和眼睛區(qū)域的特征點(diǎn)的位置確定眼睛區(qū)域的內(nèi)部區(qū)域,基于內(nèi)部區(qū)域的每個像素的像素值確定用戶的瞳孔區(qū)域,基于瞳孔區(qū)域的每個像素的位置值確定用戶的眼睛位置。
處理器可被配置為響應(yīng)于基于特征點(diǎn)與圖像的眼睛區(qū)域的像素之間的位置關(guān)系的向量計(jì)算結(jié)果,確定內(nèi)部區(qū)域的像素。
處理器可被配置為基于內(nèi)部區(qū)域的像素的亮度值、圖像的內(nèi)部眼睛區(qū)域的像素的第一亮度平均值和特征點(diǎn)中的眼睛中心特征點(diǎn)的鄰近像素的第二亮度平均值確定瞳孔區(qū)域的像素,眼睛中心特征點(diǎn)與用戶的眼睛的中心相應(yīng)。
至少其它示例實(shí)施例涉及眼睛跟蹤設(shè)備。
在至少一些示例實(shí)施例中,所述眼睛跟蹤設(shè)備可包括:存儲器,被配置為存儲計(jì)算機(jī)可讀指令;處理器,被配置為執(zhí)行所述計(jì)算機(jī)可讀指令,以使處理器被配置為:基于特征點(diǎn)確定圖像中用戶的眼睛區(qū)域;檢測眼睛區(qū)域的垂直方向的邊緣組分,并基于檢測的邊緣組分檢測與瞳孔區(qū)域關(guān)聯(lián)的橢圓組分;基于橢圓組分確定橢圓的中心作為用戶的眼睛位置。
至少一個示例實(shí)施例公開一種眼睛跟蹤方法。所述方法包括:基于眼睛區(qū)域的特征點(diǎn)確定圖像中用戶的第一眼睛的眼睛區(qū)域;基于眼睛區(qū)域的像素 的位置與眼睛區(qū)域的特征點(diǎn)的位置確定眼睛區(qū)域的內(nèi)部區(qū)域,基于內(nèi)部區(qū)域的每個像素的像素值確定用戶的瞳孔區(qū)域,基于瞳孔區(qū)域的每個像素的位置值確定用戶的眼睛位置。
示例實(shí)施例的另外的方面將在下面描述中部分進(jìn)行闡述,部分從該描述將是清楚的,或者可以通過本公開的實(shí)踐獲知。
附圖說明
從以下結(jié)合附圖對示例實(shí)施例進(jìn)行的描述,這些和/或其它方面將變得明顯和更容易理解,其中:
圖1示出根據(jù)至少一個示例實(shí)施例的眼睛跟蹤設(shè)備的示例;
圖2至圖8示出根據(jù)至少一個示例實(shí)施例的眼睛跟蹤設(shè)備跟蹤圖像中用戶的眼睛位置的示例;
圖9至圖14示出根據(jù)至少一個示例實(shí)施例的眼睛跟蹤設(shè)備跟蹤圖像中用戶的眼睛位置的其它示例;
圖15A至圖15B示出根據(jù)至少一個示例實(shí)施例的顯示裝置的示例;
圖16是示出根據(jù)至少一個示例實(shí)施例的眼睛跟蹤方法的示例的流程圖。
具體實(shí)施方式
以下,將參照附圖詳細(xì)描述一些示例實(shí)施例。關(guān)于附圖中為元件分配的附圖標(biāo)記,應(yīng)該注意的是:在任何可能的情況下,即使相同的元件在不同的附圖中被示出,也將通過相同的附圖標(biāo)記來指示相同的元件。此外,在實(shí)施例的描述中,當(dāng)認(rèn)為公知的現(xiàn)有結(jié)構(gòu)或功能的詳細(xì)描述將模糊本公開的說明時,可省略公知的現(xiàn)有結(jié)構(gòu)或功能的詳細(xì)描述。
然而,應(yīng)理解,不意在將本公開限制到所公開的具體示例實(shí)施例。相反地,示例實(shí)施例將涵蓋落入示例實(shí)施例的范圍內(nèi)的所有修改、等同物和替代。貫穿附圖的描述,相同的標(biāo)號表示相同的元件。
此外,這里可使用諸如第一、第二、A、B、(a)、(b)等的術(shù)語來描述組件。這些術(shù)語中的每個術(shù)語不用于限定相應(yīng)組件的本質(zhì)、順序或序列,而僅用于將相應(yīng)組件與其它組件進(jìn)行區(qū)分。應(yīng)該注意,如果在說明書描述了一個組件“連接”、“結(jié)合”或“接合”至另一組件,則盡管第一組件可直接地連接、結(jié)合或接合至第二組件,但第三組件可“連接”、“結(jié)合”或“接合” 在第一組件和第二組件之間。
在此使用的術(shù)語僅為了描述具體示例實(shí)施例的目的,不意在限制。如在此使用的,除非上下文另外明確地指示,否則單數(shù)形式也意在包括復(fù)數(shù)形式。還將理解,當(dāng)在此使用時,術(shù)語“包括”和/或“包含”指定存在所敘述的特征、整體、步驟、操作、元件和/或組件,但是不排除存在或添加一個或多個其它特征、整體、步驟、操作、元件、組件和/或它們的組。
還應(yīng)注意,在一些選擇性的實(shí)施例中,示出的功能/動作可不按附圖中示出的順序發(fā)生。例如,連續(xù)示出的兩個圖上可基本上同時執(zhí)行或有時可以以相反的順序執(zhí)行,這取決于所包含的功能/動作。
示例實(shí)施例可被應(yīng)用于在各種應(yīng)用(例如,裸眼三維(3D)顯示器、眼鏡型可穿戴裝置、虛擬現(xiàn)實(shí)(VR)、視頻游戲、個人計(jì)算機(jī)(PC)、平板計(jì)算機(jī)、移動裝置、智能家居設(shè)備和智能汽車)中跟蹤用戶的眼睛視點(diǎn)。例如,示例實(shí)施例可被應(yīng)用于在裸眼3D顯示器中通過跟蹤用戶的眼睛位置來基于用戶的眼睛位置顯示3D圖像。
現(xiàn)在將參照附圖更全面地描述各種示例實(shí)施例,在附圖中示出一些示例實(shí)施例。在附圖中,為了清楚起見,夸大層和區(qū)域的厚度。
圖1示出根據(jù)至少一個示例實(shí)施例的眼睛跟蹤設(shè)備的示例。
參照圖1,眼睛跟蹤設(shè)備100從拍攝了用戶的眼睛區(qū)域的圖像確定用戶的眼睛位置。該圖像可通過圖像獲取設(shè)備(未示出)(例如,相機(jī))來獲取,獲取的圖像可被發(fā)送到眼睛跟蹤設(shè)備100。眼睛跟蹤設(shè)備100可針對每個接收的圖像幀確定用戶的眼睛位置,并輸出關(guān)于確定的眼睛位置的信息。輸出的信息可被用于基于關(guān)于用戶的眼睛位置的信息的各種應(yīng)用。
眼睛跟蹤設(shè)備100包括:特征點(diǎn)檢測器110、眼睛區(qū)域確定器120、內(nèi)部眼睛區(qū)域確定器130、瞳孔區(qū)域確定器140和眼睛位置確定器150??捎蓤?zhí)行存儲在存儲器中的計(jì)算機(jī)可讀指令的至少一個處理器或由現(xiàn)場可編程門陣列(FPGA)來執(zhí)行特征點(diǎn)檢測器110、眼睛區(qū)域確定器120、內(nèi)部眼睛區(qū)域確定器130、瞳孔區(qū)域確定器140和眼睛位置確定器150的操作。
特征點(diǎn)檢測器110從圖像檢測眼睛的特征點(diǎn)。特征點(diǎn)檢測器110可檢測圖像中用戶的臉部區(qū)域或者眼睛和鼻子區(qū)域,并在檢測的臉部區(qū)域或者眼睛和鼻子區(qū)域中檢測眼睛中心特征點(diǎn)和至少一個眼睛輪廓特征點(diǎn)。眼睛中心特征點(diǎn)指在眼睛區(qū)域的中心附近檢測的特征點(diǎn),眼睛輪廓特征點(diǎn)指在眼睛的輪 廓上檢測的特征點(diǎn)。
特征點(diǎn)檢測器110可提取圖像的局部特征(例如,局部二值模式(LBP)、尺寸不變特征轉(zhuǎn)換(SIFT)、方向梯度直方圖(HOG)、修正統(tǒng)計(jì)變換(MCT)和伽柏系數(shù)(Gabor jet)),并通過將檢測的特征點(diǎn)輸入到預(yù)先訓(xùn)練的眼睛和鼻子區(qū)域識別器(未示出)來從圖像檢測眼睛和鼻子區(qū)域。在一個示例中,特征點(diǎn)檢測器110可使用主動輪廓模型(ACM)、主動形狀模型(ASM)、主動外觀模型(AAM)或監(jiān)督下降法(SDM)來在眼睛和鼻子區(qū)域中檢測眼睛輪廓特征點(diǎn),并確定檢測的眼睛輪廓特征點(diǎn)之間的中心點(diǎn)作為眼睛中心特征點(diǎn)。
眼睛區(qū)域確定器120基于由特征點(diǎn)檢測器110檢測的特征點(diǎn)確定圖像中用戶的眼睛區(qū)域。眼睛區(qū)域確定器120可通過計(jì)算眼睛中心特征點(diǎn)與每個眼睛輪廓特征點(diǎn)之間的距離來確定眼睛中心特征點(diǎn)與眼睛輪廓特征點(diǎn)之間的距離中的最大距離,并基于眼睛中心特征點(diǎn)和最大距離確定眼睛區(qū)域。例如,眼睛區(qū)域確定器120可基于眼睛中心特征點(diǎn)確定位于最大距離內(nèi)的區(qū)域作為眼睛區(qū)域,或基于眼睛中心特征點(diǎn)確定水平、垂直地位于最大距離內(nèi)的區(qū)域作為眼睛區(qū)域。
內(nèi)部眼睛區(qū)域確定器130確定眼睛區(qū)域中的內(nèi)部眼睛區(qū)域。內(nèi)部眼睛區(qū)域指與用戶的真實(shí)眼睛相應(yīng)的區(qū)域。內(nèi)部眼睛區(qū)域確定器130可響應(yīng)于基于眼睛輪廓特征點(diǎn)與眼睛區(qū)域的像素之間的位置關(guān)系的向量計(jì)算結(jié)果確定內(nèi)部眼睛區(qū)域。例如,內(nèi)部眼睛區(qū)域確定器130可基于眼睛區(qū)域的當(dāng)前像素的位置和眼睛輪廓特征點(diǎn)的位置計(jì)算第一向量,基于眼睛輪廓特征點(diǎn)的位置和鄰近眼睛輪廓特征點(diǎn)的位置計(jì)算第二向量。位于所述眼睛輪廓特征點(diǎn)的順時針方向的另一眼睛輪廓特征點(diǎn)可被確定為鄰近眼睛輪廓特征點(diǎn)。內(nèi)部眼睛區(qū)域確定器130可基于第一向量和第二向量執(zhí)行向量的外積計(jì)算。
內(nèi)部眼睛區(qū)域確定器130還可針對其它眼睛輪廓特征點(diǎn)計(jì)算第一向量和第二向量并執(zhí)行外積計(jì)算。當(dāng)針對當(dāng)前像素和每個眼睛輪廓特征點(diǎn)的外積計(jì)算結(jié)果由同一符號表示時,內(nèi)部眼睛區(qū)域確定器130可確定當(dāng)前像素包括在內(nèi)部眼睛區(qū)域中。當(dāng)外積計(jì)算結(jié)果由不同的符號表示時,內(nèi)部眼睛區(qū)域確定器130可確定當(dāng)前像素包括在外部眼睛區(qū)域中而非內(nèi)部眼睛區(qū)域中。
瞳孔區(qū)域確定器140基于內(nèi)部眼睛區(qū)域的像素的像素值確定瞳孔區(qū)域。瞳孔區(qū)域確定器140可基于內(nèi)部眼睛區(qū)域的像素的第一亮度平均值和眼睛中 心特征點(diǎn)的鄰近像素的第二亮度平均值來確定瞳孔區(qū)域的像素。例如,當(dāng)內(nèi)部眼睛區(qū)域的當(dāng)前像素的亮度值小于基于第一亮度平均值的第一閾值和基于第二亮度平均值的第二閾值時,瞳孔區(qū)域確定器140確定當(dāng)前像素包括在瞳孔區(qū)域中。在一個示例中,第一閾值可等于第一亮度平均值,第二閾值可具有大于或等于第二亮度平均值的值。
眼睛位置確定器150基于瞳孔區(qū)域的每個像素的位置值(例如,2D坐標(biāo))確定用戶的眼睛位置。例如,眼睛位置確定器150確定瞳孔區(qū)域的像素的位置值的平均值作為用戶的眼睛位置。
在另一示例中,特征點(diǎn)檢測器110針對圖像中的眼睛區(qū)域不完全檢測特征點(diǎn)。以下,將描述當(dāng)特征點(diǎn)檢測器110從圖像檢測較少數(shù)量的眼睛輪廓特征點(diǎn)時,眼睛跟蹤設(shè)備100從圖像確定用戶的眼睛位置的處理。
眼睛區(qū)域確定器120基于在圖像中檢測的眼睛輪廓特征點(diǎn)確定圖像中用戶的眼睛區(qū)域。例如,當(dāng)檢測到位于眼睛輪廓中的眼睛輪廓特征點(diǎn)時,眼睛區(qū)域確定器120可計(jì)算眼睛輪廓特征點(diǎn)之間的中心,并基于確定的中心計(jì)算眼睛輪廓特征點(diǎn)之間水平方向的距離。眼睛區(qū)域確定器120可通過將水平方向的距離與預(yù)定值和/或選擇的值相乘來確定垂直方向的距離,并根據(jù)眼睛輪廓特征點(diǎn)之間的中心基于水平方向的距離和垂直方向的距離確定區(qū)域作為眼睛區(qū)域。瞳孔區(qū)域確定器140可檢測確定的眼睛區(qū)域中垂直方向的邊緣組分,并基于檢測的邊緣組分確定與瞳孔區(qū)域關(guān)聯(lián)的橢圓組分。這里,橢圓組分的橢圓包括圓。眼睛位置確定器150可基于檢測的橢圓組分估計(jì)與瞳孔區(qū)域重疊的虛擬橢圓,并確定橢圓的重心作為用戶的眼睛位置。
眼睛位置確定器150可將基于上述處理確定的二維(2D)坐標(biāo)值的眼睛位置信息轉(zhuǎn)換為3D坐標(biāo)值。例如,眼睛位置確定器150可基于關(guān)于兩只眼睛之間的距離的距離信息和關(guān)于用戶的臉部的方位信息將眼睛位置信息轉(zhuǎn)換為3D坐標(biāo)值。在此示例中,標(biāo)準(zhǔn)值(例如,65毫米(mm))可被用作關(guān)于兩只眼睛之間的距離的距離信息。然而,關(guān)于兩只眼睛之間的距離的距離信息不限于此。例如,眼睛位置確定器150可通過將在圖像中檢測的特征點(diǎn)與3D臉部模型進(jìn)行匹配來產(chǎn)生個性化3D臉部模型,并基于關(guān)于個性化臉部模型的方位信息估計(jì)關(guān)于用戶的臉部的方位信息。
以下,描述可基于上述處理準(zhǔn)確地檢測圖像中用戶的眼睛位置的眼睛跟蹤設(shè)備100。眼睛跟蹤設(shè)備100可通過跟蹤每個圖像幀的兩個瞳孔區(qū)域的中 心來減小圖像幀之間產(chǎn)生的眼睛位置的振動。
圖2至圖8示出根據(jù)至少一個示例實(shí)施例的眼睛跟蹤設(shè)備跟蹤圖像中用戶的眼睛位置的示例。
參照圖2,眼睛跟蹤設(shè)備可檢測圖像中被估計(jì)為位于眼睛中心的眼睛中心特征點(diǎn)210以及位于眼睛輪廓中的眼睛輪廓特征點(diǎn)222、224、226、228、230和232。眼睛跟蹤設(shè)備可計(jì)算眼睛中心特征點(diǎn)210與眼睛輪廓特征點(diǎn)222、224、226、228、230和232中的每個眼睛輪廓特征點(diǎn)之間的距離,并基于每個計(jì)算的距離的值確定最大距離值dmax(例如,計(jì)算的距離中的最大距離)。
參照圖3,眼睛跟蹤設(shè)備可基于圖2中確定的最大距離值dmax確定眼睛區(qū)域310。眼睛跟蹤設(shè)備可基于眼睛中心特征點(diǎn)210確定水平、垂直位于最大距離值dmax內(nèi)的區(qū)域。眼睛區(qū)域310可以是圖4中所示的矩形形狀,或者眼睛區(qū)域310可以是基于眼睛中心特征點(diǎn)210的半徑與最大距離值dmax相應(yīng)的圓形,然而,示例實(shí)施例的范圍不限于此。
參照圖4,眼睛跟蹤設(shè)備可確定眼睛區(qū)域310中的內(nèi)部眼睛區(qū)域。眼睛跟蹤設(shè)備可基于眼睛區(qū)域310的像素410與眼睛輪廓特征點(diǎn)222、224、226、228、230和232之間的位置關(guān)系,確定像素410是否包括在內(nèi)部眼睛區(qū)域中。眼睛跟蹤設(shè)備可在基于眼睛輪廓特征點(diǎn)224和像素410的第一向量V1與基于眼睛輪廓特征點(diǎn)224和順時針方向鄰近眼睛輪廓特征點(diǎn)224的眼睛輪廓特征點(diǎn)226的第二向量V2之間執(zhí)行外積計(jì)算。以同樣的方式,眼睛跟蹤設(shè)備可在基于眼睛輪廓特征點(diǎn)226和像素410的第一向量V3與基于眼睛輪廓特征點(diǎn)226和順時針方向鄰近眼睛輪廓特征點(diǎn)226的眼睛輪廓特征點(diǎn)228的第二向量V4之間執(zhí)行外積計(jì)算。眼睛跟蹤設(shè)備可基于相同的處理針對其它眼睛輪廓特征點(diǎn)222、228、230和232執(zhí)行外積計(jì)算,并確定是否所有的外積計(jì)算結(jié)果由同一符號表示。在像素410的情況下,外積計(jì)算結(jié)果由同一符號表示,因此確定像素410包括在內(nèi)部眼睛區(qū)域中。
如圖5所示,當(dāng)針對存在于眼睛區(qū)域310中但實(shí)際上位于外部眼睛區(qū)域中的像素510執(zhí)行與圖4的處理相同的處理時,像素510與眼睛輪廓特征點(diǎn)222、224、226、228、230和232中的每個眼睛輪廓特征點(diǎn)之間的外積計(jì)算結(jié)果不由同一符號表示。例如,當(dāng)基于眼睛輪廓特征點(diǎn)228和像素510的第一向量V5與基于眼睛輪廓特征點(diǎn)228和順時針方向鄰近眼睛輪廓特征點(diǎn)228的眼睛輪廓特征點(diǎn)230的第二向量V6之間的外積計(jì)算結(jié)果由符號“+”表示 時,基于眼睛輪廓特征點(diǎn)230和像素510的第一向量V7與基于眼睛輪廓特征點(diǎn)230和順時針方向鄰近眼睛輪廓特征點(diǎn)230的眼睛輪廓特征點(diǎn)232的第二向量V8之間的外積計(jì)算結(jié)果由符號“-”表示。由于像素510與眼睛輪廓特征點(diǎn)222、224、226、228、230和232中的每個眼睛輪廓特征點(diǎn)之間的外積計(jì)算結(jié)果的符號不相同,因此眼睛跟蹤設(shè)備可確定像素510未包括在內(nèi)部眼睛區(qū)域中。
眼睛跟蹤設(shè)備可通過針對包括在眼睛區(qū)域310中的每個像素執(zhí)行圖4和圖5的處理,來確定眼睛區(qū)域310中內(nèi)部眼睛區(qū)域的像素。圖6示出基于圖4和圖5的處理從眼睛區(qū)域310檢測的內(nèi)部眼睛區(qū)域610。
參照圖7,眼睛跟蹤設(shè)備可基于關(guān)于內(nèi)部眼睛區(qū)域610中的像素的像素值信息確定內(nèi)部眼睛區(qū)域610中的瞳孔區(qū)域。眼睛跟蹤設(shè)備可計(jì)算與內(nèi)部眼睛區(qū)域610的像素的亮度值的平均值相應(yīng)的第一亮度平均值,并計(jì)算與內(nèi)部眼睛區(qū)域610的像素中眼睛中心特征點(diǎn)210的鄰近區(qū)域710的像素的亮度值的平均值相應(yīng)的第二亮度平均值。
例如,當(dāng)包括在內(nèi)部眼睛區(qū)域610中的預(yù)定像素和/或選擇的像素滿足等式1時,眼睛跟蹤設(shè)備可確定預(yù)定像素和/或選擇的像素包括在瞳孔區(qū)域中。
[等式1]
像素的亮度值<第一亮度平均值,并且
像素的亮度值<第二亮度平均值+補(bǔ)償值
如等式1所示,補(bǔ)償值是用于調(diào)整等式1的條件的預(yù)定值和/或選擇的值,并且補(bǔ)償值具有大于或等于“0”的值。
在大部分情況下,由于瞳孔區(qū)域的亮度值小于瞳孔區(qū)域的鄰近區(qū)域的亮度值,因此針對內(nèi)部眼睛區(qū)域610的第一亮度平均值可被認(rèn)為是閾值。然而,由于瞳孔區(qū)域的大小小于內(nèi)部眼睛區(qū)域610中瞳孔區(qū)域的鄰近區(qū)域的大小,因此當(dāng)僅考慮第一亮度平均值時包括在瞳孔區(qū)域的鄰近區(qū)域中的像素可能被錯誤地確定為瞳孔區(qū)域。如等式1所示,眼睛跟蹤設(shè)備可通過除考慮第一亮度平均值之外還考慮針對眼睛中心特征點(diǎn)210的鄰近區(qū)域710的第二亮度平均值來更準(zhǔn)確地確定內(nèi)部眼睛區(qū)域610中的瞳孔區(qū)域。
眼睛跟蹤設(shè)備可針對包括在內(nèi)部眼睛區(qū)域610中的所有像素執(zhí)行上述處理,并存儲關(guān)于被確定為瞳孔區(qū)域的像素的信息,例如,位置值。
圖8示出基于參照圖7描述的跟蹤處理確定的瞳孔區(qū)域810。眼睛跟蹤 設(shè)備可確定包括在確定的瞳孔區(qū)域810中的像素的位置值的平均值作為用戶的眼睛位置820。
圖9至圖14示出根據(jù)至少一個示例實(shí)施例的眼睛跟蹤設(shè)備跟蹤圖像中用戶的眼睛位置的其它示例。
參照圖9,眼睛跟蹤設(shè)備可檢測圖像中的眼睛和鼻子區(qū)域910,并檢測眼睛的特征點(diǎn)922、924、926和928。在圖9至圖14中,特征點(diǎn)是假設(shè)在如圖9中所示的每只眼睛的輪廓中檢測的特征點(diǎn)。眼睛跟蹤設(shè)備可通過使用較少數(shù)量的特征點(diǎn)更快地檢測用戶的眼睛的位置。
參照圖10,眼睛跟蹤設(shè)備可基于在每只眼睛中檢測的兩個特征點(diǎn)之間的位置關(guān)系計(jì)算特征點(diǎn)之間的中心。眼睛跟蹤設(shè)備可計(jì)算特征點(diǎn)922與特征點(diǎn)924之間的中心1010,并計(jì)算特征點(diǎn)926與特征點(diǎn)928之間的中心1020。
參照圖11,眼睛跟蹤設(shè)備可基于檢測的中心1010和1020以及特征點(diǎn)922、924、926和928的位置確定眼睛區(qū)域1110和1120。例如,眼睛跟蹤設(shè)備可計(jì)算特征點(diǎn)922與特征點(diǎn)924之間的水平距離,并通過將計(jì)算的水平距離與預(yù)定比率和/或選擇的比率(例如,“1/3”)相乘來確定垂直距離。眼睛跟蹤設(shè)備可基于距中心1010的水平距離和垂直距離確定區(qū)域作為眼睛區(qū)域1110。針對中心1020以及特征點(diǎn)926和928,眼睛跟蹤設(shè)備可基于上述處理確定眼睛區(qū)域1120。
參照圖12,眼睛跟蹤設(shè)備可檢測確定的眼部區(qū)域中沿垂直方向的邊緣組分1212、1214、1216和1218。例如,眼睛跟蹤設(shè)備可基于索貝爾(Sobel)邊緣提取方案、普魯伊特(Prewitt)邊緣提取方案、羅伯茨(Robets)邊緣提取方案和坎尼(Canny)邊緣提取方案,來檢測邊緣組分1212、1214、1216和1218。
參照圖13,眼睛跟蹤設(shè)備可通過基于檢測的邊緣組分1212、1214、1216和1218調(diào)試橢圓,來檢測與眼睛區(qū)域中的瞳孔區(qū)域關(guān)聯(lián)的橢圓1310和1320。參照圖14,眼睛跟蹤設(shè)備可計(jì)算檢測的橢圓1310和1320中的每個橢圓的重心,并將計(jì)算的重心確定為用戶的眼睛位置1410和1420。
圖15A示出根據(jù)至少一個示例實(shí)施例的顯示裝置的示例。
參照圖15A,顯示裝置1510可以是,例如,用于在沒有3D眼鏡的情況下輸出3D圖像的裸眼3D顯示器。顯示裝置1510可跟蹤用戶的眼睛位置,并通過基于跟蹤的用戶的眼睛位置重建3D圖像來輸出3D圖像。顯示裝置 1510包括:相機(jī)1520、眼睛位置檢測器1520、圖像處理器1540和顯示器1550。
相機(jī)1520可通過拍攝位于顯示裝置1510前面的用戶來獲取呈現(xiàn)用戶的臉部區(qū)域的臉部圖像。
眼睛位置檢測器1530可檢測臉部圖像中用戶的眼睛位置。眼睛位置檢測器1530可檢測臉部圖像中的臉部區(qū)域或者眼睛和鼻子區(qū)域中的眼睛的特征點(diǎn),并基于檢測的特征點(diǎn)檢測用戶的眼睛位置。眼睛位置檢測器1530可根據(jù)檢測的特征點(diǎn)的數(shù)量基于不同的方法檢測眼睛的位置。例如,當(dāng)在臉部圖像中檢測到眼睛中心特征點(diǎn)和大量的眼睛輪廓特征點(diǎn)時,眼睛位置檢測器1530可從臉部圖像檢測用戶的眼睛位置。眼睛位置檢測器1530可基于圖1至圖14中描述的處理檢測眼睛的位置。在另一示例中,眼睛位置檢測器1530可通過在眼睛和鼻子區(qū)域中匹配的樣板來檢測眼睛位置,并確定樣板的中心值作為眼睛中心的位置。
眼睛位置檢測器1530可將基于上述處理確定的2D坐標(biāo)值的眼睛位置信息轉(zhuǎn)換為3D坐標(biāo)值。為了通過顯示裝置1510產(chǎn)生與3D空間中用戶的左眼和右眼的位置相應(yīng)的3D圖像,用戶的兩只眼睛的位置需要從2D坐標(biāo)值被轉(zhuǎn)換為3D坐標(biāo)值。眼睛位置檢測器1530可基于關(guān)于用戶的兩只眼睛之間的距離的距離信息和關(guān)于用戶的臉部的方位信息,將眼睛位置信息轉(zhuǎn)換為3D坐標(biāo)值。預(yù)定值和/或選擇的值(例如,65mm)可被用作關(guān)于兩只眼睛的距離信息,然而,距離信息不限于此??赏ㄟ^將從臉部圖像檢測的特征點(diǎn)與3D臉部模型進(jìn)行匹配并計(jì)算3D臉部模型旋轉(zhuǎn)的角度,來獲取關(guān)于用戶的臉部的方位信息。在另一示例中,眼睛位置檢測器1530可基于使用至少兩個相機(jī)(例如,相機(jī)1520)的三角測量方法來確定用戶的眼睛位置的3D坐標(biāo)值。
在一個示例中,眼睛位置檢測器1530可將眼睛位置信息轉(zhuǎn)換為3D坐標(biāo)值,通過估計(jì)眼睛位置校正眼睛位置信息,并將眼睛位置信息傳送到圖像處理器1540。在圖像處理器1540從眼睛位置檢測器1530接收到眼睛位置信息之后,可需要預(yù)定時間量和/或選擇的時間量來產(chǎn)生與用戶的眼睛位置相應(yīng)的3D圖像。當(dāng)用戶運(yùn)動時,由于檢測到用戶的眼睛位置的時間點(diǎn)與圖像處理器1540產(chǎn)生并輸出3D圖像的時間點(diǎn)之間的時間延遲,因此關(guān)于用戶的眼睛位置信息可需要校正。因此,眼睛位置檢測器1530可基于用戶的運(yùn)動信息估計(jì)用戶的眼睛位置路徑,圖像處理器1540可基于估計(jì)的眼睛位置路徑重建3D圖像。
圖像處理器1540可基于由眼睛位置檢測器1530確定的用戶的眼睛位置重建3D圖像,例如,立體圖像或3D圖形數(shù)據(jù)。圖像處理器1540可重建將通過顯示器1550輸出的3D圖像,從而3D圖像到達(dá)用戶的眼睛位置。
顯示器1550可顯示由圖像處理器1540處理的3D圖像。例如,顯示器1550可使用柱狀透鏡、視差屏障和定向背光來顯示3D圖像。
圖15B示出顯示裝置1510的硬件框圖。圖15B示出處理器1560,處理器1560被配置為將數(shù)據(jù)/指令發(fā)送到相機(jī)1520并從相機(jī)1520接收數(shù)據(jù)/指令以及將數(shù)據(jù)/指令發(fā)送到非暫時性計(jì)算機(jī)可讀介質(zhì)1570并從非暫時性計(jì)算機(jī)可讀介質(zhì)1570接收數(shù)據(jù)/指令。
非暫時性計(jì)算機(jī)可讀介質(zhì)1570存儲用于執(zhí)行圖1至圖14描述的功能的指令。更具體地講,處理器1560可通過執(zhí)行存儲在非暫時性計(jì)算機(jī)可讀介質(zhì)1570中的指令,來執(zhí)行眼睛跟蹤設(shè)備100、眼睛位置檢測器1530和圖像處理器1540的功能。因此,通過執(zhí)行由非暫時性計(jì)算機(jī)可讀介質(zhì)1570存儲的指令,處理器1560變?yōu)閳?zhí)行以上參照圖1至圖14描述的眼睛跟蹤和眼睛位置確定的專用計(jì)算裝置。處理器1560可包括一個或多個處理裝置,例如,中央處理器(CPU)、數(shù)字信號處理器(DSP)、專用集成電路、現(xiàn)場可編程門陣列(FPGA)計(jì)算機(jī)等。
處理器1560還可被配置為指示顯示器1550來顯示處理的3D圖像。
圖16是示出根據(jù)至少一個示例實(shí)施例的眼睛跟蹤方法的示例的流程圖。例如,可由眼睛跟蹤設(shè)備100執(zhí)行眼睛跟蹤方法。
參照圖16,在操作1610,眼睛跟蹤設(shè)備從圖像檢測特征點(diǎn)。例如,眼睛跟蹤設(shè)備可檢測拍攝了用戶的臉部的圖像中的眼睛和鼻子區(qū)域,并檢測眼睛和鼻子區(qū)域中的眼睛中心特征點(diǎn)以及至少一個眼睛輪廓特征點(diǎn)。
在操作1620,眼睛跟蹤設(shè)備基于檢測的特征點(diǎn)確定圖像中的眼睛區(qū)域。例如,眼睛跟蹤設(shè)備可通過計(jì)算眼睛中心特征點(diǎn)與每個眼睛輪廓特征點(diǎn)之間的距離來確定眼睛中心特征點(diǎn)與每個眼睛輪廓特征點(diǎn)之間的距離中的最大距離,并基于眼睛中心特征點(diǎn)與最大距離確定眼睛區(qū)域。
在操作1630,眼睛跟蹤設(shè)備基于眼睛區(qū)域的像素的位置和特征點(diǎn)的位置確定內(nèi)部眼睛區(qū)域。眼睛跟蹤設(shè)備可基于眼睛區(qū)域的當(dāng)前(選擇的)像素的位置和眼睛輪廓特征點(diǎn)的位置計(jì)算第一向量,并基于眼睛輪廓特征點(diǎn)的位置和鄰近眼睛輪廓特征點(diǎn)的位置計(jì)算第二向量。眼睛跟蹤設(shè)備可基于第一向量 和第二向量執(zhí)行向量的外積計(jì)算。眼睛跟蹤設(shè)備可同樣地計(jì)算針對其它眼睛輪廓特征點(diǎn)的第一向量和第二向量。當(dāng)針對眼睛輪廓特征點(diǎn)的外積計(jì)算結(jié)果由同一符號表示時,眼睛跟蹤設(shè)備可確定當(dāng)前像素包括在內(nèi)部眼睛區(qū)域中,當(dāng)外積計(jì)算結(jié)果由不同的符號表示時,眼睛跟蹤設(shè)備確定當(dāng)前像素未包括在內(nèi)部眼睛區(qū)域中。眼睛跟蹤設(shè)備可存儲關(guān)于被確定為包括在內(nèi)部區(qū)域中的像素的信息,例如,亮度和位置。
在操作1640,眼睛跟蹤設(shè)備基于內(nèi)部眼睛區(qū)域的每個像素的像素值確定瞳孔區(qū)域。當(dāng)內(nèi)部眼睛區(qū)域的當(dāng)前像素的亮度值小于基于第一亮度平均值的第一閾值和基于第二亮度平均值的第二閾值時,眼睛跟蹤設(shè)備可確定當(dāng)前像素包括在瞳孔區(qū)域中。在這樣的示例中,第一亮度平均值指內(nèi)部眼睛區(qū)域的像素的亮度值的平均值,第二亮度平均值指眼睛中心特征點(diǎn)的鄰近像素的亮度值的平均值。眼睛跟蹤設(shè)備可存儲關(guān)于被確定為包括在瞳孔區(qū)域中的像素的信息,例如,位置。
在操作1650,眼睛跟蹤設(shè)備基于瞳孔區(qū)域的每個像素的位置值確定用戶的眼睛位置。眼睛跟蹤設(shè)備確定瞳孔區(qū)域的像素的位置值的平均值作為用戶的眼睛位置。
在操作1660,處理器1560基于確定的用戶的眼睛位置控制顯示器。
可使用硬件組件和執(zhí)行軟件組件的硬件組件來實(shí)施在此描述的單元和/或模塊(例如,特征點(diǎn)確定器110、眼睛區(qū)域確定器120、內(nèi)部眼睛區(qū)域確定器130、瞳孔區(qū)域確定器140、眼睛位置確定器150、眼睛位置檢測器1530和圖像處理器1540)。例如,硬件組件可包括麥克風(fēng)、放大器、帶通濾波器、音頻數(shù)字轉(zhuǎn)換器和處理裝置。處理裝置可使用一個或多個硬件裝置被實(shí)施,其中,所述一個或多個硬件裝置被配置為通過執(zhí)行算術(shù)、邏輯和輸入/輸出操作來執(zhí)行和/或運(yùn)行程序代碼。處理裝置可包括:處理器、控制器和算術(shù)邏輯單元、數(shù)字信號處理器、微計(jì)算機(jī)、現(xiàn)場可編程陣列、可編程邏輯單元、微處理器或能夠以限定的方式響應(yīng)和執(zhí)行指令的任何其它裝置。處理裝置可運(yùn)行操作系統(tǒng)(OS)以及一個或多個在OS上運(yùn)行的軟件應(yīng)用。處理裝置還可響應(yīng)于軟件的運(yùn)行而訪問、存儲、操作、處理和創(chuàng)建數(shù)據(jù)。為了簡潔的目的,對處理裝置的描述被用作單數(shù);然而,本領(lǐng)域技術(shù)人員將理解,處理裝置可包括多個處理元件以及多種類型的處理元件。例如,處理裝置可包括多個處理器或一個處理器和一個控制器。此外,不同的處理配置是可行的,例如, 并行處理器。
軟件可包括用于獨(dú)立地或共同地命令和/或配置處理裝置按照需要進(jìn)行操作的計(jì)算機(jī)程序、一段代碼、指令或它們的一些組合,從而將處理裝置轉(zhuǎn)換為專用處理器??稍谌魏晤愋偷臋C(jī)器、組件、物理或虛擬設(shè)備、計(jì)算機(jī)存儲介質(zhì)或裝置中或者以能夠?qū)⒅噶罨驍?shù)據(jù)提供給處理裝置或被處理裝置解釋的傳輸信號波來永久地或暫時地實(shí)施軟件和數(shù)據(jù)。軟件還可被分布在聯(lián)網(wǎng)的計(jì)算機(jī)系統(tǒng)中,從而以分布式存儲和執(zhí)行軟件??赏ㄟ^一個或多個非暫時性計(jì)算機(jī)可讀記錄介質(zhì)來存儲軟件和數(shù)據(jù)。
根據(jù)上述示例實(shí)施例的方法可被記錄在包括程序指令的非暫時性計(jì)算機(jī)可讀介質(zhì)中以實(shí)現(xiàn)上述示例實(shí)施例的各種操作。介質(zhì)還可包括單獨(dú)的或與程序指令結(jié)合的數(shù)據(jù)文件、數(shù)據(jù)結(jié)構(gòu)等。記錄在介質(zhì)上的程序指令可以是針對示例實(shí)施例的目的而專門設(shè)計(jì)和構(gòu)造的那些程序指令,或者它們可以是對計(jì)算機(jī)軟件領(lǐng)域的技術(shù)人員公知和可用的類型。非暫時性計(jì)算機(jī)可讀介質(zhì)的示例包括:磁介質(zhì)(例如,硬盤、軟盤和磁帶);光介質(zhì)(例如,CD ROM盤、DVD和/或藍(lán)光光盤);磁光介質(zhì)(例如,光盤);和專門配置為存儲和執(zhí)行程序指令的硬件裝置(例如,只讀存儲器(ROM)、隨機(jī)存取存儲器(RAM)、閃存(例如,USB閃速驅(qū)動器、存儲卡、記憶棒等)等)。程序指令的示例包括機(jī)器代碼(例如,由編譯器所產(chǎn)生的)和包含計(jì)算機(jī)使用解釋器可執(zhí)行的高級代碼的文件。上述裝置可被配置為充當(dāng)一個或多個軟件模塊以執(zhí)行上述示例實(shí)施例的操作,反之亦然。
以上已經(jīng)描述了多個示例實(shí)施例。然而,應(yīng)理解,可對這些示例實(shí)施例進(jìn)行各種修改。例如,如果以不同的順序執(zhí)行描述的技術(shù),和/或如果描述的系統(tǒng)、架構(gòu)、裝置或電路中的組件以不同的方式組合和/或被其它組件或其等同物代替或補(bǔ)充,則可實(shí)現(xiàn)合適的結(jié)果。因此,其它實(shí)施方式落入權(quán)利要求的范圍內(nèi)。