• 沒有找到結果。

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

3.2 影片裁切與接合

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

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

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

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

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

W H 時間軸方向

時間軸方向 片頭 片尾

場景中任一景物,在一部水平旋轉一圈約 70 ~ 100 秒所拍攝的影片中,大約

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

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

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

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

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

左 右

左 右

重疊區域 影片頭 影片尾

以(圖 3-6)為例,疊合區域為 3 個像素,因此由上至下的切割路徑有 4 個 3-6)中左、右兩圖的重疊區域,其中每個箭號皆有 cost,則我們由 A、B、C、

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

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

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

差,總和深色區域 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)。

時間軸方向 水平方向

圖 3-10 影片切割方向

(A)

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

圖 3-11 水平切割線

(B)

垂直切割

相關文件