一種n頻編碼結(jié)構(gòu)光解碼快速算法
【技術(shù)領(lǐng)域】
[0001] 一種n頻編碼結(jié)構(gòu)光解碼快速算法屬于結(jié)構(gòu)光三維測量技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 三維形貌測量在科學(xué)研宄、醫(yī)學(xué)診斷、工程設(shè)計、刑事偵查等領(lǐng)域均有廣泛的應(yīng) 用。而結(jié)構(gòu)光作為眾多三維形貌測量手段的重要組成部分,以其非接觸式、成本低、分辨率 高和速度快的優(yōu)勢,受到了各國學(xué)者和工程技術(shù)人員的廣泛關(guān)注,并得到了快速發(fā)展。
[0003] 結(jié)構(gòu)光是一組由投影儀和攝像頭組成的系統(tǒng)結(jié)構(gòu)。用投影儀投射特定的光信息到 物體表面后及背景后,再由攝像頭進(jìn)行采集,根據(jù)物體造成的光信號變化來計算物體的位 置和深度信息,進(jìn)而復(fù)原整個物體三維形貌。
[0004] 結(jié)構(gòu)光最簡單的形式就是向物體表面投射單一頻率光束,然而,單一頻率的投影 光不僅抗干擾能力差,而且量程也只局限于投影光的一個周期;解決這個問題,可以采用兩 束或多束不同頻率投影光相組合的方式,例如本課題組在2014年11月18日申請了發(fā)明專 利《一種雙頻模擬編碼光容錯相位展開工程方法》,并公開了一種解碼算法。然而,在應(yīng)用時 發(fā)現(xiàn),該發(fā)明專利所公開的解碼算法僅可以實現(xiàn)雙頻編碼光有效解碼,而不適用于對三頻 及更多頻編碼光進(jìn)行解碼。
[0005] 針對上述問題,本課題組申請了發(fā)明專利《一種n頻編碼結(jié)構(gòu)光解碼算法》,并在 具體實施例中驗證了該發(fā)明能夠?qū)﹄p頻及多頻編碼結(jié)構(gòu)光進(jìn)行解碼。然而,這種算法需要 窮盡所有可能才能完成解碼運算,而從具體實施例三、具體實施例四和具體實施例五可以 看出,對于四頻編碼結(jié)構(gòu)光,就可能存在三千多萬種可能,并可以分析出,隨著頻數(shù)的增加, 可能性會成指數(shù)形式上升,也使得解碼運算量成指數(shù)形式上升,完成解碼,勢必消耗很長的 運算時間。
【發(fā)明內(nèi)容】
[0006] 針對本課題組申請發(fā)明《一種n頻編碼結(jié)構(gòu)光解碼算法》中,所公開的解碼算法運 算量大,耗時長的缺點,本發(fā)明公開了一種n頻編碼結(jié)構(gòu)光解碼快速算法,該算法可以實現(xiàn) 對n頻編碼結(jié)構(gòu)光快速解碼。
[0007] 本發(fā)明的目的是這樣實現(xiàn)的:
[0008] -種n頻編碼結(jié)構(gòu)光解碼快速算法,由兩個步驟組成:
[0009] 步驟一、將編碼光按照周期從大到小的順序進(jìn)行排序,并記錄和計算所需參數(shù);
[0010] 步驟二、按順序查找各組編碼結(jié)構(gòu)光周期序號,并計算空間位置。
[0011] 上述n頻編碼結(jié)構(gòu)光解碼快速算法,記錄和計算所需參數(shù),具體為:
[0012] 排序后編碼結(jié)構(gòu)光的周期分別為:a2、…、an,并且有:ai>a2>…〉an;
[0013] 排序后編碼結(jié)構(gòu)光在量程范圍內(nèi)所包含的周期數(shù)分別為:&、N2、…、Nn,并且有: N,N2〈…<Nn;
[0014] 排序后編碼結(jié)構(gòu)光與空間位置相對應(yīng)的相位主值分別為:灼、%、…、%。
[0015] 上述n頻編碼結(jié)構(gòu)光解碼快速算法,所述的步驟二具體為:
[0016] S201、設(shè)定i= 0,j= 0,k= 2 ;
[0017] S202、判斷卻+奶是否等于%/ + %,如果:
[0018] 否,進(jìn)入步驟S203,
[0019] 是,進(jìn)入步驟S204,
[0020] S203、判斷j是否等于Nk_l,如果:
[0021] 否,j=j+1,直接回到S202 ;
[0022] 是,i=i+1,j= 0,k= 2,回到S202 ;
[0023] S204、判斷k是否等于n,如果:
[0024] 否,j= 〇,k=k+1,回到步驟S202 ;
[0025] 是,計算¥ +奶,結(jié)束。
[0026] -種實現(xiàn)上述n頻編碼結(jié)構(gòu)光解碼快速算法的投影采集系統(tǒng),包括投影儀、被測 物、以及圖像采集系統(tǒng),所述的投影儀向被測物投影結(jié)構(gòu)光,圖像采集系統(tǒng)采集投射有結(jié)構(gòu) 光的被測物圖像,所述投影儀按照周期從大到小的順序投射結(jié)構(gòu)光。
[0027] 有益效果:
[0028] 第一、由于步驟一將編碼光按照周期從大到小的順序進(jìn)行排序,因此在量程范圍 內(nèi),各編碼結(jié)構(gòu)光的周期數(shù)量從小到大,在這樣的條件下實施步驟二,使作為判斷基準(zhǔn)的第 一個編碼光搜索次數(shù)最少,有利于提高解碼速度。
[0029] 第二、沿用本課題組《一種n頻編碼結(jié)構(gòu)光解碼算法》數(shù)組的定義,本發(fā)明步驟二 提供的搜索算法,可以實現(xiàn)以下功能:只要發(fā)現(xiàn)數(shù)組中存在兩個不相等的元素,就不再計算 包含這兩個元素的所有數(shù)組,因此可以大幅減少運算量,實現(xiàn)對n頻編碼結(jié)構(gòu)光進(jìn)行快速 解碼。
[0030] 以上兩個有益效果相結(jié)合,可以實現(xiàn)快速搜索解碼。
【附圖說明】
[0031] 圖1為本發(fā)明n頻編碼結(jié)構(gòu)光解碼快速算法流程圖。
[0032] 圖2為本發(fā)明n頻編碼結(jié)構(gòu)光解碼快速算法中步驟二的流程圖。
[0033] 圖3為兩項發(fā)明計算結(jié)果與運算時間對比圖。
【具體實施方式】
[0034] 下面結(jié)合附圖對本發(fā)明具體實施例作進(jìn)一步詳細(xì)描述。
[0035] 本實施例的n頻編碼結(jié)構(gòu)光解碼快速算法,以本課題組申報的發(fā)明專利《一種n頻 編碼結(jié)構(gòu)光解碼算法》中,具體實施例三所采用的四頻數(shù)據(jù)為例,驗證本發(fā)明方法具有運算 速度快的技術(shù)優(yōu)勢。
[0036] 本實施例的n頻編碼結(jié)構(gòu)光解碼快速算法,流程圖如圖1所示,該算法由兩個步驟 組成:
[0037] 步驟一、將編碼光按照周期從大到小的順序進(jìn)行排序,并記錄和計算所需參數(shù);
[0038] 步驟二、按順序查找各組編碼結(jié)構(gòu)光周期序號,并計算空間位置。
[0039] 其中,步驟一所述的記錄和計算所需參數(shù),包括:
[0040] 排序后編碼結(jié)構(gòu)光的周期分別為:
[0041] &1= 7
[0042] a2= 6
[0043] ;
[0044] a3= 5
[0045] a4= 4
[0046] 排序后編碼結(jié)構(gòu)光在量程范圍內(nèi)所包含的周期數(shù)分別為:
[0047] N:= 60
[0048] N2= 70
[0049] ;
[0050] N3= 84
[0051] N4= 105
[0052] 排序后編碼結(jié)構(gòu)光與空間位置相對應(yīng)的相位主值分別為:仍、朽、…、%。
[0057] 步驟二的具體流程如圖2所示,包括以下步驟:
[0058] S201、設(shè)定i= 0,j= 0,k= 2 ;
[0059] S202、判斷卻+奶是否等于%/ + %,如果:
[0060] 否,進(jìn)入步驟S203,
[0061] 是,進(jìn)入步驟S204,
[0062] S203、判斷j是否等于Nk_l,如果:
[0063] 否,j=j+l,直接回到S202 ;
[0064] 是,i=i+l,j= 〇,k= 2,回到S202 ;
[0065] S204、判斷k是否等于n,如果:
[0066] 否,j= 〇,k=k+1,回到步驟S202 ;
[0067] 是,計算¥ +灼,結(jié)束。
[0068] 按照上述流程,在matlab軟件中編程序如下:
[0069]
[0070]
[0071] 得到的結(jié)果為x= 188,所用時間為0? 000101s。
[0072] 為了驗證本文算法具有運算速度快的優(yōu)勢,再在matlab軟件中編寫本課題組申 報的發(fā)明專利《一種n頻編碼結(jié)構(gòu)光解碼算法》所涉及算法的程序,如下:
[0073]
[0075] 得到的結(jié)果同樣為x= 188,所用時間為0. 586093s。
[0076] 以上結(jié)果在matlab中的顯示,即對比結(jié)果如圖3所示。
[0077] 根據(jù)兩種算法得到的結(jié)果完全一致,驗證了本發(fā)明算法的正確性,根據(jù)本發(fā)明算 法用時遠(yuǎn)遠(yuǎn)小于另一項發(fā)明的算法用時,驗證了本發(fā)明算法具有快速運算的技術(shù)優(yōu)勢。
[0078] 以上實施例均采用以下投影采集系統(tǒng),該系統(tǒng)包括投影儀、被測物、以及圖像采集 系統(tǒng),所述的投影儀向被測物投影結(jié)構(gòu)光,圖像采集系統(tǒng)采集投射有結(jié)構(gòu)光的被測物圖像, 這些技術(shù)特征均與傳統(tǒng)結(jié)構(gòu)光系統(tǒng)完全一致,在此不再重復(fù)說明。區(qū)別在于,所述投影儀按 照周期從大到小的順序投射結(jié)構(gòu)光。
【主權(quán)項】
1. 一種η頻編碼結(jié)構(gòu)光解碼快速算法,其特征在于,由兩個步驟組成: 步驟一、將編碼光按照周期從大到小的順序進(jìn)行排序,并記錄和計算所需參數(shù); 步驟二、按順序查找各組編碼結(jié)構(gòu)光周期序號,并計算空間位置。2. 根據(jù)權(quán)利要求1所述的η頻編碼結(jié)構(gòu)光解碼快速算法,其特征在于,記錄和計算所需 參數(shù),具體為: 排序后編碼結(jié)構(gòu)光的周期分別為:、…、an,并且有:aPaP…〉an; 排序后編碼結(jié)構(gòu)光在量程范圍內(nèi)所包含的周期數(shù)分別為N2、…、Nn,并且有: N^N2〈…<Nn; 排序后編碼結(jié)構(gòu)光與空間位置相對應(yīng)的相位主值分別為%、…、%。3. 根據(jù)權(quán)利要求1所述的η頻編碼結(jié)構(gòu)光解碼快速算法,其特征在于,所述的步驟二具 體為: 5201、 SSi = 0,j=0,k = 2; 5202、 判斷即_ +奶是否等于%/ + ?,如果: 否,進(jìn)入步驟S203, 是,進(jìn)入步驟S204, 5203、 判斷j是否等于Nk-1,如果: 否,j = j+Ι,直接回到S202 ; 是,i = i+1,j = 0, k = 2,回到 S202 ; 5204、 判斷k是否等于n,如果: 否,j = 0, k = k+Ι,回到步驟 S202 ; 是,計算<¥' +供,結(jié)束。4. 一種實現(xiàn)權(quán)利要求1、2和3所述η頻編碼結(jié)構(gòu)光解碼快速算法的投影采集系統(tǒng),包 括投影儀、被測物、以及圖像采集系統(tǒng),所述的投影儀向被測物投影結(jié)構(gòu)光,圖像采集系統(tǒng) 采集投射有結(jié)構(gòu)光的被測物圖像,其特征在于,所述投影儀按照周期從大到小的順序投射 結(jié)構(gòu)光。
【專利摘要】一種n頻編碼結(jié)構(gòu)光解碼快速算法屬于結(jié)構(gòu)光三維測量技術(shù)領(lǐng)域;該方法首先將編碼光按照周期從大到小的順序進(jìn)行排序,并記錄和計算排序后編碼結(jié)構(gòu)光的周期、在量程范圍內(nèi)所包含的周期數(shù)、以及與空間位置相對應(yīng)的相位主值;然后按順序查找各組編碼結(jié)構(gòu)光周期序號,并計算空間位置,從第一個編碼光的第一種可能開始,逐條向其他編碼光進(jìn)行搜索,直到搜索到所有編碼光都有相同的計算結(jié)果,進(jìn)而計算得到空間位置;本發(fā)明n頻編碼結(jié)構(gòu)光解碼快速算法,可以實現(xiàn)快速搜索解碼。
【IPC分類】G01B11/24
【公開號】CN104897081
【申請?zhí)枴緾N201510333039
【發(fā)明人】于曉洋, 孟曉亮, 張吉勛, 孫曉明, 于舒春, 吳海濱, 趙煙橋
【申請人】哈爾濱理工大學(xué)
【公開日】2015年9月9日
【申請日】2015年6月16日