國立宜蘭大學資訊工程研究所 碩士論文 Department of Computer Science and Information Engineering , National Ilan University Master Thesis

49  Download (0)

全文

(1)

國立宜蘭大學資訊工程研究所 碩士論文

Department of Computer Science and Information Engineering , National Ilan University

Master Thesis

以水平旋轉拍攝影片合成的動態環場影像 Animated Panorama from a Rotating Camera

研究生:楊坤銘

英文姓名:Kun-Ming Yang

指導教授:黃于飛 博士 Advisor:Fay Huang Ph. D.

中華民國九十九年八月

August, 2010

(2)
(3)
(4)
(5)

摘要

現有的環場影像普遍是經由靜態的影像接合而成,而靜態的影像會使原本動 態的景物只會停留在影像拍攝的瞬間,當運用於虛擬實境這類型的應用上時,整 體場景所呈現出來的真實度會大幅降低。本論文開發一個利用單一垂直軸旋轉所 拍攝的影片,製作成動態環場影像的系統,所謂的動態環場影像便是希望盡可能 以較少的影格儲存動態景物的資訊,期望只保留 20 ~ 30 個影格,使其得以連續 播放而又不失其真實性,並重現於環場影像之中。我們首先利用影片建構出一個 靜態的環場影像,並修補不屬於背景的前景區域,接著將片段的動態景物資訊製 做成頭尾連續的影片,再嵌入環場影像中,藉此保留住環場影像中動態景物的動 態資訊,讓環場影像於虛擬實境的應用更能達到栩栩如生的效果。

關鍵字:環場影像、影像接合、影像修補、視頻紋理

(6)

Abstract

Panoramic images are often generated by stitching multiple static images. This has become a common method used by various virtual reality applications. The drawback is however that it stores only static information of the scene. This thesis presents a newly developed system, which takes a single video sequence from a panning camera with respect to a vertical rotation axis, and generates a cylindrical panorama, embedded with a seamless looping video sequence based on users’

specifications. In case that there were some moving objects in the scene during video recording, and users would like to remove them from the resulting panoramic image.

The program provides an interface which allows users to specify regions to be removed, and the removed regions are replaced with background scene by exemplar-based image inpainting technique. We claim that the quality of our resulting animated panorama is satisfactory to virtual reality applications and the computation time is acceptable for practical use.

Keywords: Panoramic image, image/video registration, image inpainting, video texture

(7)

致謝

能夠從研究所順利地畢業,首先要感謝我的父母及家人給我的支持鼓勵,讓 我能夠專心在課業和研究上,同時也要感謝身邊的朋友們提供我意見,讓我可以 完成相關的研究,以及所有幫助過我的人,讓我得以完成學業。

接著要感謝我兩年來的指導老師,黃于飛黃老師,在我的實驗以及研究上細 心的指導,和我一起討論及研究解決問題方法,提供我不只課業方面的資訊,還 有生活上的一些訊息,讓我學習到許多事情。

再來感謝百忙之中抽空審閱我論文的口試指導委員,陳靜芳老師和陳偉銘老 師,在口試中悉心的指導,給我許多在研究上的建議和知識,讓我的論文更加完 善,研究更加充實。

最後,感謝實驗室的智浩、允浩、浩駿、宏儒、殷瑋學長、思慧學姊、汝琪 同學、均薇學弟和依如學妹,在課業上能夠互相砥礪、互相學習,生活上也互相 照顧、互相幫助,讓我的求學生涯更加多采多姿。

(8)

目錄

摘要... I Abstract ... II 致謝...III 目錄...IV 圖表目錄...VI

第一章 緒論...1

1.1 前言...1

1.2 研究動機...1

1.3 相關文獻探討...2

1.4 研究目標...4

1.5 論文架構...5

第二章 單中心圓柱型環場影像...6

2.1 環場影像的拍攝...6

2.2 影像接合...9

2.3 影像變形...12

第三章 影像修補與動態處理...18

3.1 影像修補...18

3.2 影片裁切與接合...22

第四章 實驗設計...29

4.1 實驗環境...29

4.2 實驗架構...29

第五章 實驗結果...31

5.1 環場影像接合結果...31

5.2 影像修補結果...32

5.3 動態影像處理結果...33

第六章 結論與未來展望...36

6.1 結論...36

(9)

6.2 未來展望...36 參考文獻...37

(10)

圖表目錄

圖 1-1 環場影像 - 360°環場影像 ...1

圖 2-1 360°單中心圓柱型環場影像 ...6

圖 2-2 影像移動模糊 ...8

圖 2-3 環場影像 - 攝影機旋轉速度過快(約 11 秒一圈) ...8

圖 2-4 環場影像 - 攝影機旋轉速度稍快(約 45 秒一圈) ...8

圖 2-5 環場影像 - 攝影機旋轉速度適中(約 56 秒一圈) ...8

圖 2-6 光學像差 (A)桶狀變形 (B)枕狀變形...9

圖 2-7 環場影像接合重疊區域 ...10

圖 2-8 環場影像接合示意圖 ... 11

圖 2-9 環場影像 - 影像明顯變形 ...12

圖 2-10 影像投影透視圖 ...12

圖 2-11 影像變形投射點示意圖 ...13

圖 2-12 水平方向投射點立體圖 ...13

圖 2-13 水平方向投射點俯視圖 ...14

圖 2-14 垂直方向投射點立體圖 ...15

圖 2-15 垂直方向投射點側視圖 ...16

圖 2-16 影像變形形狀 (A)視平面上四方形區域投射至圓柱體曲面上的區域 (B)四方形區域 (C)圓柱體曲面上四方形區域投射至視平面的區域 ...17

圖 3-1 背景被移動物體遮蔽 ...18

圖 3-2 影像以重疊區域疊合 ...19

圖 3-3 影格疊合俯視圖 ...20

圖 3-4 影像修補流程圖 (A)找出選取區域未被遮蔽影格 (B)修補選取的 區域 (C)調整修補區域整體亮度 (D)線性調整接縫邊緣亮度 ...21

圖 3-5 動態景物影片切割與接合流程圖 ...22

圖 3-6 2D 影像切割與接合示意圖 ...24

圖 3-7 切割線尋找示意圖 ...26

圖 3-8 水平方向切點 ...26

圖 3-9 像素偏移區域 ...27

(11)

圖 3-10 影片切割方向 (A)水平切割 (B)垂直切割...28

圖 3-11 水平切割線 ...28

圖 4-1 實驗拍攝地點鳥瞰圖 左圖為池塘左側 右圖為池塘和教穡大樓 ...29

圖 4-2 實驗設計流程圖 ...30

圖 5-1 環場影像 - 影像清析度不佳 ...31

圖 5-2 環場影像 - 影格接合時選取的欄位過大 ...31

圖 5-3 環場影像 - 實驗用的環場影像 ...31

表 5-1 影像接合數據 ...31

圖 5-4 影像修補結果 (A)背景區域被景物遮住 (B)影像直接修補 (C)調整影像亮度 (D)影像融合 ...32

圖 5-5 動態影像處理結果 - 噴水池 ...33

圖 5-6 動態影像處理結果 - 青草 ...33

圖 5-7 動態影像處理結果 - 水波 ...34

圖 5-8 動態影像處理結果 - 海浪 ...35

表 5-2 動態影像處理數據 ...35

(12)

第一章 緒論

1.1 前言

在這媒體發達的世界中,每個人身邊幾乎都有一台數位相機或攝影機,可以 輕鬆地記錄周遭的人、事、物。隨著數位媒體漸漸地發展,而有了廣角鏡頭、魚 眼鏡頭相機,可以拍攝更寬廣的視野,讓人一次接收到更多的畫面;高倍數或高 解析度的相機、高速攝影機,可以記錄更多的資訊,使照片的畫質更精細,更接 近人真實眼睛所看到的影像;各式各樣的繪圖、修圖軟體,可以簡單地利用軟體 功能來達成許多特殊的後製效果,使影像產生各式各樣不同地變化。

