王浩淼,宋金淼,崔清源,李躍鵬,張子晨,苗 豐
(大連民族大學(xué) a.計(jì)算機(jī)科學(xué)與工程學(xué)院;b.大連市民族文化數(shù)字技術(shù)重點(diǎn)實(shí)驗(yàn)室,遼寧 大連 116605)
赫哲族是我國人口較少的民族之一,有語言,無文字[1],非物質(zhì)文化遺產(chǎn)非常豐富,通過口耳相傳的形式保留下來。在“互聯(lián)網(wǎng)+”的時(shí)代,通過數(shù)字化技術(shù)將赫哲族非物質(zhì)文化遺產(chǎn)永久保存,這是研究和保護(hù)赫哲族文化的重要內(nèi)容之一。
全景圖像是一種基于若干普通圖像序列,通過拼接融合而得到的具有超廣視角的特殊平面圖像。利用圖像融合算法將一個(gè)場景內(nèi)多張不同角度的局部掃描圖像進(jìn)行拼接,再通過投影計(jì)算將二維全景圖像投影在空間表面上,使二維圖像具備了能夠?qū)崿F(xiàn)360°視角的三維觀看效果,即構(gòu)造水平方向360°環(huán)視、垂直方向180°俯仰的立體環(huán)境[2]。這種技術(shù)相較于傳統(tǒng)的三維建模技術(shù)來說,在博物館、建筑風(fēng)貌和民族景點(diǎn)等方面的數(shù)字化展示上,有著快速、真實(shí)、高效等優(yōu)點(diǎn)。虛擬漫游是通過在各場景內(nèi)添加交互熱點(diǎn)和鏈接,將各個(gè)全景場景按照真實(shí)世界的空間位置進(jìn)行整合排列,來實(shí)現(xiàn)漫游系統(tǒng)中各個(gè)地點(diǎn)的任意跳轉(zhuǎn)和類型豐富的交互功能。利用全景虛擬漫游技術(shù)對赫哲族文化進(jìn)行數(shù)字化保護(hù),不僅能將赫哲族的各種展館、村落完整的在計(jì)算機(jī)和移動(dòng)設(shè)備上展示出來,也能為全國乃至全世界想要了解赫哲文化和當(dāng)?shù)厝宋娘L(fēng)貌的人們提供一種直觀而又便捷的途徑。全景圖像的拼接融合一般有以下幾個(gè)步驟:
(1)將從真實(shí)世界中獲取的一組圖像以一定方式投影到統(tǒng)一的空間面(本案例選用球面投影),使這一組圖像具有統(tǒng)一的空間坐標(biāo)參數(shù);
(2)在選定的投影空間面對相鄰圖像進(jìn)行比較,在重合位置選定用于匹配的特征點(diǎn),并基于這些特征點(diǎn)對準(zhǔn)圖像;
(3)將圖像重疊的區(qū)域進(jìn)行融合處理,拼接成全景圖像,并輸出球面圖像的二維平面展開圖。
采集圖像之前,首先對采集地點(diǎn)做出詳細(xì)的規(guī)劃。以黑龍江省同江市作為中心,使用專業(yè)掃描攝相機(jī)獲取室內(nèi)和地面圖像數(shù)據(jù),無人機(jī)[3]掃描空中場景,覆蓋街津口和八岔這兩大赫哲族鄉(xiāng),并加入了周邊具有當(dāng)?shù)靥厣L(fēng)貌的場景。采集過程中,角度相鄰的圖像之間保留25%的重合度,在后續(xù)的圖像拼接融合計(jì)算中,計(jì)算機(jī)才能充分識別并提取出足夠準(zhǔn)確的特征點(diǎn),保證最終輸出圖像的質(zhì)量。將采集的圖像按場景進(jìn)行分組,并統(tǒng)一進(jìn)行曝光、色調(diào)和其他細(xì)節(jié)等方面的調(diào)整,以避免圖像融合時(shí)產(chǎn)生接縫,同時(shí)保證最大程度的還原場景原貌,全景掃描示意圖如圖1。地面場景以正常視角進(jìn)行立體展示,而空中場景則是以高空俯瞰的特殊視角展示。
在圖像投影方式上,目前主要有柱面全景、立方體全景和球形全景這三種形式。由于球形全景最符合人們的觀察習(xí)慣,無論任何場景都能適用,且方便在計(jì)算機(jī)中展開成二維平面圖像存儲(chǔ),所以選擇了球形全景作為標(biāo)準(zhǔn)來進(jìn)行全景圖像的采集與拼接融合如圖2。采用基于球面投影的全景圖像生成技術(shù),對無人機(jī)和攝相機(jī)拍攝的若干張?jiān)紙D像進(jìn)行拼接融合生成球面展開圖,再將二維平面的全景圖進(jìn)行球面反投影計(jì)算以實(shí)現(xiàn)三維實(shí)景展示。
a) 地面全景掃描
b) 空中全景掃描
圖2 球形全景圖像投影示意圖
將獲取的圖像數(shù)據(jù)投影至球面模型上進(jìn)行合成得到球形全景圖。球形全景可以實(shí)現(xiàn)參與者在照相機(jī)的視點(diǎn)任意角度、任意方向的觀察場景。由于球面全景在計(jì)算機(jī)中存儲(chǔ)結(jié)構(gòu)的限制,一般對球形全景圖在俯仰角和方位角上進(jìn)行采樣處理,展開成寬高比為2:1的平面圖像。球面投影模型能避免空間不足的缺點(diǎn),不僅能完整的表現(xiàn)全景空間,能夠搜索和反映空間中的所有方向,且它在獨(dú)立的球坐標(biāo)系下還能夠僅用方位角和俯仰角來表示圖像上的任意一點(diǎn),這種方法可以很好地完成圖像的存儲(chǔ)和漫游時(shí)的截取工作,這是球面模型最大的優(yōu)點(diǎn)。
攝像機(jī)獲取的反映360°全景的序列圖像是在不同角度下拍攝的,直接拼接時(shí)視覺一致性會(huì)收到嚴(yán)重破壞,因?yàn)樵谥睾蠀^(qū)域會(huì)產(chǎn)生局部扭曲變形。視覺一致性要求首先把圖像統(tǒng)一投射在球面上,完成球面正投影后再進(jìn)行拼接才能得到無畸變的全景圖像。投影平面展開圖如圖3 ,其中圖3(a)為原始圖像、圖3(b)為平視層球面展開圖、圖3(c)為仰視層球面展開圖。平面一像素點(diǎn)設(shè)為p(x,y),在球面展開圖上對應(yīng)的點(diǎn)為ps(xs,ys),在球面半徑一定時(shí),球面展開平面圖像的形狀只與俯仰角有關(guān)。
球面正投影算法是將所有的實(shí)景圖像分別投影在一個(gè)球面上,由拍攝所得實(shí)景圖像經(jīng)球面正投影算法得到球面圖像。設(shè)攝像機(jī)坐標(biāo)系為Oc-xcyczc,世界坐標(biāo)系為Ow-xwywzw,其中Oc、Ow為各自坐標(biāo)系原點(diǎn),攝相機(jī)的拍攝方向?yàn)?α,β),任意一個(gè)實(shí)景內(nèi)像素點(diǎn)p(x,y)在球面全景圖像上對應(yīng)點(diǎn)為p'(x',y'),點(diǎn)p(x,y)在攝像機(jī)坐標(biāo)系中的左邊為(x,y,f),其在世界坐標(biāo)系下的左邊為(xp,yp,zp),則有:
(1)
球面空間坐標(biāo)系中,過點(diǎn)O與點(diǎn)P的直線參數(shù)方程可以表示為:
(2)
聯(lián)立球面方程表達(dá)式(2)可計(jì)算出參數(shù)
(3)
計(jì)算球面坐標(biāo)之后,還需要將圖像轉(zhuǎn)化為二維坐標(biāo),即將球面展開為平面,才能方便在計(jì)算機(jī)中存儲(chǔ)。
a)原始圖像 b)平時(shí)層球面展開圖
(c)仰視層球面展開圖
圖3投影平面展開原理示意圖
p(x,y)和p'(x',y')的關(guān)系,記為
Δ=ysinαcosβ-xsinβ-fcosαcosβ。
(4)
由公式(3)~(4)推導(dǎo)得出如下結(jié)論:
當(dāng)Δ≥0,z'p=0時(shí),
(5)
當(dāng)Δ<0,z'p<0時(shí),
(6)
即通過的正負(fù)值來判定俯仰層展開圖像與原始圖像相同位置坐標(biāo)點(diǎn)的對應(yīng)關(guān)系。實(shí)際圖像轉(zhuǎn)換效果如圖4。
a) 俯仰層平面展開示意圖
b) 平視層平面展開示意圖
控制點(diǎn)識別算法采用SIFT圖像特征提取算法,利用這種算法可以不受圖像旋轉(zhuǎn)、縮放變換的影響,也不受圖像本身色差、圖像噪點(diǎn)的影響,具有很強(qiáng)的穩(wěn)定性。為達(dá)到這個(gè)效果,需要在每個(gè)自然特征點(diǎn)中利用圖像梯度函數(shù)得到一個(gè)基準(zhǔn)方向,這個(gè)基準(zhǔn)方向?qū)τ诿總€(gè)特征點(diǎn)都是不同的,并且是穩(wěn)定存在的。為得到這個(gè)基準(zhǔn)方向,首先要得到待測特征點(diǎn)的尺度值,然后通過極值搜索二維圖像I(x,y),在符合上述尺度值中的空間中通過圖像與高斯核卷積可得式(7)[4],
L(x,yσ)=G(x,y,σ)×I(x,y)。
(7)
式中:(x,y)為圖像的像素位置;σ為尺度空間因子;G為高斯卷積函數(shù)。下一步使用有限差分的方法,計(jì)算特征點(diǎn)周圍每個(gè)點(diǎn)(x,y)的梯度方向δ(x,y)和大小m(x,y),用于特征點(diǎn)匹配,
(8)
(9)
δ(x,y)=((θ(x,y)+π)%2π)×36。
(10)
對于計(jì)算機(jī)識別不準(zhǔn)確的特征點(diǎn)可以再次進(jìn)行人工調(diào)整,或者刪除一些錯(cuò)誤的特征點(diǎn)如圖5。
圖5 SIFT算法識別特征點(diǎn)
圖像融合常用的算法為平均疊加法,即直接對圖像進(jìn)行平均疊加。由于圖像之間往往存在亮度差,所以這種方法明顯會(huì)出現(xiàn)拼接縫隙。故而掃描和后期處理時(shí)要注意曝光的一致性,掃描時(shí)使用手動(dòng)參數(shù),在自動(dòng)參數(shù)下要開啟曝光鎖定。
加權(quán)函數(shù)法能有效解決縫隙問題,是一種平滑的融合技術(shù),但拼合區(qū)往往出現(xiàn)疊影模糊現(xiàn)象,故而要注意拍攝時(shí)的視差矯正,保證鏡頭始終處于視點(diǎn)中心位置,加權(quán)法公式
(11)
式中:pi(x',y')是第i幅圖像在對應(yīng)點(diǎn)p(x,y)的值;wi為線性權(quán)重函數(shù)。中心為1,邊界為0[5]。使用這種算法可以讓融合后的圖像更加自然。
以其中一個(gè)地點(diǎn)為例,在空間位置相鄰的兩張圖像之間的重合區(qū)域中,識別出若干特征點(diǎn),并在這些特征點(diǎn)之中選取相似的特征點(diǎn)作為圖像拼接的控制點(diǎn)進(jìn)行匹配。將所有的圖像都拼接完后,再對相鄰圖像的邊緣進(jìn)行融合,消除拼接痕跡,并輸出二維平面展開圖。對于算法識別不正確的特征點(diǎn),則需要手動(dòng)調(diào)整以保證圖像融合沒有錯(cuò)位現(xiàn)象如圖6。
a) 球形全景拼接示意圖
b) 圖像邊緣融合示意圖
球面投影是以透鏡中心為虛擬觀察點(diǎn),以焦距為半徑對應(yīng)的球體表面為投影面進(jìn)行球形投影的。二維的平面全景圖像需要經(jīng)過球面反投影計(jì)算才能夠以三維立體的形式實(shí)現(xiàn)如圖2所示的效果。照片上任意一點(diǎn)p(x,y)投影到球面的坐標(biāo)pi(x',y')滿足如下對應(yīng)關(guān)系,其中f為相機(jī)焦距[6]。
(12)
(13)
經(jīng)過反投影計(jì)算后,被拉伸扭曲的圖像才能以正常的狀態(tài)展示出來。
另外,本虛擬漫游系統(tǒng)的開發(fā)是基于網(wǎng)頁形式制作的,由于單張全景圖像的存儲(chǔ)體積較為龐大,為了保證場景的載入速度,可以對圖像進(jìn)行切片。將一張全景圖裁切成多張較小的圖片,僅加載視野所及的部分以提高加載速度,在進(jìn)行瀏覽時(shí)能夠大大提升觀賞體驗(yàn)。
虛擬漫游系統(tǒng)是將拼接融合生成的全景圖像作為場景,經(jīng)反投影計(jì)算后,用超鏈接將一個(gè)個(gè)獨(dú)立的場景連接,為其添加各種交互熱點(diǎn)[7]并封裝成一個(gè)整體。
系統(tǒng)主要采用基于XML的Krpano語言編寫,Krpano語言保留了XML的語法并融入了自己的標(biāo)記元素,是一種專門用于開發(fā)全景漫游的語言。場景內(nèi)的交互式熱點(diǎn)則是使用HTML語言的超鏈接功能實(shí)現(xiàn)的。通過對熱點(diǎn)圖標(biāo)指定相應(yīng)的超鏈接,實(shí)現(xiàn)場景跳轉(zhuǎn)、細(xì)節(jié)圖片、影音介紹等交互功能。
系統(tǒng)界面如圖7。場景目錄功能可以讓用戶不受限制地跳轉(zhuǎn)到任意場景,具有很高的自由度,如果用戶想體驗(yàn)沉浸式的虛擬漫游,則可以通過點(diǎn)擊場景內(nèi)設(shè)置的熱點(diǎn)鏈接標(biāo)記實(shí)現(xiàn)一步一景的瀏覽,系統(tǒng)提供的自動(dòng)導(dǎo)覽和細(xì)節(jié)展示功能方便用戶對漫游內(nèi)容的快速了解,這些交互熱點(diǎn)功能是虛擬漫游系統(tǒng)的主要功能。另外,部分場景內(nèi)部嵌有可以實(shí)時(shí)播放的視頻,與虛擬場景融為一體,十分新穎。
圖7 系統(tǒng)界面
系統(tǒng)交互功能如圖8。界面右上角為附加功能開關(guān),包括背景音樂、語音講解、電子地圖等,其中電子地圖可以幫助用戶確定當(dāng)前場景所在位置,讓用戶始終不會(huì)失去方向,背景音樂則可以增添環(huán)境氛圍,語音講解則可以使用戶更快地了解當(dāng)前場景的展示內(nèi)容。
圖8 系統(tǒng)交互功能
正上方為當(dāng)前場景的滾動(dòng)文字介紹,鼠標(biāo)移入即可暫停滾動(dòng),移出后恢復(fù)滾動(dòng)效果,點(diǎn)擊右鍵還可以切換不同的視角如圖9。這些附加功能很好的豐富了系統(tǒng)的展示效果,達(dá)到了全面、準(zhǔn)確、真實(shí)的展示目的。在安裝有此系統(tǒng)的計(jì)算機(jī)上配合投屏APP使用,可以在移動(dòng)端對其進(jìn)行同步控制,同時(shí)還能部署在網(wǎng)絡(luò)服務(wù)器為遠(yuǎn)程用戶提供在線瀏覽,無論在線上還是線下都用很好的應(yīng)用價(jià)值。
圖9 小行星視角
環(huán)物掃描的方法與全景掃描以相機(jī)為中心的方法相反,它是讓被攝物體處于中心位置,掃描設(shè)備去圍繞物體(或設(shè)備固定,被攝物體自轉(zhuǎn))進(jìn)行環(huán)繞拍攝。將掃描的若干張圖像作為序列幀,在計(jì)算機(jī)上按順序播放,利用鼠標(biāo)拖動(dòng)來控制正反方向,不通過三維建模就能觀察到物體的各個(gè)角度。相對于使用三維軟件建模和基于二維圖像的三維重建算法,這種方式同樣具有低成本、高效等優(yōu)點(diǎn)。
目前這種技術(shù)逐漸地被廣泛應(yīng)用于商品介紹,如今也為民族文化保護(hù)的某些方面提供了新的途徑和便捷方法,與全景虛擬漫游技術(shù)相結(jié)合能發(fā)揮出很好的效果。
通過多鏡頭的全景相機(jī)記錄同一時(shí)間地點(diǎn)的視頻信息,并對每一幀同步進(jìn)行投影計(jì)算和拼接融合即可得到長寬比為2:1的球面展開視頻,再進(jìn)行球面反投影計(jì)算得到立體的觀看效果。全景視頻可以360°全方位的展示出一個(gè)地點(diǎn)一段時(shí)間內(nèi)的動(dòng)態(tài)信息,在民族文化保護(hù)方面也具有很好的應(yīng)用前景。
近些年來,雖然關(guān)于對文化遺產(chǎn)保護(hù)的關(guān)注度有所提升,但是文化遺產(chǎn)作為一個(gè)重要的歷史問題的相關(guān)解決方案還是有所欠缺,現(xiàn)有的先進(jìn)技術(shù)以及專門對文化遺產(chǎn)保護(hù)的特有設(shè)施還不夠完善和普及,這就不得不迫使文化遺產(chǎn)的保護(hù)工作還有很長的一段距離[8]。
針對赫哲族民族文化傳承的現(xiàn)狀,主要闡述了如何通過采集數(shù)據(jù)、球面投影計(jì)算、拼接融合等步驟生成全景圖像的計(jì)算機(jī)圖像處理技術(shù),來開發(fā)全景虛擬漫游系統(tǒng),并將其應(yīng)用到對赫哲族民族文化的數(shù)字化保護(hù)上。這種方式可以很好且全面的記錄和保存赫哲族現(xiàn)存的建筑風(fēng)格、居住環(huán)境、展館藏品、習(xí)俗等方面的傳統(tǒng)文化,還可以通過各種數(shù)字移動(dòng)設(shè)備直觀的展示和傳播,使更多的人了解赫哲族、認(rèn)識赫哲族。
這項(xiàng)方案雖然是一種快速高效的采集、制作、展示的技術(shù),但是它仍然有自己的不足之處。它僅以實(shí)景圖像為參考基礎(chǔ),且在同一點(diǎn)位上僅能移動(dòng)視角,所以還是存在一定的局限性,但這仍是目前在民族文化保護(hù)工作上的一種新的方案和思路。