一種基于投影儀散焦解相位的光柵投影三維快速測(cè)量方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及三維信息重構(gòu)領(lǐng)域,尤其是一種基于投影儀散焦解相位的光柵投影三 維快速測(cè)量方法。
【背景技術(shù)】
[0002] 光學(xué)三維測(cè)量技術(shù)能夠準(zhǔn)確獲取物體的三維面形數(shù)據(jù),可用于三維模型重建、物 體表面輪廓測(cè)量、工業(yè)環(huán)境中的尺寸和形位參數(shù)的檢測(cè)等,因此它在虛擬現(xiàn)實(shí)、投影特技、 醫(yī)學(xué)整形和美容、工業(yè)產(chǎn)品的外觀設(shè)計(jì)、藝術(shù)雕塑和文物保護(hù)等領(lǐng)域都有廣闊的應(yīng)用前景。
[0003] 光柵投影法是一種重要的三維測(cè)量技術(shù),通過向物體表面投射正弦光柵,將物體 的高度信息以相位的形式調(diào)制在光柵中,利用CCD相機(jī)獲得物體表面的光柵條紋圖像,并 使用條紋分析方法對(duì)條紋圖像進(jìn)行處理,提取其中的相位,從而建立物體的三維信息。
[0004] 基于DLP(digitallightprocessing)投影儀的數(shù)字光柵投影技術(shù)越來越多的用 于高質(zhì)量實(shí)時(shí)光學(xué)三維測(cè)量,但傳統(tǒng)的三維測(cè)量方法往往無法同時(shí)達(dá)到高速和高質(zhì)量。在 實(shí)時(shí)三維測(cè)量系統(tǒng)中,投影正弦光柵或是散焦二值光柵決定了測(cè)量系統(tǒng)所能達(dá)到的速度。
[0005] 散焦是針對(duì)DLP投影而言。正常使用時(shí),投影儀鏡頭一般調(diào)節(jié)到聚焦?fàn)顟B(tài),散焦是 相對(duì)于聚焦而言,適當(dāng)調(diào)節(jié)聚焦旋鈕使投影畫面模糊,即可達(dá)到不同程度的散焦。二值光 柵散焦技術(shù)相對(duì)于傳統(tǒng)的正弦光柵投影技術(shù)具有明顯的優(yōu)勢(shì)。投影儀接受的始終是二值 (0-1)圖像而非灰度圖像,因此相機(jī)采集各圖像通道數(shù)據(jù)時(shí)曝光時(shí)間可以設(shè)置為遠(yuǎn)小于通 道的持續(xù)時(shí)間,這使得測(cè)量速度達(dá)到DLP投影儀的最大刷新頻率120幀每秒。散焦技術(shù)的 另一優(yōu)勢(shì)就是投影儀不需要非線性校正。
[0006] 解相位是相位法中重要的一步,也是光柵投影法的基本問題之一。為了提高解相 位的準(zhǔn)確性,通常采用灰階碼等編碼方法,通過增加投影條紋的數(shù)量來獲得足夠的相位信 息。相位法中獲得相位的過程分為兩步,第一步是通過相移法公式獲得條紋圖的相位場(chǎng)主 值,相移法公式得到的是鋸齒形的相位場(chǎng)主值,值域位于區(qū)間;第二步是將主值 相位場(chǎng)恢復(fù)為全場(chǎng)完整的相位場(chǎng),稱為解相位或解包裹。由此可見,解相位的關(guān)鍵就是確定 光柵條紋的周期次數(shù)。灰階碼法給光柵上每個(gè)點(diǎn)一個(gè)灰階數(shù),該灰階數(shù)對(duì)應(yīng)著該點(diǎn)的條紋 周期次數(shù),這就要用到輔助光柵條紋。每一幅輔助條紋圖像決定灰階數(shù)的一位數(shù)字的取值 (0或1),對(duì)每一個(gè)點(diǎn)來說,它在各輔助條紋圖像中的顏色(灰或白)的組合,就決定了它的 灰階數(shù)。通過灰階碼可以確定通過時(shí)域確定條紋圖上每一點(diǎn)的條紋次數(shù),而不依賴于空域 上條紋的分布性質(zhì),有效地克服了復(fù)雜表面、高度跳變、陰影等引起的誤判。用這種方法解 得的相位,準(zhǔn)確、方便、算法簡(jiǎn)潔,但是需要另外增加若干輔助光柵條紋,這樣測(cè)量時(shí)速度較 慢,提高了對(duì)光柵設(shè)備的要求,增加了系統(tǒng)的硬件成本和時(shí)間成本。
【發(fā)明內(nèi)容】
[0007] 本發(fā)明所要解決的技術(shù)問題在于,提供一種基于投影儀散焦解相位的光柵投影三 維快速測(cè)量方法,對(duì)散焦后的二值輔助光柵進(jìn)行二值標(biāo)準(zhǔn)化,改善了灰階碼的準(zhǔn)確性,提高 了絕對(duì)相位的質(zhì)量。
[0008] 為解決上述技術(shù)問題,本發(fā)明提供一種基于投影儀散焦解相位的光柵投影三維快 速測(cè)量方法,包括如下步驟:
[0009] (1)利用計(jì)算機(jī)生成大小為M行N列的標(biāo)準(zhǔn)正弦光柵圖像I,每點(diǎn)的灰度計(jì)算公式 為:
[0011] 其中,I(i,j)為光柵圖像I在第i行第j列處的灰度值,P為光柵條紋周期,供為 光柵的相移量;
[0012] (2)I經(jīng)抖動(dòng)算法處理生成二值抖動(dòng)光柵圖D,D的大小與I相同;
[0013] (3)利用計(jì)算機(jī)生成大小為M行N列的二值輔助光柵圖G和一幅額外二值光柵圖 F,即:
[0015] 其中,F(xiàn)(i,j)為光柵圖像F在第i行第j列處的像素值;
[0016] (4)將二值抖動(dòng)光柵D、二值輔助光柵G和額外二值光柵F通過投影儀散焦投射到 被測(cè)目標(biāo)上,用攝像機(jī)采集變形光柵條紋,得到大小為r行c列的圖像,其中D散焦后的正 弦光柵可以表示為:
[0017] In (x,y) =Ir (x,y) +1;/ (x,y)cos[ <i> (x,y) +2nn/4]
[0018] 其中,n=0, 1,2, 3,In(x,y)為第n幅圖像的灰度值,I' (x,y)為條紋光強(qiáng)的背 景值,I" (x,y)為調(diào)制強(qiáng)度,巾(x,y)為待求的主值相位分布,(x,y)表示變形光柵圖像中 各像素點(diǎn)的二維坐標(biāo),取值范圍分別為:Kx<r,l<y<c;
[0019] (5)利用四步相移法求解主值相位<i> (x,y):
[0021] (6)將G散焦后的輔助光柵圖Gd和F散焦后的額外光柵圖Fd上所有像素點(diǎn)的值 進(jìn)行比較,得到標(biāo)準(zhǔn)化后的輔助光柵圖Gnd可以表示為:
[0023] 其中,(X,y)表示光柵圖中每個(gè)像素點(diǎn)的二維坐標(biāo);
[0024] (7)對(duì)標(biāo)準(zhǔn)化后的輔助光柵圖進(jìn)行編碼,通過對(duì)比就可以得到最細(xì)的光柵條紋,即 相移光柵的周期次數(shù),利用灰階碼法將主值相位進(jìn)行相位展開得到絕對(duì)相位0 (x,y):
[0025] 0 (x,y) = (x,y)+2k(x,y)n,
[0026] 其中k(x,y)為整數(shù),表示(x,y)點(diǎn)所處的光柵條紋周期次數(shù)。
[0027] (8)對(duì)攝像機(jī)和投影儀進(jìn)行標(biāo)定,獲取投影儀與攝像機(jī)的對(duì)應(yīng)像素點(diǎn)對(duì);根據(jù)空 間交匯法求得目標(biāo)物體的三維坐標(biāo)信息。
[0028] 優(yōu)選的,步驟(3)中增加一幅額外的二值光柵,用于步驟(6)中散焦的輔助光柵標(biāo) 準(zhǔn)化過程。
[0029] 優(yōu)選的,步驟(4)中使用投影儀DLPLightCrafter4500散焦投影二值光柵,既發(fā) 揮了該投影儀的快速投影特性,又使得散焦后的正弦光柵不失正弦性。
[0030] 優(yōu)選的,優(yōu)選的,步驟(8)的空間交匯法具體步驟為:
[0035] 其中,(UpVl)為攝像機(jī)圖像坐標(biāo)系中的任一點(diǎn)坐標(biāo),(u2,v2)為投影儀圖像坐標(biāo)系 中對(duì)應(yīng)的點(diǎn)坐標(biāo),02(Ul,Vl)為標(biāo)定過程中水平和垂直光柵圖像的解包裹相位, W為光柵圖像的條紋周期數(shù),ww2分別為投影儀在水平和豎直方向上的分辨率,s。:、5。2為 比例系數(shù),HTJ為攝像機(jī)內(nèi)外參矩陣,'[1?。2T』為投影儀內(nèi)外參矩陣,[XYZ]為 待測(cè)目標(biāo)物體的三維坐標(biāo)。
[0036] 本發(fā)明的有益效果為:屬于一種二值光柵散焦技術(shù),在實(shí)時(shí)三維測(cè)量系統(tǒng)中,DLP 投影儀接受的始終是二值圖像而非灰度圖像,因此相機(jī)采集各圖像通道數(shù)據(jù)時(shí)曝光時(shí)間可 以設(shè)置為遠(yuǎn)小于通道的持續(xù)時(shí)間,使得測(cè)量速度達(dá)到投影儀的最大刷新頻率,得到較大提 升;投影儀無需非線性校正;增加一幅額外的二值光柵圖,用來解相位的散焦輔助光柵圖 可以準(zhǔn)確地轉(zhuǎn)換為標(biāo)準(zhǔn)二值分布,從而得到求解絕對(duì)相位的精確灰階碼,克服了復(fù)雜表面 目標(biāo)絕對(duì)相位不精確的問題,提高了相位質(zhì)量。
【附圖說明】
[0037] 圖1是本發(fā)明的方法流程圖。
[0038] 圖2是本發(fā)明的測(cè)量系統(tǒng)結(jié)構(gòu)圖。
[0039] 圖3是本發(fā)明的二值化方法示意圖。
[0040] 圖4是本發(fā)明的二值光柵示意圖,(a)-(e)是輔助光柵示意圖,(f)是額外光柵示 意圖。
[0041] 圖5是本發(fā)明的攝像機(jī)采集投影到兩只手上的相移正弦光柵圖。
[0042]圖6是本發(fā)明的攝像機(jī)采集投影到兩只手上的最窄的二值輔助光柵圖。
[0043]圖7是本發(fā)明的攝像機(jī)采集投影到兩只手上的最寬的二值輔助光柵圖。
[0044]圖8是本發(fā)明的攝像機(jī)采集投影到兩只手上的額外二值光柵圖。
[0045] 圖9是本發(fā)明的仿真的散焦后二值輔助光柵圖和額外光柵圖的強(qiáng)度分布圖。
[0046] 圖10是本發(fā)明的兩只手的絕對(duì)相位圖。
[0047] 圖11是本發(fā)明的兩只手的絕對(duì)相位圖的立體視圖。
【具體實(shí)施方式】
[0048] 在Windows操作系統(tǒng)下選用MATLAB作為編程工具設(shè)計(jì)生成所需的光柵,選用 VisualStudio作為編程工具處理攝像機(jī)采集到的變形光柵。該實(shí)例采用人手作為被測(cè)物 體,利用一幅額外的二值光柵圖可以得到比較精確的含有三維信息的絕對(duì)相位分布,并生 成三維點(diǎn)云數(shù)據(jù)。
[0049] 如圖1所示,為本發(fā)明的方法流程圖,包括如下步驟:
[0050] (1)利用計(jì)算機(jī)生成大小為M行N列的標(biāo)準(zhǔn)正弦光柵圖像I,每點(diǎn)的灰度計(jì)算公式 為:
[0052] 其中,I(i,j)為光柵圖像I在第i行第j列處的灰度值,p為光柵條紋周期,供為 光柵的相移量;
[0053] (2)I經(jīng)抖動(dòng)算法處理生成二值抖動(dòng)光柵圖D,D的大小與I相同;
[0054] 如圖4所示,為二值光柵示意圖,(a)-(e)是二值輔助光柵示意圖,(f)是額外的二 值光柵示意圖。
[0055] (3)利用計(jì)算機(jī)生成大小為M行N列的二值輔助光柵圖G和一幅額外二值光柵圖 F,即:
[0057] 其中,F(xiàn)(i,j)為光柵圖像F在第i行第j列處的像素值;
[0058] 如圖5-8所示,為攝像機(jī)采集投影到兩只手上的光柵圖,其中分別