虛擬實境(virtual reality)係指運用電腦運算來模擬真實世界的環境,即模 擬一個虛擬的世界,大部分的虛擬實境主要都是以視覺為主,模擬在電腦螢幕或 特殊的眼鏡上,有些模擬還配有聲效,讓整體環境更接近真實世界,模擬得越逼 真越讓人有身歷其境的感受,但是這通常需要非常大量的運算。

環場影像(panoramic image)又稱全景圖,是虛擬實境中的一塊,只要是任 何的廣角影像都可以稱作環場影像,通常用於拍攝風景圖,也用於展場導覽,主 要目的是讓觀賞者可以在同一時間接收到視野更寬廣的影像資訊。本論文所探討 的環場影像為 360°單中心圓柱型環場影像(圖 1-1)。

圖 1-1 環場影像 - 360°環場影像

1.2 研究動機

現有的環場影像,通常是利用相機在同一地點水平旋轉拍攝影像,控制旋轉 的角度,使得相鄰的兩張影像有重疊的區域,經過運算找出相鄰兩張影像重疊的 區域後,將兩張影像以此重疊的區域接合在一起,合成一張較大的影像,把所有

(13)

拍攝的影像依序兩兩接合再一起,即成為環場影像。

以現有的影像拍攝設備來說,拍攝的影像都已經具有很高的解析度,在真實 場景中拍攝的景物、光影、動作……等,都能夠捕捉得非常細膩,將這些影像經 過影像接合(image stitching)的方式後,可以建構出高解析度的環場影像,裡 面的景物、景色都能夠表現得非常清楚,非常接近真實的場景,然而這種靜態的 影像拍攝,只能捕捉景物瞬間的影像,讓許多動態的景物只能停留在拍攝的瞬間,

對於靜態的建築物、地標物……等,只需補捉一次影像即可,但是對於原本動態 的景物,如瀑布落水、水波流動、草木搖晃、火焰閃爍、旗幟飄揚……等現象,

往往不是一張影像就足以表示的,因此若是讓動態的景物得以維持動態,並重現 於環場影像中,則環場影像會更加逼真,更加接近真實的場景。

1.3 相關文獻探討

早期的環場影像,都是經由軟體或程式接合而成後,再直接觀看整張環場影 像,而景物由於拍攝時與相機距離不同的關係,水平直線在影像中會呈現彎曲的 現象,尤其是當拍攝的景物距離相機很近的時候,彎曲效果會特別明顯,通常發 生於距離小於十公尺,為了解決影像彎曲而造成觀看時的不真實,S. E. Chen.與 G.S.P. Miller 在 1995 年提出一個將彎曲影像拉平的方法[1],以圓柱體正中心模 擬相機的位置,將環場影像從圓柱體的曲面投射到圓柱體切面的四方形視平面上,

投射前先計算出圓柱體曲面上的影像投射到視平面上的水平與垂直位置,投射後 再利用內差法將沒有影像資訊的區域補齊,使原本彎曲的環場影像在視平面上得 以正常顯示,如同人眼觀看到的景像,並在同年將其做成產品 QuickTimeVR[2],

顯示環場影像投射到視平面上的影像,模擬相機拍攝到的影像,並且能夠隨著水 平旋轉,變換投射到視平面上的影像,同時還具有放大和縮小的功能。在 1996 年也有類似的靜態環場影像的瀏覽系統[3],並加強了瀏覽器的功能,除了放大、

縮小之外,還有快速度、倒帶播放影像和影片剪接的功能,但影像在放大時容易

(14)

失真,且不具重複播放的功能。

為了使動態的景物能在環場影像中持續動態,在 1998 年,M. Irani 等人實現 一個在環場影像上播放影片的系統[4],使景物以影格的方式,在環場影像上逐 一貼上動態景物的影格,使景物在環場影像中會重複出現,且具有放大景物的功 能,但動態景物的頭尾不連續。到了 2000 年,出現了即時的動態環場影像播放 系統 [5],將五個攝影機結合成一個攝影系統,涵蓋了水平方向 360°的所有景物,

並配合具有影像處理功能的頭帶式眼鏡裝置和一個方向追蹤器,成功模擬出 360

°的動態環場影像,但是這樣的模擬需要許多的設備。2001 年,D. Kimber 等人 在開發出一個名為 FlyAbout 的系統[6],使整個環場影像變成一部環場電影,讓 使用者可以從任意的角度瀏覽環場影像中任意的物件,但是這個系統只能將影像 由頭至尾播放,類似播放一段影片,即使播放結束後可以重複播放,但是需要手 動操作。2007 年 A. Rav-Acha 等人提出 Dynamosacing 的方法[7],利用控制動態 物體的時間快慢與順序,生成一部全景的電影,隨著拍攝的方向播放,使用者可 以看到原本動態景物的動態,但僅只於有拍攝到的部分,而且此做法只能由順向 或逆向觀看,即影片拍攝方向的先後順序,不能隨著使用者喜好隨意前後瀏覽。

在 2000 年,出現了將頭尾不連續的影片形成連續且可以無盡播放的研究,

名為 Video Texture[8],方法是找出影片中相似的影格,將它們以這相似的影格重 新排列順序,加上 blending 和 morphing 的技術,使原本有頭有尾的影片,變成 一個連續且可以無盡播放的影片,但此做法限制於影片中有找到影像相似的影格 時才能完成。到了 2003 年,G. Doretto 等人也提出類似的演算法,名為 Dynamic Texture [9],利用學習模組(learing models),加上必要的元素(essence),製造 出一連串不間斷具有些微差異的影像,以形成連續播放的影片,但此做法須先經 過學習才能完成,且有人提出結果和 Vedio Texture 相似。同年,V. Kwatra 等人 以 graphcut 的技術做延伸,提出一個影像與影片的接合方法,名為 Grapgcut Textures [10],將 graphcut 的技術應用在三維空間的影片中,疊合 2D 的切割線,

建立 3D 的切割平面,加上空間上的移動,找出一個最佳的 3D 切割曲面,製作

(15)

出連續且可以重複播放的影片,不過影片解析度會在製作過程中改變,而且需要 經過 1 小時的運算。

2005 年,A. Agarwala 等人以 Video Texture 的概念做延伸,提出一個動態環 場影像的系統,名為 Panoramic Video Texture (PVT)[11],利用 Video Texture 的方 法製作影片,結合單中心圓柱型環場影像,形成動態的環場影像,但是此做法需 要經過運算 2~7 個小時,非常的費時。

本論文以 Graphcut Texture[10]的概念做延伸,計算出一個以 2D 切割線形成 的 3D 切割曲面切割而成的影片,並結合單中心圓柱型環場影像,製作出一個結 果類似 PVT[11]且運算時間可以大幅降低的動態環場影像,同時還修補了被接合 進環場影像中會移動的前景(foreground)部分,使得在拍攝中不希望其入鏡的 景物,例如行人、車輛……等,能夠從環場影像中移除。大部分影片修補的方法,

都是從將影像修補的方法套用到每個影格上開始[12][13];也有區分前景與背景,

再一次處理整體的前景影像區塊的方法[14][15];對於區塊較大的影像修補方法,

從其他影格中取得背景資訊用以修補的結果會比較好[16][17][18]。本論文未區分 前景與背景的部分,對於環場影像中被遮蔽的背景影像區域,將以影片中該背景 影像未被遮蔽的影格來修補。

1.4 研究目標

本論文所設計的動態環場像建構系統,希望融入動態的資訊,因此環場影像 的拍攝是以數位攝影機取代相機,目標是藉由單一段水平旋轉拍攝的影片,由系 統自動計算疊合的位置,建構出一個靜態的環場影像,同時提供使用者方便的介 面框選出動態影像的區域,再由系統自動計算出合適的影格區間並產生一段以極 少的影格構成的連續影像資訊,使這段連續的影像資訊占用最少的系統存取空間,

卻能在環場影像中完整呈現景物原始的動態,並能夠連續的重複播放且不失真。

我們的系統還將提供使用者能夠修補環場影像中特定影像區域的新功能,由系統

(16)

