專利名稱:平面圖像全景重建立體圖像的方法
技術(shù)領(lǐng)域:
本發(fā)明屬于光學(xué)顯示技術(shù)領(lǐng)域,涉及一種平面圖像重建立體圖像的方法。
隨著光柵立體成像技術(shù)的日趨成熟,三維立體圖片以其觀看自由、清晰、立體感強的特點開始得到普及。三維立體圖片的圖像設(shè)計簡稱立體設(shè)計,到目前為止,立體設(shè)計主要采用立體攝影、三維建模多視角渲染技術(shù)或圖層平移技術(shù)。
立體攝影需要在多個視差點對模特進行拍攝,特別是對非靜物模特如人物、動物等必須采用立體相機,由于專業(yè)立體相機體積較大,操作便利性差,不利于精彩瞬間的抓拍,拍攝效果始終不如專業(yè)平面攝影,因此不少攝影師不愿主動運用立體拍攝手段,阻礙了立體攝影在商業(yè)上的廣泛應(yīng)用。
三維建模多視角渲染技術(shù)需要建立立體模型,貼圖并布置燈光,設(shè)置照相機在多個視差點對模型進行渲染,獲得數(shù)張視差序列圖像,可以得到非常好的立體效果,但不易制作生活中真實的立體場景,其運用存在一定的局限,這種方法實際上也應(yīng)歸屬于立體攝影的范疇。
圖層平移技術(shù)在當(dāng)前的立體設(shè)計中應(yīng)用最為廣泛,其實質(zhì)是將一張平面圖像經(jīng)過分層偏移達到空間拉伸的目的,由于簡單易行,幾乎所有的設(shè)計人員都將其作為主要的設(shè)計手段,缺點在于,其立體感是平面分層的,缺乏空間連續(xù)性。盡管可以增加每個圖層邊緣在深度上的平滑過渡,來消除主體、前景、背景的片狀感,或者通過斜切、橫向壓縮將圖層在空間的任意方向拉伸,進一步改善圖層平移技術(shù)的設(shè)計質(zhì)量,但由于其設(shè)計原理是基于對圖層“面”、而不是對空間“點”進行深度定位,無法設(shè)計出如立體攝影一樣的三維空間感。
本發(fā)明公開的平面圖像全景重建立體圖像的方法,結(jié)合了三維建模技術(shù)、圖像幾何變換技術(shù)和圖像視差變換技術(shù),目的是提供一種將平面圖像全景重建成高精度立體圖像的方法。
全景重建的原理在于,針對平面圖像的空間分布,建立圖像每個像素點的深度列表,根據(jù)深度列表對平面圖像的每個像素進行視差位移處理,獲得多幅視差序列圖像,然后將視差序列圖像立體合成。盡管由平面圖像建立的深度列表并不能完全真實地反映圖像實際的立體深度,考慮到平面圖像本身存在強烈的深度心理暗示,完全可以逼真地再現(xiàn)立體空間。平面圖像全景重建立體圖像的過程包括選擇原始圖像,建立深度列表,全景重建視差圖像,立體合成。
下面詳細(xì)說明實現(xiàn)全景重建的每個過程和方法。
第一步,選擇原始圖像。就是確定需要進行全景重建的平面圖像,要求其銳度好、層次分明、清晰度高,并已進行數(shù)字化。將原始圖像命名為T1,第i列第j行像素值T1(i,j)可以用三色(r,g,b)或者四色(c,m,y,k)表示。
第二步,建立深度列表。深度列表是全景重建的關(guān)鍵,深度列表z(i,j)代表像素點T1(i,j)的立體深度相對值,為了方便對深度列表進行編輯,我們把z(i,j)的值域線性變換到可用一個字節(jié)表示的整數(shù)范圍,即0至255之間的整數(shù),則深度列表可以轉(zhuǎn)換成與圖像T1幅面相同的8bit灰度圖像Z1。由圖像T1建立灰度圖Z1的方法有三種深度直接填充,實物模型輔助提取深度,三維模型輔助提取深度。
在多數(shù)情況下,我們可以根據(jù)圖像T1直接判斷畫面各部分內(nèi)容的相對深度,利用圖像處理工具Photoshop軟件的選取工具選擇區(qū)域范圍,填充與深度相應(yīng)的灰度值,建立圖像Z1??梢猿浞掷镁庉嫮h(huán)境中的漸變填充、復(fù)制、加深、減淡、模糊等工具修改局部灰度值,該方法雖然精度低,但使用十分方便,能得到較好的立體效果。
實物模型輔助提取深度的方法,是指用姿態(tài)相同的實物模型大致復(fù)原圖像T1的空間布置,采用直尺測量、光柵投影等各種方法獲取實物模型表面各點的立體深度,填充到深度列表中,并通過線性插值建立完整的灰度圖像Z1。
三維模型輔助提取深度的方法是本發(fā)明描述的重點,這種方法不僅容易實現(xiàn),而且立體再現(xiàn)精度高、效果好。在各種類型的平面圖像中,人像的立體再現(xiàn)需求最為廣泛,實現(xiàn)最為困難,因此我們主要以平面人像建立深度列表的過程來說明方法要點,其它類型圖像深度列表的建立可以參照這一過程實現(xiàn)。
首先,根據(jù)圖像T1的人物形象,如性別、高矮、胖瘦等,在三維動畫軟件中建立三維模型,調(diào)整如頭、頸、軀干、四肢等部分的比例,以及鼻梁高低、眼眶凹陷程度等細(xì)節(jié),不必耗費過多精力,只要與人物形象大致相似即可,并且不需考慮貼圖屬性;第二,仔細(xì)調(diào)整模型的姿態(tài),并在前視圖即XY坐標(biāo)中實時觀察,直到模型姿態(tài)與圖像T1的人物姿態(tài)盡量相同為止,包括肢體的伸展?fàn)顩r,面部、身體的側(cè)姿角度等都要相一致,因為我們需要根據(jù)人物模型在前視圖中可見點的立體深度即Z坐標(biāo)值,來標(biāo)定圖像T1中人像上各點的立體深度,而對于頭發(fā)、衣服等難于進行一致性調(diào)整的部分可以不作處理,在以后作視差變換時,根據(jù)立體觀察反饋的結(jié)果直接修改圖像Z1的灰度值;第三,在前視圖中渲染出一幅模型姿態(tài)圖像F備用;第四,從三維動畫軟件中直接讀取模型在前視圖中各可見點的Z坐標(biāo)值,建立深度列表,并線性轉(zhuǎn)化成灰度圖像Z1,如果沒有直接獲取Z坐標(biāo)值的功能,可以采用平面截斷法建立灰度圖像Z1,這將在下面進一步說明。
建立人物三維模型最簡單的方法是采用Metacreations公司推出的Poser軟件,該軟件提供了大量的人體造型及動物三維模型,可以直接選用,在Poser環(huán)境中進行姿態(tài)調(diào)整也十分方便。Autodesk公司開發(fā)的3D Studio MAX系列軟件也是三維建模的理想工具,熟悉和理解它對全景重建技術(shù)的掌握是非常有用的。
平面截斷法可以幫助我們建立灰度圖像。在三維坐標(biāo)中,建立一個垂直于Z軸的平面P,設(shè)置適當(dāng)?shù)念伾怪c模型具有極大的反差。平面P可以在Z向移動,當(dāng)模型與平面相交時,后面的部分被遮擋,只能渲染出模型的前部。設(shè)定平面P的初始位置、步長,讓平面沿Z軸向外移動,在前視圖中渲染M幀動畫圖像,圖像編號為1至M,M不大于255。創(chuàng)建一個與動畫圖像相同大小的灰度圖像Z1,將所有像素點的灰度值均設(shè)為0,對動畫圖像按編號從小到大的順序作如下處理對第m幅動畫圖像的所有像素點進行判斷,如果像素點在平面P上,不作處理,如果像素點在三維模型上,用灰度值m替代圖像Z1上對應(yīng)點的灰度值,m=1,2,3,…,M。對所有M幅動畫圖像處理完畢后,可得到一幅描述三維模型前視圖上所有像素點立體深度的灰度圖像Z1,整個過程需要編制計算機程序來實現(xiàn)。
為了便于圖像處理,原始圖像T1、模型前視圖F、灰度圖像Z1的大小和比例應(yīng)該一致,否則需要經(jīng)過像素插值變?yōu)橄嗤?。模型前視圖F與原始圖像T1各邊界或關(guān)鍵點的位置并不能完全一一對應(yīng),有時甚至有較大的差異,這說明灰度圖像Z1還不能真正描述原始圖像T1的立體深度,需要進行幾何變換來調(diào)整圖像Z1各像素點的位置。
鑒于灰度圖像Z1的特征輪廓不明顯,在幾何變換時需要參照模型前視圖F,建立模型前視圖F與原始圖像T1上各個關(guān)鍵點、特征輪廓之間的幾何映射關(guān)系,例如人物眼睛、鼻孔、手掌等輪廓線和關(guān)鍵點的位置,然后根據(jù)位置映射關(guān)系將灰度圖像Z1進行幾何變換。幾何變換只是改變像素點的位置,而沒有改變像素點的灰度值,比如眼睛的中心點,在圖像F上的坐標(biāo)為(i,j),在圖像T1上的坐標(biāo)為(i’,j’),圖像Z1坐標(biāo)為(i,j)點的灰度值代表了眼睛中心點的立體深度,經(jīng)過幾何變換后,移動到了位置(i’,j’),從而與圖像T1眼睛中心點真正對應(yīng)起來,因此,變換后的灰度圖像Z1精確地描述了原始圖像T1的相對深度。幾何變換會導(dǎo)致圖像Z1出現(xiàn)空白點,需要進行插值處理,共享軟件morpher可以完成灰度圖像的幾何映射變換。
第三步,全景重建視差圖像。接下來就可以根據(jù)灰度圖像Z1,將圖像T1經(jīng)視差位移處理全景重建出其余的視差序列圖像。與立體攝影相比較,圖像T1相當(dāng)于N幅視差序列圖像中的第一幅,全景重建的目的在于根據(jù)圖像T1還原出其它N-1幅序列圖。如果將圖像T1作為視差序列圖的中間圖像,在視差變換后的空白點填充處理中會引起一些不便。
由于視差的存在,圖像T1上的像素點T1(i,j)出現(xiàn)在其它視差圖上的位置坐標(biāo)為(i+offset,j),offset是視差位移量,與立體深度z(i,j)及視差圖像編號有關(guān)offset=[z(i,j)-z0]*direct*depth*f(z)*k其中,z(i,j)為像素點T1(i,j)的立體深度,z0為零視差點的立體深度,也就是說深度為z0的像素在各個視差圖像上出現(xiàn)的位置是相同的,z0一般可取值170;direct為視差變換的方向,取值-1或+1;depth是立體強度參數(shù),由立體設(shè)計者設(shè)定;f(z)是關(guān)于視差偏移量offset與立體深度z(i,j)之間非線性關(guān)系的修正函數(shù),在立體深度不是很大時,可以不考慮,直接取f(z)=1;k為被重建的視差圖像與原視差圖像編號差的絕對值,比如根據(jù)第1幅圖像重建第n幅圖像,則k=|1-n|。在本說明書中凡是涉及到立體深度時,我們均采用相對值而非絕對值,其靈活性和方便性是顯而易見的。
只要根據(jù)視差位移公式計算出圖像T1上每一個點在其它視差圖像中的位置,將像素值填充到該位置,即可重建全部N幅視差圖像,N值可以輕易超過30,而制造并使用30鏡頭的立體相機是相當(dāng)困難的。在重建視差圖像的過程中會遇到三種情況需要特別處理(1)圖像T1上多個不同的像素點視差位移后處于同一幅視差圖像的同一位置,需要判斷各點的立體深度z(i,j),選擇最前面也就是z值最大的像素填充到該位置。
(2)由于offset值的取整處理或像素橫向位移后產(chǎn)生一些空白點,主要出現(xiàn)在視差圖像的空間連續(xù)區(qū)域,也就是z值變化平緩的區(qū)域,需要根據(jù)周邊點的像素值線性插值填充。
(3)在視差圖像上立體深度不連續(xù)或者z值變化較劇烈的區(qū)域出現(xiàn)的空白點,其對應(yīng)的像素點由于空間遮擋的原因在圖像T1上不可見或不相關(guān),需要立體設(shè)計者依靠繪畫經(jīng)驗人工填充。
在立體攝影中,立體空間中每一點所成的像,在視差序列圖像中出現(xiàn)的位置是不同的,具有一定的橫向位移,這就是視差。其中有些點由于前后遮擋關(guān)系不會出現(xiàn)在所有視差圖像中,因此,在視差變換重建的圖像中,會出現(xiàn)大量的空白點,它們的顏色是未知的,需要根據(jù)實際情況填充,比如上面所說的(2)(3)兩種情況。這里需要解決的問題在于,如何保證所有視差圖像上人工填充區(qū)域之間具有立體相關(guān)性,如何減少人工填充的工作量。
有效的方法是,先根據(jù)圖像T1重建最后一幅視差圖像TN,對空白點進行插值填充和人工填充;同時,利用灰度圖像Z1對自身進行視差位移處理,建立與圖像TN對應(yīng)的灰度圖像ZN,對空白點進行插值填充和人工填充,這時,填充的灰度值代表圖像TN對應(yīng)點的立體深度。適當(dāng)?shù)剡x取視差變換方向direct的值,有助于簡化人工填充的過程,提高全景重建真實感。
在填充圖像TN的空白點之前,可以采用對眼方式、戴立體眼鏡方式觀察體視對圖像T1和TN,對立體深度不符合要求的地方,直接修改圖像Z1相應(yīng)區(qū)域的灰度值,再重建視差圖像TN,進行立體觀察,反復(fù)數(shù)次直到立體感符合要求為止,然后進行圖像ZN重建及空白點填充。視差圖像TN需人工填充的區(qū)域,其內(nèi)容在原始圖像T1中不存在,無論填充什么顏色,均不影響立體圖像的空間感和完備性,但是,為了突出真實感,立體設(shè)計者應(yīng)盡可能依據(jù)被遮擋部分的內(nèi)容來補充空白區(qū)。
在極大多數(shù)情況下,立體攝影的首、末兩幅圖像包含了中間圖像的所有信息,也就是說,中間視差圖像上的每一點,在圖像T1或Tn上均能找到相對應(yīng)的點。有了視差圖像T1、TN和灰度圖像Z1、ZN,我們可以重建出中間N-2幅序列圖像,這時,由于信息具有完備性,不需要對中間圖像進行人工填充,并且不需建立中間圖像對應(yīng)的灰度圖。重建中間圖像的具體方法是
根據(jù)灰度圖像Z1,將圖像T1進行視差變換,變換方向為direct,得到N-2幅視差圖像T2、T3、T4、…、Tn、…、TN-1;根據(jù)灰度圖像ZN,將圖像TN進行視差變換,變換方向為-direct,得到N-2幅視差圖像T’2、T’3、T’4、…、T’n、…、T’N-1。
圖像Tn和T’n實際上是從不同變換途徑得到的相同拍攝點的視差圖像,它們的空白點出現(xiàn)的位置不一樣,圖像Tn上的空白點,在圖像T’n上可以找到對應(yīng)點的顏色填充,反之也一樣。如果此時還存在極少量空白點,可以進行人工填充。到此為止,我們完成了所有視差序列圖像的全景重建過程。
最后,進行立體圖像的合成。將視差序列圖像合成為光柵立體圖像,可以采用光學(xué)立體合成,也可以采用數(shù)碼立體合成,具體可參考專利申請981193633或其它關(guān)于立體合成的文章。需要注意的是,direct所取的值不同,立體合成中視差圖像抽樣樣條的排列方向是不同的。
本發(fā)明所提供的全景重建方法可以將平面圖像直接轉(zhuǎn)化成非常逼真的立體圖像,立體景深任意可控,立體感優(yōu)于采用多鏡頭立體相機重新拍攝的效果,極大地拓展了立體圖片的應(yīng)用領(lǐng)域。全景重建方法的立體效果優(yōu)于圖層平移法,膚色質(zhì)感優(yōu)于三維模型貼圖渲染出來的立體圖像,完全可以取代專業(yè)立體相機。全景重建方法可以廣泛應(yīng)用于專業(yè)廣告的立體設(shè)計,特別是一些無法實現(xiàn)立體拍攝,或拍攝代價太高的地方,例如可以將國際品牌代言人的平面影像直接進行立體轉(zhuǎn)化。
下面給出三個實施案例。
實施例一,根據(jù)全景重建方法編制立體圖像設(shè)計軟件,功能模塊包括下面內(nèi)容。(1)簡單的三維模型編輯環(huán)境??梢詣?chuàng)建、編輯、修改三維模型,并能處理其它三維軟件如3D MAX、POSER建立的三維模型,能在視圖中渲染圖像,能讀取模型表面各點的三維坐標(biāo)。利用該模塊,可以參照平面圖像創(chuàng)建三維模型,建立深度列表,減少了對其它三維軟件的依賴。(2)平面截斷法立體深度提取。依照說明書前述方法創(chuàng)建該模塊,可以從3D MAX等軟件按平面截斷法渲染的動畫序列圖像中直接創(chuàng)建灰度圖像。(3)幾何映射變換。依照說明書前述要點編制的功能模塊,可以修正由三維模型建立的灰度圖像與平面圖像之間的對應(yīng)位置偏差,可以降低三維模型編輯及姿態(tài)調(diào)整的難度。(4)平面圖像編輯環(huán)境。具有圖層編輯、范圍選取、顏色填充、像素值修改等功能,可以直接選取平面圖像各個區(qū)域范圍,填充與立體深度相應(yīng)的灰度值,建立灰度圖像,還可以完成視差圖像空白點的人工填充。(5)視差圖像全景重建。依照說明書前述方法創(chuàng)建該模塊,可以設(shè)定立體強度參數(shù)、視差變換方向、視差圖像的幅數(shù),可以重建全部的視差圖像,并能完成空白點的線性插值。(6)立體觀察。在屏幕上顯示左右平鋪、上下平鋪或紅綠(或紅藍(lán))眼鏡等立體格式的圖像,采用對眼、液晶光閥眼鏡、濾色眼鏡等方式觀察立體圖像,反饋立體信息,及時修改灰度圖像。(7)立體合成。抽取各視差圖像的縱向樣條,重新排列合成光柵立體圖。應(yīng)用具備這些功能模塊的立體設(shè)計軟件,可以十分方便地將平面圖像轉(zhuǎn)換成立體圖像。一種隱含的軟件處理方式是,根據(jù)平面圖像和灰度圖計算出各視差序列圖像的每一行之后,直接進行光柵立體合成,而不輸出完整的視差序列圖像。
實施例二,將人物模特照片轉(zhuǎn)換成立體圖像。
在POSER中建立人物三維模型,存儲模型文件,輸入到3D MAX中,在前視圖中實時觀察,調(diào)整模型姿態(tài)與照片大致相同。創(chuàng)建一個與Z軸垂直的平面,按平面截斷法渲染200幀動畫序列圖像,根據(jù)這些動畫圖像創(chuàng)建灰度圖像,將灰度圖像進行幾何映射變換,修正灰度圖像與平面圖像之間對應(yīng)位置的偏差,然后設(shè)定立體強度參數(shù)、視差變換方向、視差圖像的幅數(shù),重建全部的視差圖像,并填充空白點。抽取各視差圖像的縱向樣條,重新排列合成光柵立體圖,復(fù)合立體光柵。
實施例三,將風(fēng)景照片轉(zhuǎn)換成立體圖像。
風(fēng)景照片的前后層次關(guān)系一般比較明顯,地面平鋪向遠(yuǎn)處延伸,可以選取地面范圍,將漸變灰度填充其中,其它景物景深比較好確定,直接選取景物的區(qū)域范圍,填充與立體深度相應(yīng)的灰度值,建立灰度圖像。根據(jù)灰度圖像計算風(fēng)景照片的每個像素點在其它視差圖像中的橫向位移量,填充像素值,重建全部視差序列圖像,最后進行立體合成。
本發(fā)明公開的全景重建方法,主要應(yīng)用于光柵立體圖片、激光全息圖片、立體電影、立體電視等立體圖像的設(shè)計,另一個重要應(yīng)用是開發(fā)立體圖像設(shè)計軟件。本發(fā)明的宗旨在于,根據(jù)平面圖像內(nèi)容建立所有像素的深度列表,利用深度列表值重建其它視差序列圖像,對缺失信息的空白點填充所需的顏色,理解本說明書需要掌握平面圖像處理及三維建模的基礎(chǔ)知識。本發(fā)明選取了三個實施案例來參照說明,專業(yè)人士根據(jù)本說明書提供的解決方案可以很容易寫出很多相關(guān)實施案例,本發(fā)明的意旨將包括與所附權(quán)利要求符合的所有實施例。
權(quán)利要求
1,一種全景重建方法,可以將一幅平面圖像直接轉(zhuǎn)化成可構(gòu)成立體圖像的視差序列圖像,其特征在于,根據(jù)平面圖像的空間分布,建立包含每個像素點立體深度的列表,利用深度列表計算平面圖像的每個像素在其它視差圖像中的橫向位移量,將像素值填充到這些視差圖像中,重建出所有視差序列圖像。
2,如權(quán)利要求1所述的方法,其特征還在于,平面圖像多個不同的像素點橫向位移后處于同一幅視差圖像的同一位置,需要判斷各像素點的立體深度z(i,j),選擇z值最大的像素填充到該位置。
3,如權(quán)利要求2所述的方法,其特征還在于,出現(xiàn)在視差圖像的空間連續(xù)區(qū)域的空白點,根據(jù)周邊點的像素值線性插值填充;出現(xiàn)在視差圖像立體深度不連續(xù)或者z值變化較劇烈區(qū)域的空白點,進行人工填充。
4,如權(quán)利要求3所述的方法,其特征還在于,重建視差圖像的順序為,先根據(jù)圖像T1和灰度圖Z1重建最后一幅視差圖像TN和灰度圖像ZN,對TN、ZN空白點進行填充,然后對圖像組T1、Z1及TN、ZN分別進行視差位移處理,重建出兩組視差序列圖像,視差圖像上出現(xiàn)的空白點,可以在另一組序號相同的視差圖像上找到對應(yīng)點填充。
5,如權(quán)利要求1所述的方法,其特征還在于,深度列表的值域線性變換到0至255之間的整數(shù),將深度列表轉(zhuǎn)換成8bit灰度圖像。
6,如權(quán)利要求1所述的方法,其特征還在于,直接選取平面圖像各個區(qū)域范圍,填充與立體深度相應(yīng)的灰度值,建立灰度圖像。
7,如權(quán)利要求1所述的方法,其特征還在于,根據(jù)平面圖像建立三維模型,調(diào)整三維模型的姿態(tài),建立前視圖的深度列表,并轉(zhuǎn)化成灰度圖像,對灰度圖像進行幾何映射變換,修正灰度圖像像素點的位置。
8,如權(quán)利要求7所述的方法,其特征還在于,灰度圖像采用三維模型平面截斷法建立。
全文摘要
本發(fā)明公開了一種平面圖像全景重建立體圖像的方法,其過程包括,選擇平面圖像,針對平面圖像的空間分布,建立每個像素的深度列表,根據(jù)深度列表對平面圖像的每個像素進行視差位移處理,重建全部視差序列圖像,將視差序列圖像立體合成。全景重建方法可以將平面圖像轉(zhuǎn)化成非常逼真的立體圖像,立體景深任意可控,極大地拓展了立體圖像的應(yīng)用領(lǐng)域。
文檔編號G06T17/00GK1567385SQ03137660
公開日2005年1月19日 申請日期2003年6月19日 優(yōu)先權(quán)日2003年6月19日
發(fā)明者鄧興峰, 張正輝, 游建軍 申請人:鄧興峰, 張正輝, 游建軍