專利名稱:光學(xué)導(dǎo)引移動方向預(yù)測方法
技術(shù)領(lǐng)域:
本發(fā)明是關(guān)于一種光學(xué)導(dǎo)引移動方向預(yù)測方法,尤指一種可由復(fù)雜型可編程邏輯元件(Complex Programmable Logic Device,CPLD)的組合邏輯或特殊用途集成電路(ASIC)設(shè)計的光學(xué)指標(biāo)器、光學(xué)辨識器、機(jī)械臂…等光學(xué)導(dǎo)引移動方向預(yù)測方法。
背景技術(shù):
一般光學(xué)鼠標(biāo)是以影像感應(yīng)裝置擷取桌面的影像資訊,并經(jīng)由模擬數(shù)字轉(zhuǎn)換器(A/D Converter)將模擬信號轉(zhuǎn)成數(shù)字信號,再經(jīng)由數(shù)字信號處理器(DSP)將鼠標(biāo)的位移量轉(zhuǎn)換成相對的正交脈波訊號,以輸出至電腦,進(jìn)而控制熒幕游標(biāo)的移動。
然而,在DSP計算處理部分,一般光學(xué)鼠標(biāo)的影像比對(Image-Matching),都單純只以區(qū)塊比對(Block-Matching)來判斷鼠標(biāo)的移動方向。如圖1所示,區(qū)塊比對是將經(jīng)A/D轉(zhuǎn)換后的影像資料切割成每塊n×n大小的區(qū)塊(block),并比對目前圖框A1上某一區(qū)塊的影像,相對于前一個參考圖框A2(reference frame)里的區(qū)塊在二維空間的位移量M1。但因影像感測置(Image Senser)具有解析度與均勻度問題,在影像資料由模擬轉(zhuǎn)成數(shù)字資料時,都會造成些微的誤差,此誤差可能會造成鼠標(biāo)指標(biāo)的不正常抖動或移動。通常光學(xué)鼠標(biāo)制造商的解決方法有兩種第一種是消極的舍棄這些有誤差的圖框(frame),使鼠標(biāo)指標(biāo)保持在原位,不做任何的移動,造成鼠標(biāo)指標(biāo)會有劇跳(Jump)的現(xiàn)象;第二種是仍然使用這個有誤差的圖框來做比對,但并沒有任何的正確方向判斷的能力,因此便很容易造成鼠標(biāo)指標(biāo)抖動或移動錯誤的現(xiàn)象。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種光學(xué)導(dǎo)引移動方向預(yù)測方法,能有效增加鼠標(biāo)移動的正確性,并改善光學(xué)鼠標(biāo)指標(biāo)抖動及劇跳的現(xiàn)象。
為達(dá)成上述目的,本發(fā)明主要利用前兩次正確的平均絕對差值矩陣(即只有一個MAD(min)的平均絕對差值矩陣)的移動向量差為方向預(yù)測的依據(jù),并由前次正確的向量位置為中心,以逐層向外拓展逐層判斷的方式。
本發(fā)明主要包括下述的步驟(A)利用平均絕對差值運(yùn)算來進(jìn)行區(qū)塊比對(Block-Matching)處理,以建立一相對應(yīng)的平均絕對差值(MAD)矩陣;(B)于該相對應(yīng)的MAD矩陣中搜尋具有MAD最小向量值所有可能位置,并進(jìn)行移動方向預(yù)測判斷;以及(C)更新當(dāng)次與前次正確向量值,以作為下次比對時該方向預(yù)測判斷依據(jù),并擷取下一張影像圖框(frame)的中心候選區(qū)塊(cadidate block),以作為一參考區(qū)塊(reference block)。
其中于步驟(A)中,該平均絕對差值運(yùn)算是使用一MAD方程式來進(jìn)行區(qū)塊比對運(yùn)算,且該MAD方程式為MAD(u,v)={Σi=1nΣj=1n|C1+u,j+v-Pij|}]]>其中,Pij代表參考區(qū)塊的圖素,Ci-u,j+v代表候選區(qū)塊的圖素,對應(yīng)的(u,v)則為移動向量。
其中于步驟(B)中,該移動方向預(yù)測判斷是以僅具有一個MAD最小向量值之前第一正確的平均絕對差矩陣與前第二正確的平均絕對差矩陣作為運(yùn)算的依據(jù)。
其中于步驟(B)中,當(dāng)搜尋完成后,如該MAD最小向量值只有一個,則繼續(xù)進(jìn)行步驟(C)。
其中于步驟(B)中,當(dāng)搜尋完成后,如該MAD最小向量值有一個以上,則將該當(dāng)次正確向量值(X,Y)與該前第一正確的平均絕對差矩陣MAD最小向量值(ΔX1,ΔY1)進(jìn)行相加,并以該運(yùn)算結(jié)果作為一新的中心位置,繼而由該新的中心位置向外擴(kuò)展,以進(jìn)行該方向預(yù)測判斷處理。
其中該移動方向預(yù)測判斷處理是以該新的中心位置所含括的范圍來搜尋與該MAD最小向量值相同的資料,如相同時,則繼續(xù)進(jìn)行步驟(C)。
其中該移動方向預(yù)測判斷處理是以該新的中心位置所含括的范圍來搜尋與該MAD最小向量值相同的資料,如不同時,則由該新的中心位置。向外四周擴(kuò)展至少一區(qū)塊(block),供進(jìn)行搜尋與比對處理。
當(dāng)向外擴(kuò)展搜尋與比對處理的結(jié)果具有二個以上的MAD最小向量值,則進(jìn)行一預(yù)測運(yùn)算,以將該前第一正確的平均絕對差矩陣的MAD最小向量值(ΔX1,ΔY1)乘以二倍,再減去該前第二正確的平均絕對差矩陣的MAD最小向量值(ΔX2,ΔY2),并對該預(yù)測運(yùn)算結(jié)果與該二個以上MAD最小向量值進(jìn)行比較,以搜尋出與該預(yù)測運(yùn)算的結(jié)果最接近的MAD最小向量值。
當(dāng)由該新的中心位置向四周擴(kuò)展搜尋,所搜尋范圍超過該相對應(yīng)的MAD矩陣邊界時,則修正搜尋范圍,直到搜尋出與該預(yù)測運(yùn)算的結(jié)果最接近的MAD最小向量值。
為能進(jìn)一步了解本發(fā)明的方法、特征及其目的,以附圖及較佳具體實施例的詳細(xì)說明如后圖1為公知區(qū)塊比對的示意圖。
圖2為本發(fā)明的動作流程圖。
圖3為本發(fā)明第一實施例的方向預(yù)測示意圖。
圖4為本發(fā)明第二實施例的方向預(yù)測示意圖。
圖5為本發(fā)明第三實施例的方向預(yù)測示意圍。
圖6為本發(fā)明第四實施例的方向預(yù)測示意圖。
圖7A、7B為本發(fā)明的實驗結(jié)果對照示意圖。
具體實施例方式
本發(fā)明將以光學(xué)鼠標(biāo)的移動方向預(yù)測來加以說明,當(dāng)光學(xué)鼠標(biāo)的影像感應(yīng)裝置擷取經(jīng)由桌面反射回來的光線后,將轉(zhuǎn)換成數(shù)字資料,并傳送至數(shù)字信號處理器子以進(jìn)行方向預(yù)測判斷。
有關(guān)本發(fā)明在數(shù)字信號處理器中的移動方向預(yù)測方法,請參照圖2顯示的動作流程圖,先進(jìn)行初使化設(shè)定(步驟S201),即將MAD矩陣的中心位置設(shè)為(X,Y)=(8,8),并將之前第一個MAD矩陣的移動向量設(shè)為(ΔX1,ΔY1)=(0,0),之前第二個MAD矩陣的移動向量設(shè)為(ΔX2,ΔY2)=(0,0)。當(dāng)然,MAD矩陣的中心位置是依圖框大小而定,并不僅限制于本例的設(shè)定值。
之后,影像感應(yīng)裝置將繼續(xù)擷取第一張影像圖框(frame),以作為參考圖框(步驟S202)。并繼續(xù)擷取第二張影像圖框(步驟S203),且將所擷取到的圖框轉(zhuǎn)換成數(shù)字資料,再送至數(shù)字處理器。
此時,數(shù)字處理器將以平均絕對差值(Mean Absolute Difference,MAD)運(yùn)算來作區(qū)塊比對處理,并建立出一個對應(yīng)的MAD矩陣(步驟S204)。其中,平均絕對差值運(yùn)算是利用一MAD方程式來進(jìn)行區(qū)塊比對運(yùn)算。MAD方程式如下MAD(u,v)={Σi=1nΣj=1n|Ci+u,j+v-Pij|}]]>其中,該u、v值為座標(biāo)索引值,較佳為1-15;而i、j=1-n(n為區(qū)塊大小);Pij代表參考區(qū)塊的圖素,Ci+u,J+v代表候選區(qū)塊的圖素,對應(yīng)的(u,v)則為移動向量。
當(dāng)對應(yīng)的MAD矩陣建立完成后,則搜尋在矩陣中最小MAD值(即其element值為最小者),稱之為MAD(u,v)(min)(步驟S205)。當(dāng)然MAD(min)的值亦可設(shè)定為其他值。若在MAD矩陣僅搜尋到一個MAD(min)的值,則更新前一次的位移向量(ΔX2,ΔY2)=(ΔX1,ΔY1),并計算此次的位移向量(ΔX1,ΔY1)=(u-X,v-Y)|minMAD(u,v)(步驟S206),繼而更新參考區(qū)塊(步驟S213),并接收由影像感應(yīng)裝置所擷取的下一張影像圖框(步驟S207),并繼續(xù)執(zhí)行(步驟S204)。
若在MAD矩陣搜尋到有一個以上MAD(min),則以(ΔX1+X,ΔY1+Y)為中心位置,判斷是否有MAD(min),若有則(ΔX1+X,ΔY1+Y)即為預(yù)測結(jié)果;沒有則向四周擴(kuò)展一個區(qū)塊格數(shù)作為搜尋范圍,以進(jìn)行方向預(yù)測判斷(步驟S208、S211)。若范圍內(nèi)有多個MAD(min)的資料,則依前兩次位移向量差來預(yù)測可能的方向(ΔX0,ΔY0)=2(ΔX1,ΔY1)-(ΔX2,ΔY2)(步驟S209)。取得預(yù)測方向后,以最接近(ΔX1+X,ΔY1+Y)的預(yù)測值作為方向預(yù)測的結(jié)果(步驟S210)。接著,依續(xù)執(zhí)行(步驟S206)。
若搜尋范圍內(nèi)沒有MAD(min)的資料,則以該(ΔX1+X,ΔY1+Y)的值作為中心位置,并向四周擴(kuò)展一區(qū)塊格,以擴(kuò)大搜尋范圍(步驟S211)。當(dāng)搜尋范圍超出對應(yīng)的MAD矩陣的邊界,則修正搜尋范圍至矩陣邊界內(nèi)(步驟S212),并繼續(xù)判斷范圍內(nèi)是否有MAD(min),若搜尋范圍沒有超出矩陣邊界,則判斷范圍內(nèi)是否有MAD(min)。
圖3I顯示本發(fā)明第一實施例方向預(yù)測示意圖,其為以平均絕對差值(MAD)運(yùn)算來作區(qū)塊比對處理,而建立出的對應(yīng)MAD矩陣。在本例中,對應(yīng)的MAD矩陣的中心位置為(X,Y)=(8,8),且假設(shè)之前第一個MAD矩陣的移動向量為(ΔX1,ΔY1)=(-1,-1),之前第二個MAD矩陣的移動向量為(ΔX2,ΔY2)=(-1,-1)(步驟S201)。(并請參照圖2)經(jīng)搜尋后,在MAD矩陣找到三個MAD(min)的值(步驟S205),則以(ΔX1+X,ΔY1+Y)為中心,即(X,Y)=(7,7)(步驟S208),并判斷該位置是否有MAD(min)的值。有,則此坐標(biāo)MAD(u,v)即為方向預(yù)測座標(biāo)(步驟S210)。接著,更新此次及前次的向量值,以作為下次比對方向預(yù)測時的依據(jù)(步驟S206),并更新參考區(qū)塊(S213)。
圖4是顯示本發(fā)明第二實施例的方向預(yù)測示意圖,其對應(yīng)的矩陣中心位置與前第一、第二個MAD矩陣的移動向量與第一實施例的值相同。經(jīng)搜尋后,在MAD矩陣找到二個MAD(min)的值(步驟S205),則以(ΔX1+X,ΔY1+Y)為中心,即(X,Y)=(7,7)(步驟S208),并判斷該位置是否有MAD(min)值。判斷結(jié)果為沒有MAD(min)值,則以(X,Y)=(7,7)為中心位置向四周擴(kuò)展一區(qū)塊格再搜尋(步驟S211、S212),結(jié)果在MAD(u,v)=(8,7)找到MAD(min)值,則此坐標(biāo)即為預(yù)測坐標(biāo),并更新此次及前次的向量值以作為下次比對時方向預(yù)測時的依據(jù),與更新參考區(qū)塊(步驟S206、S213)。
圖5是顯示本發(fā)明第三實施例的方向預(yù)測示意圖,其MAD矩陣的中心位置和上述二例相同,并假設(shè)之前第一個MAD矩陣的移動向量為(ΔX1,ΔY1)=(0,1),之前第二個MAD矩陣的移動向量為(ΔX2,ΔY2)=(-1,0)(步驟S201),經(jīng)搜尋后,在MAD矩陣找到二個MAD(min)值(步驟S205),則以(ΔX1+X,ΔY1+Y)為中心,即(X,Y)=(8,9)(步驟S208),并判斷該位置是否有MAD(min)值。結(jié)果該位置沒有MAD(min)值,則向四周擴(kuò)展一區(qū)塊格,并以(X,Y)=(8,9)為中心向四周搜尋,結(jié)果仍然沒有MAD(min)值,再向四周擴(kuò)展一區(qū)塊格搜尋,結(jié)果在MAD(u,v)=(6,9)與(10,10)找到MAD(min)值(步驟S211、S212)。則進(jìn)行預(yù)測可能的方向(ΔX0,ΔY0)=2(ΔX1,ΔY1)-(ΔX2,ΔY2)=(1,2),預(yù)測的座標(biāo)為(ΔX0+X,ΔY0+Y)=(9,10),以(10,10)最接近預(yù)測的座標(biāo),因此取MAD(u,v)=(10,10)為方向預(yù)測的結(jié)果(步驟S209、S210),并更新此次及前次的向量值以作為下次比對時方向預(yù)測時的依據(jù)(步驟S206)。
圖6是顯示本發(fā)明第四實施例的方向預(yù)測示意圖,其MAD矩陣的中心位置為(X,Y)=(8,8),且假設(shè)的前第一個MAD矩陣的移動向量為(ΔX1,ΔY1)=(-6,1),之前第二個MAD矩陣的移動向量為(ΔX2,ΔY2)=(-6,2)(步驟S201),經(jīng)搜尋后,在MAD矩陣有三個MAD(min)值(步驟S205),則以(ΔX1+X,ΔY1+Y)為中心,即(X,Y)=(2,9)(步驟S208),并判斷該位置是否有MAD(min)值。結(jié)果該位置沒有MAD(min)值,則向四周擴(kuò)展一區(qū)塊格,并以(X,Y)=(2,9)為中心向四周搜尋,結(jié)果仍然沒有MAD(min)值,再向四周擴(kuò)展一區(qū)塊格搜尋,但超過矩陣邊界,則修正搜尋范圍(步驟S211、S212),并在MAD(u,v)=(2,7)找到MAD(min)值。預(yù)測方向的向量為(ΔX0,ΔY0)=2(ΔX1,ΔY1)-(ΔX2,ΔY2)=(-6,0),預(yù)測的座標(biāo)為(ΔX0+X,ΔY0+Y)=(2,8),以(2,7)最接近預(yù)測座標(biāo),因此該座標(biāo)為向預(yù)測的結(jié)果,繼而更新此次及前次的向量值以作為下次比對時方向預(yù)測時的依據(jù)(步驟S209、S210、S206)。
圖7A、7B顯示本發(fā)明的實驗結(jié)果對照圖,當(dāng)光學(xué)鼠標(biāo)置于高誤差率的蠟質(zhì)桌面時,若使用數(shù)字處理器采用公知的區(qū)塊比對處理,則所判斷的路徑將與預(yù)設(shè)的路徑不同,如圖7A所示,其將造成光學(xué)鼠標(biāo)移動時的正確度降低。圖7B則顯示數(shù)字處理器采用本發(fā)明后,所判斷的路徑將與預(yù)設(shè)的路徑幾乎相同,使得光學(xué)鼠標(biāo)的移動能夠非常準(zhǔn)確。
由以上說明可知,本發(fā)明利用前二次正確的MAD矩陣的移動向量差作為方向預(yù)測的依據(jù),并以運(yùn)層向外拓展逐層判斷的方式來預(yù)測并找出有多個MAD(min)值相同時可能的方向及向量大小,以有效增加鼠標(biāo)移動的正確性,并改善光學(xué)鼠標(biāo)指標(biāo)抖動及劇跳約現(xiàn)象。
應(yīng)注意的是,上述諸多實施例僅為了便于說明而舉例而已,本發(fā)明所主張的權(quán)利范圍自應(yīng)以申請專利范圍所述為準(zhǔn),而非僅限于上述實施例。
權(quán)利要求
1.一種光學(xué)導(dǎo)引移動方向預(yù)測方法,主要包括下述步驟(A)利用平均絕對差值運(yùn)算來進(jìn)行區(qū)塊比對(Block-Matching)處理,以建立一相對應(yīng)的平均絕對差值(MAD)矩陣;(B)于該相對應(yīng)的MAD矩陣中搜尋具有MAD最小向量值所有可能位置,并進(jìn)行移動方向預(yù)測判斷;以及(C)更新當(dāng)次與前次正確向量值,以作為下次比對時該方向預(yù)測判斷依據(jù),并擷取下一張影像圖框(frame)的中心候選區(qū)塊(cadidate block),以作為一參考區(qū)塊(reference block)。
2.如權(quán)利要求1所述的光學(xué)導(dǎo)引移動方向預(yù)測方法,其特征在于,其中于步驟(A)中,該平均絕對差值運(yùn)算是使用一MAD方程式來進(jìn)行區(qū)塊比對運(yùn)算,且該MAD方程式為MAD(u,v)={Σi=1nΣj=1n|Ci+u,j+v-Pij|}]]>其中,Pij代表參考區(qū)塊的圖素,Ci+u,j+v代表候選區(qū)塊的圖素,對應(yīng)的(u,v)則為移動向量。
3.如權(quán)利要求1所述的光學(xué)導(dǎo)引移動方向預(yù)測方法,其特征在于,其中于步驟(B)中,該移動方向預(yù)測判斷是以僅具有一個MAD最小向量值之前第一正確的平均絕對差矩陣與前第二正確的平均絕對差矩陣作為運(yùn)算的依據(jù)。
4.如權(quán)利要求1所述的光學(xué)導(dǎo)引移動方向預(yù)測方法,其特征在于,其中于步驟(B)中,當(dāng)搜尋完成后,如該MAD最小向量值只有一個,則繼續(xù)進(jìn)行步驟(C)。
5.如權(quán)利要求3所述的光學(xué)導(dǎo)引移動方向預(yù)測方法,其特征在于,其中于步驟(B)中,當(dāng)搜尋完成后,如該MAD最小向量值有一個以上,則將該當(dāng)次正確向量值(X,Y)與該前第一正確的平均絕對差矩陣MAD最小向量值(ΔX1,ΔY1)進(jìn)行相加,并以該運(yùn)算結(jié)果作為一新的中心位置,繼而由該新的中心位置向外擴(kuò)展,以進(jìn)行該方向預(yù)測判斷處理。
6.如權(quán)利要求5所述的光學(xué)導(dǎo)引移動方向預(yù)測方法,其特征在于,其中該移動方向預(yù)測判斷處理是以該新的中心位置所含括的范圍來搜尋與該MAD最小向量值相同的資料,如相同時,則繼續(xù)進(jìn)行步驟(C)。
7.如權(quán)利要求6所述的光學(xué)導(dǎo)引移動方向預(yù)測方法,其特征在于,其中該移動方向預(yù)測判斷處理是以該新的中心位置所含括的范圍來搜尋與該MAD最小向量值相同的資料,如不同時,則由該新的中心位置.向外四周擴(kuò)展至少一區(qū)塊(block),供進(jìn)行搜尋與比對處理。
8.如權(quán)利要求7所述的光學(xué)導(dǎo)引移動方向預(yù)測方法,其特征在于,當(dāng)向外擴(kuò)展搜尋與比對處理的結(jié)果具有二個以上的MAD最小向量值,則進(jìn)行一預(yù)測運(yùn)算,以將該前第一正確的平均絕對差矩陣的MAD最小向量值(ΔX1,ΔY1)乘以二倍,再減去該前第二正確的平均絕對差矩陣的MAD最小向量值(ΔX2,ΔY2),并對該預(yù)測運(yùn)算結(jié)果與該二個以上MAD最小向量值進(jìn)行比較,以搜尋出與該預(yù)測運(yùn)算的結(jié)果最接近的MAD最小向量值。
9.如權(quán)利要求8所述的光學(xué)導(dǎo)引移動方向預(yù)測方法,其特征在于,當(dāng)由該新的中心位置向四周擴(kuò)展搜尋,所搜尋范圍超過該相對應(yīng)的MAD矩陣邊界時,則修正搜尋范圍,直到搜尋出與該預(yù)測運(yùn)算的結(jié)果最接近的MAD最小向量值。
全文摘要
本發(fā)明主要利用前二次正確的平均絕對差值矩陣(即只有一個最小平均絕對差值(MAD
文檔編號G06K11/06GK1704968SQ200410049228
公開日2005年12月7日 申請日期2004年6月3日 優(yōu)先權(quán)日2004年6月3日
發(fā)明者許明華, 黃新武, 王怡雯 申請人:微驅(qū)科技股份有限公司