自動找出其他影格中能夠修補使用者框選的影像區域,同時調整影像的亮度使修 補的區域能夠密合的取代環場影像中原本的影像區域,目的是要修補不希望被拍 攝入鏡的行人或車輛,產生一個環場影像配合使用者指定之頭尾連續的動態影像 資訊。

當靜態的環場影像和連續的動態影片建構完成之後,我們將另外開發一個具 有放大、縮小和水平瀏覽環場影像功能的靜態環場影像瀏覽器,加入一個能夠嵌 入連續的影像資訊並以特定的速率重複播放的新功能,使動態影像資訊能夠成功 的在環場影像中重現景物的動態,形成一個新穎的動態環場影像瀏覽器。

1.5 論文架構

本論文總共分為下列六章:

第一章簡述相關背景、研究動機、相關文獻及研究目標。

第二章介紹單中心環場影像的建構、影像接合的方法及影像變形方式。

第三章部份說明影像修補技術和連續動態影片的形成。

第四章描述模擬環境和系統架構。

第五章展示實驗結果和模擬數據。

第六章為結論和未來展望。

(17)

第二章 單中心圓柱型環場影像

2.1 環場影像的拍攝

本論文所探討的環場影像皆為 360°單中心圓柱型環場影像。圓柱型環場影 像是模擬人眼從圓柱的正中心點向 360°的圓柱體曲面觀看環場影像(圖 2-1),

在經由影像變形(image warping)後投射到圓柱體切面上所看到的影像,隨著觀 看的水平角度變換,投影的圓柱體切面也跟著改變。實際拍攝環場影像的時候,

相機位置是擺放在欲拍攝場景的最中間,並且離地面一段適當距離,再校正攝影 機使其保持水平,接著水平旋轉拍攝角度,模擬人眼從圓柱體中心觀看周圍場景 的角度,最後再將一系列的影像接合成一張完整的環場影像,即可模擬人眼觀看 周圍 360°的場景。

圖 2-1 360°單中心圓柱型環場影像

(18)

環場影像拍攝時所使用的設備及功能如下:

 數位攝影機:拍攝環場影片

 三腳架:水平三腳架及調整拍攝高度

 旋轉雲台:使架設於上方的攝影機得以繞著單軸水平旋轉

 水平儀:校正攝影機水平

拍攝時,將三腳架架設於欲拍攝場景的中心點,並且調整攝影機與景物的距 離,保持與 360°場景的所有景物適當的距離,若攝影機與景物的距離過近時,

拍攝結果接合後會造成景物彎曲過大,降低整體的效果,因此拍攝時會與景物保 持一段距離,調整三腳架頂端與地面的高度,使環場影像的場景不會過高或過低,

避免影像接合後天空部分或地面部分過多或過少的情況,造成不美觀,接著將旋 轉雲台架設於三腳架頂端,攝影機架設於旋轉雲台上,再利用水平儀調整旋轉雲 台的水平,使攝影機得以保持水平旋轉後即可開始拍攝。

影片拍攝時,可由任一角度開始進行,影片開始錄影後,經由旋轉雲台向左 或向右水平旋轉攝影機一圈 360°來完成,在影片拍攝的過程中,攝影機旋轉的 速度會影響影片的影像資訊,如果旋轉的速度慢時,同樣時間內所拍攝的影像資 訊所占的影格會較多,即該部分的影像資訊會比較多,當拍攝到動態景物的時候,

若將旋轉速度稍微放慢一些,則動態景物的影像資訊會存在較多的影格,當動態 景物的影像資訊越多時,將影像資訊處理成頭尾連續的動態影片時效果會越好,

即可以找到越好的切割曲面來接合頭尾兩端。

相對於用數位相機旋轉固定角度拍攝,使影像與影像間有重疊得部分得以接 合,用攝影機拍攝的結果絕對有足夠的影像重疊可以用來接合影像,但是由於影 片拍攝是以旋轉鏡頭的方式進行,在一邊旋轉一邊拍攝的過程中會造成影像不清 晰,即移動模糊(motion blur),移動模糊的產生是由於影像在拍攝時,在相機 曝光的時間內,因為景物的移動或是相機的晃動,使得拍攝而成的影像會因為重 複殘留影像而造成影像不清晰,較常見的情形為夜間時拍攝景物,由移動中的車

(19)

輛造成(圖 2-2),或拍攝影像時手的晃動造成的。

圖 2-2 影像移動模糊

而由移動模糊的影像接合而成的環場影像會變得非常模糊(圖 2-3),因此影 片在拍攝的時候會盡量的放慢旋轉速度以減少影片的影像模糊,可以改善接合後 的模糊現象(圖 2-4),若旋轉速度合宜,則接合後的環場影像如(圖 2-5)所示,

能達到不錯的清晰度,由經驗得知拍攝一圈的速度最好控制於 70 ~ 100 秒之間。

圖 2-3 環場影像 - 攝影機旋轉速度過快(約 11 秒一圈)

圖 2-4 環場影像 - 攝影機旋轉速度稍快(約 45 秒一圈)

圖 2-5 環場影像 - 攝影機旋轉速度適中(約 56 秒一圈)

(20)

2.2 影像接合

以定點為中心水平旋轉鏡頭 的影格(frame)重疊的影像區域 合(image stitching)以拼接出

當影像經由攝影機或相機拍攝完成後 的光學變形(optic distortion

從影像中心向影像邊緣產生 變形(pincushion distortion

(magnification)的縮小 光軸(optical axis)的距離 常使用廣角鏡頭或魚眼鏡頭 在影像倍率放大的時候產生 場影像在拍攝的時候,會希望

縮到最小,讓拍攝鏡頭得以攝入更多的景物 狀變形,因此在尋找重疊的影像區域疊合之前 能找到比較密合地重疊區域

(A)

圖 2-6 光學像差

水平旋轉鏡頭 360°拍攝的影片完成後,需要找出影片中相鄰 重疊的影像區域(image registration),再將此重疊

拼接出一幅環場影像。

當影像經由攝影機或相機拍攝完成後,有時候在影像的外圍區域 distortion)或光學像差(optical aberration),即 向影像邊緣產生桶狀的變形(barrel distortion)(圖 2-6 pincushion distortion)(圖 2-6 B),影像桶狀變形的產生是由於

縮小,即焦距(focal length)的縮短,縮小的效果 的距離遞增,即離影像的中心越遠,縮小的效果 廣角鏡頭或魚眼鏡頭拍攝的影像會比較明顯,相對的,影像

放大的時候產生,放大的效果會根據和光軸的距離遞增 會希望垂直的方向能夠融入更多的景物,因而 讓拍攝鏡頭得以攝入更多的景物,這種情況下拍攝的影像就會 因此在尋找重疊的影像區域疊合之前,要先做光學變形的校正 能找到比較密合地重疊區域。

) (B)

光學像差 (A)桶狀變形 (B)枕狀變形

需要找出影片中相鄰 重疊的影像區域疊

區域會出現明顯 即拍攝的影像會 6 A)或枕狀的 由於影像倍率

效果會根據和 的效果越顯著,通 影像枕狀變形則會 增。當 360°環 因而將影像倍率 的影像就會產生桶 要先做光學變形的校正,如此才

枕狀變形

(21)

在尋找影像重疊區域的時候,若影像資訊是以相機水平旋轉固定角度拍攝取 得的,由於拍攝的張數有限,通常是 10 ~ 30 張左右,此時影像疊合的區域會落 在影像的左邊區域或右邊區域,當兩張影像要接合的時後,需要先校正比較嚴重 的光學像差,再將影像變形,這部分會在接下來的 2.3 小節說明,接著進行特徵 點的比對,找出兩張影像疊合的位置,做些微的平移校正,即算出最小平均像素 差之和後,合成此兩張影像,理論上經過相機參數校正和影像變形後的兩張影像,

能夠完全的疊合在一起,最後接合成環場影像後,再調整由於不同水平角度拍攝 所造成的影像亮度不均,就成為一張完整地環場影像。

