手、眼關係引導的非接觸式位置輸入系統和方法
2023-09-13 09:07:20 2
專利名稱:手、眼關係引導的非接觸式位置輸入系統和方法
技術領域:
本發明涉及一種三維視覺測量系統和方法,特別是一種手、眼關係引導的非接觸式位置輸入系統和方法。
背景技術:
位置輸入系統是計算機輸入設備的一種,從理論上講,任何需要與計算機進行交互式操作的場合都需要位置信息的輸入。目前,最常用的位置輸入設備是滑鼠器和觸控螢幕,這類設備在使用時要求使用者與設備保持接觸,因此束縛了使用者的活動空間。在不便於約束使用者活動的場合下,比如展覽會和某些工業場合,使用接觸式位置輸入系統是不方便甚至不可能的。
以非接觸式位置輸入方式取代現有的接觸式輸入方式將為使用者提供無約束的輸入體驗,增強系統的易用性、互動性和使用的樂趣,是提升數字產品附加值的有效手段。然而目前這類技術的應用還比較少,僅有的一些嘗試主要集中於兩類一類是對現有的滑鼠器進行改造,將滑鼠器與主機的連接電纜用紅外或射頻信號取代,做成手持式的位置輸入裝置。這類技術擺脫了電纜對使用者的束縛,但由於位置信息的輸入需要通過滾動滑鼠球來實現,對於距離指示目標較遠的使用者(如展會上的參觀者,他們往往被要求在一定的距離之外觀看展示)來說,這種輸入方式是不直觀且不精確的;另一類技術使用貼片式位置傳感器,將若干枚傳感器放置於使用者身體的某些部位(如手指)上,通過感應人體的特定運動來實現位置信息的輸入。這種方法可以實現直觀的位置輸入,但由於需要使用者佩戴傳感器,應用的靈活性受到了影響。這兩類技術實際仍然要求使用者接觸輸入設備,因此從嚴格意義上來講,並不是真正的非接觸式位置輸入系統。
發明內容
本發明的目的在於提供一種手、眼關係引導的位置輸入系統和方法,利用雙目視覺技術實現對使用者手指與眼睛的實時跟蹤與精確定位,並判斷其手指指示的目標位置,從而實現非接觸的、直觀的位置輸入。
為達到上述目的,本發明的構思是
手、眼關係引導的非接觸式位置輸入系統,由兩臺CCD攝像機(1),一臺顯示終端(2),一臺裝配有多通道圖像採集卡的計算機(3)組成,平面標定模板(4)用於標定攝像機參數。其中,計算機(3)通過圖像採集卡與攝像機(1)連接並通過顯示卡與顯示終端(2)連接,計算機(3)內設有一套攝像機自動標定程序和一套指示位置分析程序。本發明的系統特點是兩臺CCD攝像機(1)使用會聚配置構成雙目視覺系統,平面標定模板(4)由一塊平板上精確繪製出的兩個同心圓和四條通過圓心且等分圓周的直線圖形構成,攝像機自動標定程序可實現全自動、高精度的攝像機參數標定,指示位置分析程序可實時輸出指示點的位置坐標,顯示終端可以是大屏幕投影儀、展示沙盤或立體模型以及任意形狀的空間物體等。
本發明的手、眼關係引導的非接觸式位置輸入方法採用上述系統實現,具有如下特點①雙目視覺系統在設備安裝完成後標定一次即可;②利用雙目視覺原理計算物體點的空間坐標,實現非接觸的、實時的位置測量;③運用人臉檢測、人眼定位與手指定位算法及目標跟蹤算法,對圖像序列中的人體特定部位進行跟蹤;④從人的生理特徵出發,將連接兩眼間中心點與手指尖的直線作為人的瞄準線,判定手指指示的目標位置;⑤將不同的使用環境抽象為一組環境參數,通過修改環境參數可適應不同的應用。
根據上述的發明構思,本發明採用下述技術方案一種手、眼關係引導的非接觸式位置輸入系統,由兩臺CCD攝像機,一臺大型顯示終端,一臺裝置有多通道圖像採集卡的計算機組成,計算機通過圖像採集卡與攝像機連接並通過顯示卡與大型顯示終端連接。其特徵在於所述兩臺CCD攝像機以會聚配置方式固定於使用者的正前方,安裝位置需保證左右CCD攝像機視場均覆蓋使用者身體上半部的正面;有一塊平面標定模板標定時置於兩臺CCD攝像機的視場中;所述的計算機根據兩臺CCD攝像機對標定模板所採集的圖像,進行攝像機參數標定;系統測量時撤去標定模板,計算機根據預設的環境參數、標定的攝像機參數和攝像機採集的含有使用者手、眼的圖像,求解並輸出目標點坐標,即非接觸式輸入指示位置坐標。
上述的平面標定模板由一塊平整的平板上精確繪製出的兩個同心圓和四條通過圓心且等分圓周的直線圖形構成。
上述的大型顯示終端為大屏幕投影儀或展示沙盤或立體模型或空間物體。
一種手、眼關係引導的非接觸式位置輸入方法,採用手、眼關係引導的非接觸式位置輸入系統,其特徵在於具體工作步驟為兩臺CCD攝像機和一塊平面標定模板定位安裝後,計算機啟動一套攝像機自動標定程序,根據採集的平面標定模板的圖像,進行攝像機參數標定;預設環境參數,建立顯示終端所在平面方程;系統工作時,撤去標定模板,計算機啟動一套指示位置分析程序,根據預設環境參數、攝像機標定參數和讀入攝像機採集的第一幀含有使用者手、眼的圖像,求解並輸出指示位置點坐標;接著讀入下一幀含有使用者手、眼的圖像,求解並輸出指示位置點坐標,如此循環,實現指示位置的跟蹤。
上述的攝像機自動標定程序具有如下步驟標定特徵點的提取,以平面標定模板上繪製的徑向直線與圓周的交點作為標定特徵點讀入平面標定模板的圖像,分別提取圓和直線在攝像機成像面上的投影曲線的樣本點,圓的投影曲線為橢圓,直線的投影仍為直線,分別使用橢圓方程和直線方程以最小二乘法擬合提取的樣本點,聯立擬合的兩組方程,求解出橢圓與直線的交點坐標;攝像機參數標定計算根據求得的交點坐標,計算攝像機外部參數——旋轉矩陣R和位移向量T,繼而求得攝像機內部參數——焦距f和鏡頭畸變係數k。
上述的指示位置分析程序具有如下步驟讀入一幀含有使用者手、眼的攝像機採集的圖像;分別定位雙眼中點坐標Pe和食指指尖坐標Pf;將連接雙眼中點和手指尖的直線作為人的瞄準線,判定手指指示的目標位置利用標定好的攝像機參數,對雙眼連線的中點及指尖點分別聯立四個方程組,解出各自的三維坐標Pe(X,Y,Z)及Pf(X,X,Z),建立連接Pe、Pf的空間直線方程,根據預輸入的環境參數,建立顯示終端所在平面的空間平面方程,將連接Pe、Pf的空間直線方程與顯示終端所在的空間平面方程聯立,求解並輸出指示位置目標點坐標;讀入下一幀圖像,重複上兩步,實現指示位置跟蹤。
本發明與現有技術相比,具有如下顯而易見的突出實質性特點和顯著優點1.使用攝像機作為傳感器,實現了真正的非接觸式位置輸入。
2.考慮了人的生理特性,以手、眼位置關係引導系統識別人的指示目標,使位置輸入的方式符合人的習慣,因而無需對使用者進行特殊訓練,達到了直觀、準確的目的。
3.對使用環境具有較強的適應性。人體特定部位的檢測及跟蹤算法保證了系統在複雜背景下的穩定工作,因此對使用區的背景布置沒有特殊要求;參數化的環境設置功能,使系統可方便地應用於多種不同的環境之中。
4.攝像機標定簡便、精確。本系統只需在安裝時標定一次攝像機即可,標定模板使用的是成本較低且便於攜帶的平面型模板,環形對稱分布的特徵點有助於減少徑向成像畸變對計算的影響,計算機內的標定程序可自動完成模板特徵點的高精度提取、匹配、及參數求解等全部計算工作,無需人工介入。
本發明可實現直觀、準確、實時的非接觸式位置輸入。
圖1是本發明一個實施例的結構示意圖。
圖2是圖1示例使用的攝像機標定模板及標定方法示意圖。
圖3是圖1示例的雙攝像機的光學原理圖。
圖4是圖1示例的攝像機標自動定程序的流程圖,其中圖(a)是特徵點提取流程圖,圖(b)是參數計算流程圖。
圖5是圖1示例的指示位置分析程序的流程圖。
具體實施例方式
本發明的一個優選實例結合
如下參見圖1、圖2,本手、眼關係引導的非接觸式位置輸入系統,由兩臺CCD攝像機(1),一臺顯示終端(2),一臺裝配有多通道圖像採集卡的計算機(3)組成,平面標定模板(4)用於標定攝像機參數。其中,計算機(3)通過圖像採集卡與攝像機(1)連接並通過顯示卡與顯示終端(2)連接,計算機(3)內設有一套攝像機自動標定程序和一套指示位置分析程序。
本發明非接觸式位置輸入方法通過上述手、眼關係引導的非接觸式位置輸入系統實施,其步驟如下
使用前,將兩部攝像機以會聚配置的方式固定於使用者的正前方,安裝位置需保證左右攝像機視場均覆蓋使用者身體上半部的正面,參見圖1。
在安裝完成後,進行攝像機參數標定工作,參見圖2。將標定模板(4)置於攝像機(1)的視場之中,通過計算機(3)採集圖像並使用其內置的攝像機自動標定程序進行標定。
雙攝像機的光學原理如圖3所示,其中,兩部會聚配置的攝像機的鏡頭焦距和畸變係數分別為f1,k1與f2,k2;O1,o1與O2,o2分別為它們的鏡頭光心和焦點;XYZ是世界坐標系,x1y1z1與x2y2z2是攝像機坐標系;(Xw,Yw,Zw)是物體點P在世界坐標系下的坐標,(x1i,y1i)與(x2i,y2i)分別是P點在兩個攝像機平面上的投影點坐標。攝像機標定的目的就是分別確定兩部攝像機的內部參數f(焦距)、k(鏡頭畸變係數)和外部參數R=r1r2r3r4r5r6r7r8r9]]>(旋轉矩陣)、T=TxTyTz]]>(位移向量)。自動標定程序的算法分為兩部分第一部分是標定特徵點的提取,參見圖4(a)。如圖2所示,本發明使用模板表面繪製的徑向直線段與圓周的交點作為標定特徵點,為實現高精度的特徵點提取,這裡使用了圖像處理與特徵曲線擬合相結合的方法。
首先分別提取圓和直線在攝像機成像平面上的投影曲線的樣本點,由於圓的投影曲線為橢圓而直線的投影曲線仍為直線,因此分別使用橢圓方程(1)和直線方程(2)以最小二乘法擬合提取的樣本點Ax2+Bxy+Cy2+Dx+Ey+1=0 (1)y=mx+b (2)聯立擬合出的兩組方程,求解出的交點坐標(Xfi,Yfi)即是亞像素精度的特徵點圖像坐標。
第二部分是參數計算,參見圖4(b)。參數計算利用前面求出的特徵點坐標分兩步完成。
第一步1、設特徵點(Xfi,Yfi)相應的世界坐標為(Xwi,Ywi),(Xc,Yc)是圖像中心坐標,(Nx,Ny)是攝像機像平面單位距離上的像素點數。計算
Xdi=(Xfi-Xc)/Nx(3)Ydi=(Yfi-Yc)/Ny2、對每個特徵點點Pi,列出一個方程,聯立這N個方程xwiYdiywiYdiYdi-xwiXdi-ywiXdir1/Tyr2/TyTx/Tyr4/Tyr5/Ty=Xdi---(4)]]>式中i=1,2,...,N,利用最小二乘法求解這個超定方程組(N>5),可得如下變量r1′=r1/Tyr2′=r2/TyTx′=Tx/Tyr4′=r4/Tyr5′=r5/Ty3、利用R的正交性計算Ty和r1~r9,可以得到Ty2=Sr-[Sr2-4(r1r5-r4r2)2]1/22(r1r5-r4r2)2---(5)]]>其中Sr=r1′2+r2′2+r4′2+r5′2,Ty的符號可利用成像幾何關係確定。
利用正交性和右手系特性(相應於世界坐標為右手系)可計算RR=r1r2(1-r12-r22)1/2r4r5S(1-r42-r52)1/2r7r8r9]]>或R=r1r2-(1-r12-r22)1/2r4r5-S(1-r42-r52)1/2-r7-r8r9]]>式中S=-sgn[r1r4+r2r5],r7、r8、r9可由矩陣的前兩行的叉乘得到。具體選取哪一個R,可由試探法確定。
第二步,對每個特徵點Pi計算yi=r4xwi+r5ywi+Tyzi=r1xwi+r2ywi+Tz設wi=r7xwi+r8ywi,先不考慮透鏡畸變,則yi-(Yf-Yc)/NyfTz=(Yf-Yc)wi/Ny---(6)]]>
解此方程(i=1,2,...,N)可分別求出有效焦距f和平移矢量T的Tz分量,並假設k=0,以這些值作初始試探,利用優化算法求解下列非線性方程組Y(1+kr2)=fr4xwi+r5ywi+Tyr7xwi+r8ywi+Tz---(7)]]>X(1+kr2)=fr1xwi+r2ywi+Txr7xwi+r8ywi+Tz]]>可解得f、Tz、k的精確值。
攝像機標定好後,啟動計算機(3)上的指示位置分析程序並設置環境參數,系統即開始工作。參照圖5,指示位置分析程序的工作過程如下1、計算圖像(大小為M×N)中的紅色分量In(x,y)的垂直灰度投影PV(x)=y=1NI(x,y),]]>取曲線PV凸峰的左右邊界作為人臉的左右邊界;使用邊緣分組算法,在人臉區域內精確定位雙眼的位置並計算雙眼連線中點的圖像坐標Pe(x,y);2、根據人的生理結構判斷手指的大致區域,在此區域中使用膚色提取算法分離出二值化的手指模板,對此模板中的白色像素點進行直線擬合併求出最前端的坐標Pf(x,y)作為指尖點坐標;3、根據成像原理,空間點(X,Y,Z)在左右攝像機像平面上的投影(x1,y1)與(x2,y2)分別滿足(x1r17-f1r11)X+(x1r18-f1r12)Y+(x1r19-f1r13)Z=f1T1x-x1T1z(x1r17-f1r14)X+(x1r18-f1r15)Y+(x1r19-f1r16)Z=f1T1y-y1T1z與(x2r27-f2r21)X+(x2r28-f2r22)Y+(x2r29-f2r23)Z=f2T2x-x2T2z(x2r27-f2r24)X+(x2r28-f2r25)Y+(x2r29-f2r26)Z=f2T2y-y2T2z利用標定好的攝像機參數,對雙眼連線的中點及指尖點分別聯立上述四個方程組,解出各自的三維坐標Pe(X,Y,Z)及Pf(X,Y,Z)。根據預輸入的環境參數,建立顯示終端(2)所在平面的空間平面方程,並與連接Pe、Pf的空間直線方程聯立,解出交點Pt(X,Y,Z),就是人所指示的目標點坐標;4、使用塊匹配算法跟蹤下一幀圖像In+1(x,y)中Pe,Pf的匹配點,循環執行步驟3、4,從而不間斷地輸出目標點坐標Pt(X,Y,Z)。
權利要求
1.一種手、眼關係引導的非接觸式位置輸入系統,由兩臺CCD攝像機(1),一臺大型顯示終端(2),一臺裝置有多通道圖像採集卡的計算機(3)組成,計算機(3)通過圖像採集卡與攝像機(1)連接並通過顯示卡與大型顯示終端(2)連接;其特徵在於1)所述兩臺CCD攝像機(1)以會聚配置方式固定於使用者的正前方,安裝位置需保證左右CCD攝像機(1)視場均覆蓋使用者身體上半部的正面;2)在使用前標定中有一塊平面標定模板(4)置於兩臺CCD攝像機(1)的視場中;所述的計算機(3)根據兩臺CCD攝像機(1)對標定模板(4)所採集的圖像,進行攝像機參數標定;系統測量時,撤去標定模板(4),計算機(3)根據預設的環境參數、標定的攝像機參數和攝像機採集的含有使用者手、眼的圖像,求解並輸出目標點坐標,即非接觸式輸入指示位置坐標。
2.根據權利要求1所述的手、眼關係引導的非接觸式位置輸入系統,其特徵在於所述的平面標定模板(4)由一塊平整的平板上精確繪製出的兩個同心圓和四條通過圓心且等分圓周的直線圖形構成。
3.根據權利要求1所述的手、眼關係引導的非接觸式位置輸入系統,其特徵在於所述的大型顯示終端(2)為大屏幕投影儀或展示沙盤或立體模型或空間物體。
4.一種手、眼關係引導的非接觸式位置輸入方法,採用權利要求1所述的手、眼關係引導的非接觸式位置輸入系統,其特徵在於具體工作步驟為①兩臺CCD攝像機(1)和一塊平面標定模板定位安裝後,計算機(3)啟動一套攝像機自動標定程序,根據採集的平面標定模板(4)的圖像,進行攝像機參數標定;②預設環境參數,建立顯示終端(2)所在平面方程;③系統測量時,撤去標定模板(4),計算機(3)啟動一套指示位置分析程序,根據預設環境參數、攝像機標定參數和讀入攝像機(1)採集的第一幀含有使用者手、眼的圖像,求解並輸出指示位置點坐標;接著讀入下一幀含有使用者手、眼的圖像,求解並輸出指示位置點坐標,如此循環,實現指示位置的跟蹤。
5.根據權利要求4所述的手、眼關係引導的非接觸式位置輸入方法,其特徵在於所述的攝像機自動標定程序具有如下步驟①標定特徵點的提取,以平面標定模板(4)上繪製的徑向直線與圓周的交點作為標定特徵點a)讀入平面標定模板(4)的圖像,b)分別提取圓和直線在攝像機成像面上的投影曲線的樣本點,圓的投影曲線為橢圓,直線的投影仍為直線,c)分別使用橢圓方程和直線方程以最小二乘法擬合提取的樣本點,聯立擬合的兩組方程,求解出橢圓與直線的交點坐標;②攝像機參數標定計算a)根據求得的交點坐標,計算攝像機外部參數——旋轉矩陣R和位移向量T,b)繼而求得攝像機內部參數——焦距f和鏡頭畸變係數k。
6.根據權利要求4所述的手、眼關係引導的非接觸式位置輸入方法,其特徵在於所述的指示位置分析程序具有如下步驟①讀入一幀含有使用者手、眼的攝像機(1)採集的圖像;②分別定位雙眼中點坐標Pe和食指指尖坐標Pf;③將連接雙眼中點和手指尖的直線作為人的瞄準線,判定手指指示的目標位置a)利用標定好的攝像機參數,對雙眼連線的中點及指尖點分別聯立四個方程組,解出各自的三維坐標Pe(X,Y,Z)及Pf(X,Y,Z),b)建立連接Pe、Pf的空間直線方程,c)根據預輸入的環境參數,建立顯示終端(2)所在平面的空間平面方程,d)將連接Pe、Pf的空間直線方程與顯示終端所在的空間平面方程聯立,求解並輸出指示位置目標點坐標;④讀入下一幀圖像,重複步驟②~③,實現指示位置跟蹤。
全文摘要
本發明涉及一種手、眼關係引導的非接觸式位置輸入系統和方法。本非接觸式位置輸入系統由兩臺CCD攝像機,一臺大型顯示終端,一臺裝配有多通道圖像採集卡的計算機組成,系統使用平面標定模板標定攝像機參數。其中,計算機通過圖像採集卡與攝像機連接並通過顯示卡與大型顯示終端連接。位置輸入方法包括全自動攝像機標定、手眼位置獲取、指示目標點求解等步驟。本發明的位置輸入系統基於計算機視覺技術,位置輸入方法以人的生理特性為依據,可實現直觀、準確、實時的非接觸式位置輸入。
文檔編號G06F3/01GK1904806SQ20061002948
公開日2007年1月31日 申請日期2006年7月28日 優先權日2006年7月28日
發明者張之江, 董志華, 於瀛潔, 李純燦, 潘志浩, 許麗, 周文靜, 馬赫 申請人:上海大學