當影像資訊是由攝影機拍攝的影片中取得的時候,兩張要合成的影像中會有 非常充足的影像資訊可以用來接合,即有非常大的影像重疊區域會疊合,理論上 兩張影像有足夠地影像重疊區域的情況下,無論影像重疊的區域多大,接合而成 的環場影像都是相同的(圖 2-7),故影像重疊的區域過多只是增加運算的時間,

即接合成環場影像的時間,因此若只取影格的正中間數欄做為影像資訊,使相鄰 地影像資訊有足夠的影像重疊區域得以接合,以此方法拼接而成的環場影像,由 於光學像差較不明顯,影像變形也較少,不但可以大幅地減少接合的時間,且接 合的結果也令人滿意。

圖 2-7 環場影像接合重疊區域

(22)

影像接合時,可以讓使用者決定每張影格要用來接合的欄位像素,通常我們 是取最中間 11 個欄位的像素作為影像資訊,根據接合的經驗,以旋轉攝影機一 圈 70 ~ 100 秒的影片,兩張相鄰的影格偏移的影像資訊不會超過 11 個像素,因 此我們的實驗取每張影格最中間 11 個欄位像素做接合,接著以此 11 個欄位和相 鄰影格的 11 個欄位做比較,重疊 1 個至 11 個欄位,比較方法為分別計算重疊部 分的 RGB 像素值的差,即每個像素會產生三個差值,將重疊區域的差值加總,

再除以重疊的欄數,即為該重疊欄數的差值,找出 11 個重疊欄數最小的差值之 後,再以該欄位數將兩張影像疊合,可拼接成一張較大的影像,如(圖 2-8)中 間列兩個範例,環場影像合成方法為取重疊區域的左邊非疊合部分之影像資訊接 合成環場影像,如(圖 2-8)下列,重複此步驟直至形成一張完整的環場影像。

圖 2-8 環場影像接合示意圖

frame 1 frame 2 frame 3

panorama

重疊欄位

(23)

2.3 影像變形

環場影像接合完成後,會形成一個可以貼在圓柱形曲面上觀看的平面。圓柱 體曲面上的環場影像為實際人眼所觀看到的影像投射至圓柱體曲面上影像,由於 影像投射後會將所有視點拉至同樣距離的位置,即圓柱體圓截面的半徑,因此距 離攝影機較近的景物在拍攝後垂直方向會有較多的影像資訊,即景物在影像中會 顯示得較大,因此接合而成的環場影像在許多地方會有明顯的彎曲,通常又以水 平方向的直線較為明顯(圖 2-9)。

圖 2-9 環場影像 - 影像明顯變形

當模擬人體眼睛從圓柱體中心觀看環場影像的時候,需要將圓柱體曲面上的 影像投射回到圓柱體的切面上(圖 2-10),就能變形成實際人眼觀看到的影像,

這個投射的彎曲影像動作是影像變形(image warping)的一種。

圖 2-10 影像投影透視圖

(24)

從圓柱體正中心點出發,將直線路徑上的圓柱體曲面的影像投射到後方四方 形的螢幕上,即是實際人體眼睛所觀看到的影像。

圖 2-11 影像變形投射點示意圖

如(圖 2-11)所示,X 為水平方向,Y 為垂直方向,其中△ X 為水平方向視 野旋轉的距離,W 為視平面的寬度,H 為視平面的高度,單位同為 pixel,若從 圓柱體的正中心出發,沿著直線前進,經過環場影像上一點 P(△ X + P ﹐P ),

將 P 點投射至視平面上的點 S(S ﹐S )時,則水平方向投射點的位置圖如下

(圖 2-12)。

圖 2-12 水平方向投射點立體圖 S

P X

Y

X

Y

△ X mapping

H

W

S

S

S S

P

(25)

其中S 的座標為(0 ﹐S ),S 的座標為( ﹐S ),S 的座標為(W ﹐S ),接著 將水平方向投射點投影至一圓柱體圓截面,找出水平方向的投射點位置圖如下

(圖 2-13)。

圖 2-13 水平方向投射點俯視圖

令γ為圓柱體圓截面的半徑長, 為環場影像的總長,即圓柱體圓截面的 圓周長,則:

=W 2π

令∠ α為圓柱體正中心至圓柱體和視平面切線投影至一圓截面上的點所形 成之直線和圓柱體正中心至視平面上點 S 投影至同一圓截面所形成之直線所夾 的夾角,P 為欲投射至視平面上的環場影像水平方向座標,則:

α

360 = P − W2 W

P S

S S S

α γ

(26)

已知 W = 2π ,360 = 2π,可得:

α= P − W2

令S 為 P 點的水平方向座標P 投射至視平面上的水平方向座標,則:

S − W2 = tan α

⇒ S =W

2 + tanα

將環場影像上一點 P(△ X + P ﹐P )沿著圓柱體正中心出發的直線投射至 視平面上的點 S(S ﹐S )的垂直方向投射點的位置圖如下(圖 2-14)。

圖 2-14 垂直方向投射點立體圖

其中S 的座標為(S ﹐0),S 的座標為(S ﹐ ),S 的座標為(S ﹐H ),

圓柱體正中心至垂直方向投射點所形成的平面位置圖如下(圖 2-15)。

S P S

S S

(27)

圖 2-15 垂直方向投射點側視圖

令線段β為圓柱體正中心至視平面上一點投影至 高的圓柱體圓截面上的 長度,則由水平方向投射點俯視圖(圖 2-13)可得:

β= cos α

⇒ β=

cos α

令H 為視平面的高度,P 為欲投射至視平面上的環場影像垂直方向座標,S 為環場影像垂直方向座標P 投射至視平面上的垂直方向座標,則:

S − H2 P − H2 =β

⇒ S =H

2 +P − H2 cos α

經過如此的方式轉換後,即可得到環場影像上的點 P(△ X + P ﹐P )投射 至視平面上的點 S(S ﹐S )的座標位置,將環場影像上的所有視點經過上敘 的方式投射至視平面上後,即為實際人體眼睛觀看到的場景影像。由於投射的點

S P

S S

S γ

β

(28)

都是在從圓柱體正中心點出發至視平面的直線上,因此投射時所用到的圓柱體曲 面區域(圖 2-16 A),和投射至四方形視平面的區域(圖 2-16 B)會有所不同。

(A) (B) (C)

圖 2-16 影像變形形狀 (A)視平面上四方形區域投射至圓柱體曲面上的區域

(B)四方形區域 (C)圓柱體曲面上四方形區域投射至視平面的區域

反之,若要投射出四方形的環場影像區域(圖 2-15 B),所需要的視平面上 區域(圖 2-15 C)也不同。轉換方式將 warping 的公式反推即可得。將視平面上 的一點 S(S ﹐S )投影至環場影像上的點 P(△ X + P ﹐P )方式為:

P =W

2 + α

和 = + − cos α

其中 和α分別為:

=W 2π 和 α= tan

(29)

第三章 影像修補與動態處理

3.1 影像修補

修補(inpainting)是一個修復影像或影片中不需要或不好的部分的方法,也 可以說是影像插補(image interpolation)或是影片插補(video interpolation)。對 於影像來說,要修補的部分只能從其周圍取得資訊,用以推測要修補的部分可能 的資訊,再進行修補,通常用於去除雜訊、增減亮度、增減色彩或移除紅眼,影 片插補,則是從兩張影格中取得影像資訊,再推測出一張中間的影格,在 flash 的動畫製作上時常會用到。

影片在拍攝的過程中,由於拍攝的地點通常是位於開放的空間中,因此影片 在拍攝的時候,往往會遇到一些無法控制的因素,例如行人走動或是車輛移動,

造成原本要拍攝的景物被移動物體遮蔽,而這些在場景中移動的物體會出現在環 場影像當中,這時候就可以利用影像修補的方法,修補這些被移動物體所遮蔽的 影像區塊,還原這些區塊原始的背景影像,即沒有行人或車輛入鏡的影像。

圖 3-1 背景被移動物體遮蔽

(30)

在一段水平拍攝的影片當中,對於一個靜止不動的景物,例如停車、長凳、

樹木……等,對它們後方的影像資訊,無論鏡頭旋轉到何種水平角度,都無法取 得其後方的影像資訊,如(圖 3-1)樹木後方,因此我們無法修補靜止的景物後 方的影像區域,但若景物是會根據鏡頭拍攝方向水平移動的,如(圖 3-1)行人,

則會移動的景物只會遮住特定的背景一小段時間,如(圖 3-1)樹木前方,此時 能夠用來修補的影像資訊,就可以從背景被遮蔽那段時間的前後影格來獲得。

圖 3-2 影像以重疊區域疊合

一個特定的景物在一段影片當中會出現一段時間,即從景物進入鏡頭到離開 鏡頭,會在一段連續的影格當中出現,而景物出現的位置,會因為水平拍攝的方 向、景物移動的方向及景物移動的速度不同而不同。對於靜止不動的景物,如相 機水平向右拍攝,則景物會從鏡頭的右邊先進入,再從鏡頭的左邊離開(圖 3-2),

相機水平向左拍攝則反之。對於一個會水平方向移動的景物,如行人、行車、鳥 禽……等,景物出現的位置會因為相機拍攝時旋轉的速度不同而不同,如相機水 平向右拍攝,有一行人由右向左移動,則行人在鏡頭中出現的位置和靜止的景物 一樣是從鏡頭的右邊到鏡頭的左邊,但相對於靜止不動的景物,這種情況會動的 景物出現在影片當中的影格數會比較少。若行人是由左向右移動,但移動的速度

(31)

比相機旋轉拍攝的速度慢,則鏡頭會追上行人將其拍攝入影片當中,這種情況會 移動的景物一樣是由鏡頭的右邊進入,再從鏡頭的左邊出去,不過會移動的景物 出現在影片當中的影格數會比靜止不動的景物還要多,當行人移動的速度比相機 旋轉拍攝的速度還要快時,則行人會追上鏡頭,只有這種情況下,對於向右水平 拍攝的鏡頭,景物會從鏡頭的左邊進入,再從鏡頭的右邊出去,若相機水平向左 拍攝則反之。

假設鏡頭水平向右旋轉的速度固定,則將所有影格的以重疊的影像對齊之後 可形成一個俯視圖為平行四邊形(圖 3-3)的平行四邊形立方體,平行四邊形中 每一列代表一個影格影像,水平移動的景物由鏡頭的右邊進入到左邊離開,時間 軸為影格在影片中時間先後順序的方向,在時間軸方向上的背景為相同的,背景 被遮蔽區域為會移動的景物遮蔽住特定背景的影格數量,環場影像寬度為所有影 格接合後的寬度,特定背景寬度為選取的欲修補區域寬度,會移動的景物寬度和 特定背景寬度是相等的,黑色的區域為可用來修補的影像區域。

圖 3-3 影格疊合俯視圖

找出可修補的影像在影格中的位置後(圖 3-4 A),由於影像是從影格貼到環 場影像,即將影像從視平面貼到圓柱體曲面上,因此影像要先經過影像變形的步 驟,環場影像上四方形的區塊(圖 2-14 B)需要視平面上較大的區域(圖 2-14 C)

鏡頭水平向右旋轉

特定背景 寬度

環場影像寬度 影格寬度

時間軸

背景被遮蔽區域

會動的景物 寬度

(32)

投射,由於影像接合時,沒有先經過相機參數校正和影像變形,因此將較大的區 塊變形成四方形區塊後還要進行上下左右的平移微調,分別向左右和上下進行寬 和高 10%個像素平移,舉例來說,若使用者框選區域的寬和高分別為 50 和 100,

則由框選位置開始向左 5 個像素到框選位置向右 5 個共 11 個位置,配合框選位 置向上 10 個像素到框選位置向下 10 個像素共 21 個位置,總和 231 個平移位置 中找出最小平均像素差之和,使得修補的影像和環場影像的景物最為一致後,再 將修補影像貼上去(圖 3-4 B)。由於不同水平角度拍攝的影像會因為鏡頭的進光 量不同而導致影像的整體亮度不同,因此還需要把修補影像的平均亮度調整成和 環場影像接縫的平均亮度相同,將(圖 3-4 C)中區域 A 的亮度調整成(圖 3-4 C)

區域 B 的平均亮度,例如區域 A 中一個像素 R = 50、G = 75、B = 85,此像素的 亮度為 70,區域 B 的平均亮度為 100,則將 R、G、B 各加上 30(100 – 70 = 30),

調整過後的像素為 R = 80、G = 105、B = 115。由於影像的亮度是以平均做調整,

因此亮度在接縫部分還是會和環場影像不相等,因此最後再進行影像混合(image blending),將垂直於接縫線的前後一個影格以亮度做線性的調整(圖 3-4 D),使 影像的接縫較不明顯,即完成影像修補。

圖 3-4 影像修補流程圖 (A)找出選取區域未被遮蔽影格 (B)修補選取的 區域 (C)調整修補區域整體亮度 (D)線性調整接縫邊緣亮度

A B

(A)

(B) (C) (D)

(B)

(33)

3.2 影片裁切與接合

影像修補完成之後,環場影像中原本動態的景物還是停留在拍攝的瞬間,因 此還需要將這部分做處理。為了讓原本動態的景物可以維持其原始的動作,在環 場影像接合後,讓使用者手動框選動態的景物位置,系統會自動找出包含此景物 的所有影格,以框選的大小擷取框選的景物從進入鏡頭到離開鏡頭的所有影像,

將其生成一部連續但頭尾不連接的影片,在此我們稱之為動態景物影片,接著再 對這段影片進行切割與接合的處理,目的是為了讓人看不出接縫,而處理完成可 嵌入環場影像鐘的影片稱之為動態影像迴圈。

在找出動態景物影片之後,首先將其頭尾兩端以固定的重疊區域疊合在一起

(圖 3-5 A),目的是要找出一個最連續的切割平面,將動態景物影片疊合過後的 前端區域與尾端區域的同樣位置根據這個切割平面做切割,將切割過後的最前端 與最末端部分移除,而中間的連續部分再根據這個切割平面接合再一起,即成為 動態影像迴圈(圖 3-5 I)。

圖 3-5 動態景物影片切割與接合流程圖 時間軸方向

W H 時間軸方向

時間軸方向 片頭 片尾

(34)

場景中任一景物,在一部水平旋轉一圈約 70 ~ 100 秒所拍攝的影片中,大約 可出現於 100 ~ 180 個影格當中,若景物為使用者欲保留的動態資訊,則我們期 望以 20 ~ 30 個影格濃縮景物資訊,使得動態景物的運動特徵予以保留。若動態 影像迴圈的長度太短,觀看起來重覆的頻率會過高,若長度太長,則會增加運算 的時間,因此影片在處理的過程中會根據動態景物的運動特徵決定最少保留的影 格數(圖 3-5 B 白色),接著再找出其餘的影格中疊合區域的最小平均像素差之 和,使頭尾的影像以差異最小的位置疊合,令 T 為動態景物影片的長度,R 為保 留的影格數,則影片疊合的影格長度為:

1 ~ − 2 最後生成的動態影像迴圈長度為:

+ 1 ~ + − 2

找到動態景物影片最佳地疊合位置之後,接著將要對這段重疊的影片進行切 割的處理(圖 3-5 C)。假設 H 為影格的高,W 為影格的寬,t 為頭尾兩端重疊的 影格數量,首先將重疊的影格部分以水平方向分成 H 層 W× t 的平面(圖 3-5 D),

目的是要對每一層找出t+1 條不同切點的 2D 切割線(圖 3-5 E),接著找出上下 相鄰的兩條 2D 切割線間時間軸方向上偏移位置的像素值差之和(圖 3-5 F),使 相鄰的兩層以此兩條 2D 切割線做切割後接合的影像較為接近,找出由上至下總 和最小的像素差之和後,再以此 H 條 2D 切割線做切割(圖 3-5 G),形成一個切 割平面,以此切割平面對重疊的頭尾兩端部分做切割(圖 3-5 H),將最前端部分 與最尾端部分移除,即取靠近動態景物影片中間的部分,最後將形成一個連續且 可以重複播放的動態影像迴圈(圖 3-5 I)。

3D 切割平面的形成,是由一排 2D 的影像切割(graphcut)疊合而成,因此 2D 影像切割會影響到 3D 切割平面的結果。影像切割是為了將兩張影像結合在 一起,為了不要讓人看出接合的縫隙,通常不會將影像直接疊合在一起,即不會

(35)

讓接合縫隙是一條明顯的垂直線,而是去找一條由上而下切割的線,使得與切割 線相鄰的兩邊影像差異最小,讓接合的縫隙最不明顯,使左右兩邊的影像看起來 是連續的,而不會因為接合而出現明顯的接縫。假設(圖 3-6)中左、右兩張圖 分別為一層動態景物影片的前端與尾端,其中每一格表示一個像素(pixel),而 數字表示該像素的像素值,將它們以 3 個像素寬為重疊區域疊合在一起,則t = 3,

疊合過後即可方便看出相鄰的左、右兩圖的像素差,即為該路徑的 cost,如(圖 3-6)下圖中粗線即為一條由上而下的 2D 切割線,實際計算的時候是分別計算 RGB 的像素差,將其加總之後才是該切線的 cost,計算出所有切線的 cost 之後,

由上而下找出一條 cost 總和最小的路徑,再以該路徑切割重疊的左、右兩張影 像,最後切除靠近頭尾端點的部分,再將影像接合在一起,即可完成一層最佳地 2D 頭尾接合。

圖 3-6 2D 影像切割與接合示意圖 左

左 右

左 右

重疊區域 影片頭 影片尾

(36)

以(圖 3-6)為例,疊合區域為 3 個像素,因此由上至下的切割路徑有 4 個 可能的起點和終點,分別以 A ~ D 和 U ~ X 八點表示之,如(圖 3-7)。以(圖 3-6)中左、右兩圖左上角的像素來說,左圖的像素值為 2,右圖的像素值為 4,

則切割此兩像素的切線 cost 為 2,如(圖 3-7)中的路徑 AE,方向為由上而下,

若路徑為 AEF,則 AEF 的 cost 為 AE 的 cost 加上 EF 的 cost,其中 EF 的 cost 為 3,方向為由左而右,若路徑為 BFE,則 BFE 的 cost 為 BF 的 cost 加上 FE 的 cost 為 1。以此方法可將(圖 3-6)的例子轉換成(圖 3-7)的 graph,再以以下 敘述的方法求最佳切割線。

至各個切點的最佳切割線為由上而下逐列尋找,舉例說明(圖 3-7)為(圖 3-6)中左、右兩圖的重疊區域,其中每個箭號皆有 cost,則我們由 A、B、C、

D 四點出發分別至 E、F、G、H 點,其中至 E 點的 cost 為 AE,至 F 點的 cost 為 BF,至 G 點的 cost 為 CG,至 H 點的 cost 為 DH,此時到達第二列各個切點 的路徑皆為向下,首先以 AE 為至 E 點的 cost,比較 BF+FE 的 cost 是否小於 AE,

若小於則將至 E 點的 cost 改為 BF+FE,至 E 點的路徑將改為由 B 下左,接著比 較 CG+GF+FE 的 cost 是否小於當前的 E 的 cost,如小於當前的 cost 則將至 E 點 的 cost 及路徑改為 CG+GF+FE 及 C 下左左,最後判斷由 D 點出發至 E 點的 cost,

即可找出由一個上一列出發至 E 點的最小 cost 和最佳路徑,同理可找出至 F、G、

H 點的最小 cost 和最佳路徑,即找出至第二列各個切點的最佳切線,接著由 E、

F、G、H 四點的路徑分別向下移動至 I、J、K、L 四點,此時至 I 點的 cost 為至 E 點的最小 cost+EI,J、K、L 三點則分別對應至 FJ、GK、HL,再來以相同的 方法找出至 I、J、K、L 的最小 cost 及最佳路徑,即可找出至第三列各個切點的 最佳切線,由上而下到最後一列,即可找出至各個水平切點的最佳路徑,而 U、

V、W、X 中擁有最小 cost 的的路徑,即為此例子的最佳 2D 切割線。

(37)

圖 3-7 切割線尋找示意圖

然而以如此的切割方法只能找到最佳的 2D 切割線,將每層切割過後的 2D 切線疊合在一起所形成的 3D 平面不一定是最好的 3D 切割曲面,因此我們在每 一層中保留至各個切點的t+1 條 2D 切割線,其中每一條 2D 切割線分別為切割 至各個切點的最佳切割線(圖 3-8)。

圖 3-8 水平方向切點

找出各層t+1 條的 2D 切割線後,要尋找以一層一條 2D 切割線所合成的 3D 切割曲面,如(圖 3-9)中的兩條 2D 切割線分別位於相鄰的上下兩層重疊區域 上,其中深色區域為此兩條 2D 切割線在垂直方向上的不連續影像,我們目的是 要使整個 3D 曲面所形成的深色區域像素差最小,因此分層記算深色區域的像素

水平方向

t+1 條切線的切點

由 上 而 下 B

U V W X

A C D

E F G

N

I J

H K

O Q

M

L P

R S T

2 3 1

(38)

差,總和深色區域 RGB 的像素差後,將之視為此兩條 2D 切割線間的 cost,接 著以如(圖 3-7)所表示的 graph 方法,由上而下逐層尋找至該層各條 2D 切割線 的最小 cost,同時找出至該層各條 2D 切割線的路徑,直到最後一層,找出至最 後一層的各條 2D 切割線中擁有最小 cost 的一層一條 2D 切割線的路徑所形成的 3D 切割曲面,即為我們要做為接合頭尾影片的切割曲面。

圖 3-9 像素偏移區域

經過如此的方式切割之後,在垂直方向上看起來的效果相較於直接取各層最 佳的 2D 切割會比較好,但是切割平面由於並非以 3D 區域去計算,因此接合的 區域在撥放的時候還是有一些瑕疵,由於這種切割方法會造成在水平方向上有切 割線(圖 3-11 A),因此若會動的景物是水平方向運動時,效果會比較好,即切 割線較不易被察覺,原因是由於每一層的影像在時間軸方向和水平方向上接合較 連續,但在垂直方向上則不一定連續,當水平切割應用於垂直方向移動的景物時,

很容易可以察覺出有明顯的水平方向切割線(圖 3-11)。反之若會動的景物是垂 直方向運動的,則在處理過程中水平方向與垂直方向交換後,形成的動態影像環 圈效果會較佳(圖 3-11 B)。

時間軸方向 水平方向

(39)

圖 3-10 影片切割方向

(A)

影片切割方向 (A)水平切割 (B)垂直切割

圖 3-11 水平切割線

(B)

垂直切割

(40)

第四章 實驗設計

4.1 實驗環境

本論文實驗以 Intel(R) Core(TM) i7 CPU 920 @ 2.67GHz 作為運算的 CPU,

實體記憶體 3G,測試環境為 Microsoft Windows XP Service Pack 3 作業系統,程 式開發工具使用 Borland C++ Bulider 6.0,影片拍攝由 Sony DCR-SR62 硬碟式數 位攝影機完成,影片解析度為 720*480(pixel),實驗用影片的拍攝地點為宜蘭 大學格致大樓前大池塘(圖 4-1),攝影機架設地點為右圖中圓點,拍攝時間為下 午 2 時到 5 時,天氣晴朗看得見陽光。

圖 4-1 實驗拍攝地點鳥瞰圖 左圖為池塘左側 右圖為池塘和教穡大樓

4.2 實驗架構

本論文的實驗設計流程如下(圖 4-2),首先讀取一個包含動態景物動態的影 片,決定影格中用來接合的欄位數量與位置後,將影像接合成環場影像,若有區 域影像需要修補,則選取影像修補區域,再進行影像修補,此修補步驟可重複執 行,直到使用者判斷不需要再修補為止,接著選取動態景物的影像區域,進行動 態景物的處理,再嵌入環場影像中,形成動態的環場影像。

(41)

圖 4-2 實驗設計流程圖

開始

環場影像

動態景物區域選取

結束

動態影像處理 讀取影片

動態環場影像

修補區域選取 影像修補 影像接合

決定接合欄位

Yes No

由使用者決定是 否需要再修補?

(42)

第五章 實驗結果

5.1 環場影像接合結果

環場影像接合時,如拍攝時攝影機旋轉速度過快(約 11 秒一圈),則接合完 成的影像清析度非常不佳(圖 5-1),如影格接合的欄位寬度設定過大,會導致電 腦的運算量非常龐大(表 5-1)。如接合環場影像的張數較少(95 張),則會出現 明顯的接合縫隙(圖 5-2)。隨著影格擷取數量的增加,欄位設定的減少,和影片 旋轉速度的降低,接合後的結果不但畫面看起來較清晰,接合縫隙消失(圖 5-3),

接合速度也比初期要快許多(表 5-1)。

圖 5-1 環場影像 - 影像清析度不佳

圖 5-2 環場影像 - 影格接合時選取的欄位過大

圖 5-3 環場影像 - 實驗用的環場影像 旋轉時間

(second)

影格大小

(pixel)

接合張數

(frame)

接合欄位

(column)

接合時間

(minute)

旋轉過快(圖 5-1) 11 720*480 64 81 47.5 欄位過大(圖 5-2) 45 720*480 95 81 62.3 實驗用(圖 5-3) 56 720*480 1314 11 7.2

表 5-1 影像接合數據

(43)

5.2 影像修補結果

環場影像在接合之後,有些原本不屬於背景的景物(圖 5-4 A)也會被接合 進環場影像中,此時會希望能夠將它們移除。影像在修補時,由於影像是從不同 的水平角度拍攝取得,在拍攝的過程中,陽光會被雲遮住或是被建築物反射,使 攝影機的進光量不同,導致影像在影片中的亮度不均,因此用來修補的影像亮度 跟原始的影像會有一些差異(圖 5-3 B),為了讓修補的影像亮度和原始影像比較 相近,而將整張修補影像的亮度調整成和環場影像接縫內圍的平均亮度相同,經 過這個步驟之後,修補的結果看起來就比較接近原始影像,然而由於亮度是以平 均去做調整,因此在某些地方上亮度還是會有些微的差異,而造成肉眼可見的接 縫(圖 5-3 C),為了移除這些接縫,再做了邊緣融合的動作,讓影像修補過後可 以和環場影像更融合(圖 5-3 D)。

( A ) ( B )

( C ) (D)

圖 5-4 影像修補結果 (A)背景區域被景物遮住 (B)影像直接修補

(C)調整影像亮度 (D)影像融合

(44)

5.3 動態影像處理結果

我們利用第三章第二節的方法建構了許多動態影像迴圈,本節將陳述一些實 驗結果,我們分別對會垂直方向移動和水平方向移動的景物做處理,其中又以水 的動態為主,同時我們還對鏡頭靜止時所拍攝的影片做處理。

首先為噴水池的處理結果(圖 5-5),水在影片中為垂直方向移動,因此我們 改變影片的分層的方法,以水平方向做

分層,使得接合結果在水平方向會較不 連續。將頭尾不連續的 115 個影格的影 片,形成 23 個影格的連續影片,以每秒 14 個影格播放,每個影格高 326 個像素、

寬個 247 像素,由處理後的結果可以明 顯得察覺出因為頭尾不連續造成的跳動 消失了,此結果為保留 20 個影格所得到 的動態影像迴圈,處理時間為 45 秒。

圖 5-5 動態影像處理結果 - 噴水池

右圖為青草的處理結果(圖 5-6),青草在影 片中為水平方向移動,原始影格有 80 個,處理 完成後形成 22 個影格的連續影片,以每秒 14 個 影格播放,每個影格高 210 個像素、寬 180 個像 素,最佳的接合結果為保留 20 個影格,處理完 成的動態影像迴圈結果非常的連續,處理時間為 9 秒。

圖 5-6 動態影像處理結果 - 青草

(45)

下圖為的池塘中水波的處理結果(圖 5-7),水波在池塘中不規則移動,原始 影片為 81 個影格的頭尾不連續影片,以保留 20 個影格,處理成 32 個影格的連 續影片,以每秒 14 個影格播放,每個影格高 359 個像素、寬 639 個像素,處理 時間為 41 秒,由水波的結果發現在中間的反光區域有一些瑕疵,這是由於 2D 切割線造成的垂直方向不連續,若要將結果應用於環場影像中,我們能做的就是 提高的影格的變換頻率(frame rate),即每秒所顯示的影格數,使得人眼拙於分 辨快速變換的影像,讓造成的瑕疵在重複播放的影片中較不明顯,在未來展望中 我們將會提出改進的方法。

圖 5-7 動態影像處理結果 - 水波

下圖為鏡頭靜止時拍攝的影片(圖 5-8),海浪在影片中朝左下的方向移動,

初始影片有 263 個影格,處理完成的結果有 243 個影格,以每秒 14 個影格播放,

其中每個影格高 292 的像素、寬 612 個像素,影片重疊時為了包含浪花較明顯的 部分,因此保留了 180 個影格,處理時間為 112 秒,在處理結果浪花部分,即影 片的下端部分,依然有細微的水平切線,影片播放時,隨著浪花的高低起落,水 平切線不易被察覺,整體結果還算令人滿意。

(46)

圖 5-8 動態影像處理結果 - 海浪

原始影格

(frame)

連續影片影格

(frame)

影格大小

(pixel)

保留影格

(frame)

處理時間

(second)

噴水池 115 23 247*326 20 45

青草 80 22 180*210 20 9

水波 81 32 639*359 20 41

海浪 263 243 612*292 180 112

表 5-2 動態影像處理數據

(47)

第六章 結論與未來展望

6.1 結論

本論文實現一個由影片合成的動態環場影像系統,將連續且迴圈的動態影像 嵌入環場影像中,使環場影像中原本動態的景物能夠維持其原始的動態,大大增 加了環場影像虛擬實境的真實性,且相較於 Panoramic Video Texture 更為省時。

場景的拍攝以水平旋轉攝影機 360°方式進行,捕捉足夠的影像資訊用以接合成 圓柱型環場影像和建構動態影像迴圈,當景物為水平方向或垂直方向移動時,以 我們的演算法處理會得到較佳的效果,同時我們還有影像修補的功能,修補在拍 攝過程中不慎入鏡的行人與車輛,動態影像迴圈的製作只需框選景物即可完成,

完成後會形成一段頭尾連續的影像資訊,可嵌入至環場影像中適當位置,使動態 的景物能夠在環場影像中動作,形成動態的環場影像。

6.2 未來展望

本論文所實作的系統,雖然能夠建構出完整的動態環場影像,但仍有許多地 方需要改善。未來我們將會套入相機參數校正和影像變形,再嘗試接合更密合的 圓柱型環場影像,及取得更相似的影像修補。另外當動態景物的部分超過一個影 格範圍時,如大型的瀑布,我們的演算法將無法處理,未來會以分欄的方式處理 景物資訊,使大範圍的景物影像也能合成動態的影像迴圈,並加上 morphing 和 blending 的技術,來彌補我們演算法造成的瑕疵。

(48)

參考文獻

[1] S.E. Chen and G.S.P. Miller, “Cylindrical to Planar Image Mapping using Scanline Coherence,” United States Patent, Patent Number 5,396,583, March, 1995.

[2] S.E. Chen, “QuickTime VR - an Image-Based Approach to Virtual Environment Navigation,” In Proc. SIGGRAPH’95, pages 29-38, August, 1995.

[3] A. Finkelstein, C.E. Jacobs and D.H. Salesin, “Multiresolution Video,” In Proc.

SIGGRAPH’96, pages 281-290, August, 1996.

[4] M. Irani and P. Anandan, “Video Indexing Based on Mosaic Representations,” In Proc. IEEE, vol. 86, no. 5, pages 905-921, May, 1998.

[5] T. Pintaric, U. Neumann and A. Rizzo, “Immersive Panoramic Video,” In Proc.

ACM MULTIMEDIA’00, pages 493-494, 2000.

[6] D. Kimber, J. Foote and S. Lertsithichai, “FlyAbout: Spatially Indexed Panoramic Video,” In Proc. ACM MULTIMEDIA’01, pages 339-347, 2001.

[7] A. Rav-Acha, Y. Pritch, D. Lischinski and S. Peleg, “Dynamosaicing: Mosaicing of Dynamic Scenes,” In Proc. IEEE, vol. 29, no. 10, pages 1789-1801, October, 2007.

[8] A. Schödl, R. Szeliski, D.H. Salesin and I. Essa, “Video Texture,” In Proc.

SIGGRAPH’00, pages 489-498, July, 2000.

[9] G. Doretto, A. Chiuso, Y.N. Wu and S. Soatto, “Dynamic Texture” In Proc. Int. J.

Comput. Vis., vol. 51, no. 2, pages 91-109, February, 2003.

[10]V. Kwatra, A. Schödl, I. Essa, G. Turk and A. Bobick, “Graphcut Textures:

Image and Video Synthesis Using Graph Cuts,” In Proc. SIGGRAPH’03, vol. 22, no. 3, pages 277-286, July, 2003.

(49)

[11] A. Agarwala, K.C. Zheng, C. Pal, M. Agrawala, M. Cohen, B. Curless, D. Salesin and R.Szeliski, “Panoramic Video Textures,” In Proc. SIGGRAPG’05, vol. 24, no.

3, pages 821-827, August, 2005.

[12]M. Bertalmio, A.L. Bertozzi and G. Sapiro, “Navier-Stokes, Fluid Dynamics, and Image and Video Inpainting,” In Proc. CVPR’01, pages 355-362, 2001.

[13]J. Jia, T.P. Wu, Y.W. Tai and C.K. Tang, “Video Repairing: Inference of Foreground and Background under Severe Occlusion,” In Proc. CVPR’04, pages 364-371, July, 2004.

[14]S.C. Cheung, J. Zhao and M.V. Venkatesh, ”Efficient Object-Based Video Inpainting,” In Proc. ICIP’06, pages 705-708, 2006.

[15]N.C. Tang, H.Y.M. Liao, C.W. Su, F. Huang and T.K. Shih, “Video Inpainting on Digitized Old Films,” In Proc. KES’09, pages 421-430, 2009.

[16]K.A. Patwardhan, G. Sapiro and M. Bertalmío, “Video Inpainting of Occluding and Occluded Objects,” In Proc. ICIP’05, pages 69-72, 2005.

[17]T.K. Shih, N.C. Tang, W.S. Yeh, T.J. Chen, “Video Inpainting and Implant via Diversified Temporal Continuations,” In Proc. ACM MULTIMEDIA’06, page 136, 2006.

[18]K.A. Patwardhan, G. Sapiro, M. Bertalmío, “Video Inpainting under Constrained Camera,” In Proc. IEEE Transactions on Image Processing, Vol. 16, no. 2, pages545-553, 2007.

[19]圖 2-2 影 像 移 動 模 糊 , 作 者 : E01 , 出 處 : http://en.wikipedia.org/wiki/File:London_bus_and_telephone_box_on_Haymarke t.jpg

[20]圖 2-6 光 學 像 差 ( A ) 桶 狀 變 形 , 作 者 : WolfWings , 出 處 : http://en.wikipedia.org/wiki/File:Barrel_distortion.svg

[21]圖 2-6 光 學 像 差 ( B ) 枕 狀 變 形 , 作 者 : WolfWings , 出 處 : http://en.wikipedia.org/wiki/File:Pincushion_distortion.svg

數據

圖 2-15 垂直方向投射點側視圖 令線段β為圓柱體正中心至視平面上一點投影至 高的圓柱體圓截面上的 長度,則由水平方向投射點俯視圖(圖 2-13)可得: β = cos α ⇒ β = cos α 令 H 為視平面的高度,P 為欲投射至視平面上的環場影像垂直方向座標,S 為環場影像垂直方向座標 P 投射至視平面上的垂直方向座標,則: S − H2 P − H2 = β ⇒ S = H 2 + P − H2 cos α 經過如此的方式轉換後,即可得到環場影像上的點 P( △ X + P ﹐P )投射 至視平

圖 2-15

垂直方向投射點側視圖 令線段β為圓柱體正中心至視平面上一點投影至 高的圓柱體圓截面上的 長度,則由水平方向投射點俯視圖(圖 2-13)可得: β = cos α ⇒ β = cos α 令 H 為視平面的高度,P 為欲投射至視平面上的環場影像垂直方向座標,S 為環場影像垂直方向座標 P 投射至視平面上的垂直方向座標,則: S − H2 P − H2 = β ⇒ S = H 2 + P − H2 cos α 經過如此的方式轉換後,即可得到環場影像上的點 P( △ X + P ﹐P )投射 至視平 p.27
圖 3-7 切割線尋找示意圖 然而以如此的切割方法只能找到最佳的 2D 切割線,將每層切割過後的 2D 切線疊合在一起所形成的 3D 平面不一定是最好的 3D 切割曲面,因此我們在每 一層中保留至各個切點的 t+1 條 2D 切割線,其中每一條 2D 切割線分別為切割 至各個切點的最佳切割線(圖 3-8)。 圖 3-8 水平方向切點 找出各層 t+1 條的 2D 切割線後,要尋找以一層一條 2D 切割線所合成的 3D 切割曲面,如(圖 3-9)中的兩條 2D 切割線分別位於相鄰的上下兩層重疊區域 上,其中深

圖 3-7

切割線尋找示意圖 然而以如此的切割方法只能找到最佳的 2D 切割線,將每層切割過後的 2D 切線疊合在一起所形成的 3D 平面不一定是最好的 3D 切割曲面,因此我們在每 一層中保留至各個切點的 t+1 條 2D 切割線,其中每一條 2D 切割線分別為切割 至各個切點的最佳切割線(圖 3-8)。 圖 3-8 水平方向切點 找出各層 t+1 條的 2D 切割線後,要尋找以一層一條 2D 切割線所合成的 3D 切割曲面,如(圖 3-9)中的兩條 2D 切割線分別位於相鄰的上下兩層重疊區域 上,其中深 p.37
圖 3-10 影片切割方向(A) 影片切割方向 (A)水平切割 (B)垂直切割 圖 3-11 水平切割線(B) 垂直切割

圖 3-10

影片切割方向(A) 影片切割方向 (A)水平切割 (B)垂直切割 圖 3-11 水平切割線(B) 垂直切割 p.39
圖 4-2 實驗設計流程圖開始環場影像 動態景物區域選取結束動態影像處理讀取影片動態環場影像 修補區域選取影像修補影像接合決定接合欄位YesNo由使用者決定是否需要再修補?

圖 4-2

實驗設計流程圖開始環場影像 動態景物區域選取結束動態影像處理讀取影片動態環場影像 修補區域選取影像修補影像接合決定接合欄位YesNo由使用者決定是否需要再修補? p.41
圖 5-8 動態影像處理結果 - 海浪 原始影格 (frame) 連續影片影格(frame) 影格大小(pixel) 保留影格 (frame) 處理時間 (second) 噴水池 115 23 247*326 20 45 青草 80 22 180*210 20 9 水波 81 32 639*359 20 41 海浪 263 243 612*292 180 112 表 5-2 動態影像處理數據

圖 5-8

動態影像處理結果 - 海浪 原始影格 (frame) 連續影片影格(frame) 影格大小(pixel) 保留影格 (frame) 處理時間 (second) 噴水池 115 23 247*326 20 45 青草 80 22 180*210 20 9 水波 81 32 639*359 20 41 海浪 263 243 612*292 180 112 表 5-2 動態影像處理數據 p.46

參考文獻

相關主題 :