第一卷 第十期 - 2007年十月二十六日 PDF
用於物體移除後的數位照片之區域填補的混合演算法與缺陷偵測機制

王駿發教授 許瀚仁 廖上嘉

國立成功大學電機系
IEEE Trans. Image Processing Vol. 16, No. 6, June 2007, pp. 1611-1622.

著數位內容時代的來臨,以內容為基礎的影像處理技術也備受重視。在消費性電子中,數位相機的需求也倍增。此研究可以在數位相機拍攝時, 將不需要的路人移除。無論是傳統相機或是數位相機,在實際拍照情況下均會遇到某些無法克服的問題。那就是在攝取影像時,也會攝取到不預期拍到的目標。例如,在觀光景點拍照時,沒注意到背後有陌生人站在後面,也把陌生人拍進去。又例如,在拍照時往往會擺姿勢,這通常會使攝影者花上幾秒鐘的時間去瞄準並且等目標擺好姿勢。等攝影者按下快門的瞬間,若突然有路人走過鏡頭前,並被攝取到影像裡,這是令人非常沮喪的。即使再重拍一次,重擺一次姿勢,也會顯得不自然。如果在拍攝之後,再從後端處理。事實上會花費許多時間,使用者也必須具備影像處理的技巧,才有辦法修改。

這篇研究主要目的是為了研發新的數位相機之功能,例如移除數位相片上特定多餘的物體後,填補背景之區域此問題可定義為當物體移除後,我們要如何藉由複製部分的剩餘背景,去"猜測"移除的空白區域,並同時在視覺上提高視覺上的逼真度。我們提出了一個由紋理合成技術及有效內插方法之組合技術的混合式背景填補演算法,與兼具重新確認合成品質的機制以達到下列三項目 (1). "半貼塊紋理合成技術"可以精確地合成空白區域
(2). "加權內插方法"可以用來減少計算時間 (3). 當合成結果令人不滿意時,"缺陷偵測機制"整合kirsch邊界偵測與色彩梯度來偵測填補區域的缺陷區塊。這項技術能在不需要使用者介入的情況之下,主動再做一次合成並可使用於其他演算法。在區域填補的過程中 使用色彩紋理分布之分析來決定是否採用半貼塊紋理合成技術或是加權內插方法。在半貼塊紋理合成技術中,物件移除的空白區域之實際像素值,將從原始區域的影像藉由適應性取樣來合成。

區域填補是將特定物體移除之後,以人類視覺系統上合理的感官接受度將其空白區域填補。以圖一為例,說明我們的區域填補之應用及功能。圖一(a)為我們所提出的區域填補演算法之輸入影像,並且定義欲移除之物件為高空彈跳者,其空白之人形區塊Rl 即為物體移除後之區域;而原始圖檔在移除物體之後所留下的背景區域Rs,則為我們的演算法修補程序之參考資料源,即來源區域,如圖一(b)所示。在經過區域填補之後所輸出的影像為圖一(c)。來源區域的有效像素提供我們對於空白區域需要填入像素的樣本。

                           (a)                                                                    (b)                                                                   (c)

圖一︰區域填補用於物體移除後的範例 (a) 原始影像 (b) 物體移除後的影像 (c) 區域填補後的輸出影像



我們提出的演算法的虛擬程式碼描述於表一。首先,計算並分析空白區域之色彩紋理分佈,並且根據此分析結果來判斷此影像最適合之演算。在第一次區域填補後將產生 完成區域填補之影像。若產生之影像不如預期時,可利用缺陷偵測機制來偵測須要再次處理的區塊,且標示其加強修補區域為白色。這些有缺陷的區塊在第二次區域填補程序後,將利用半貼塊紋理合成技術,再重新做一次合成至最終的輸出影像產生。我們的測試影像為先前相關的研究報告所採用的影像以便作為效能之比較,另外亦採用一些實際生活的影像來做額外的效能測試。紅色的椅子從圖片中移除並且完成填補。原始圖檔以及完成填補後的影像分別呈現於圖二 (a)以及圖二。由圖中可知小樹叢的圖像依著生長的方向自然的產生。圖三(a)與圖三(b)分別是原始影像與填補失敗的影像。圖三(c) 是缺陷偵測後的影像。缺陷偵測機制後,不自然的區塊被重新填補如圖三(d)所示。如圖四(a)所示,另外提供一個複雜背景是移除物體阻檔在柵欄之前。重要的邊界銜接的問題,考驗著我們所提出的演算法的強韌性。輸出結果如圖四 (b)所示。破碎的邊界對於人類感官的察覺力而言,是一個顯而易見的錯誤。我們利用調整合成的方向及尺寸來簡化合成的順序。

相較於先前相關研究所採用的演算法,我們的演算法可產生更逼真的視覺效果,並且進一步提供缺陷偵測機制來偵測不合理的區塊並將其修復,此一重新合成之演算法乃採用半貼塊紋理合成技術。同時,我們提出的演算法架構,亦因其運算的規則性,可實現成硬體架構或下載到嵌入式系統中,極適用於現今的數位相機應用上。

                                                                     表一    提出的演算法的虛擬程式碼



      

                                                (a)                                                                                                            (b)

圖二︰測試影像 椅子” (a) 原始影像 (影像解析度是 771 ╳514 像素) (b) 提出的半貼塊紋理演算法之輸出影像



                                              (a)                                                                          (b) 

                                                                (c)                                                                          (d)                                        

圖三︰測試影像高空彈跳者 與缺陷偵測機制 (a) 原始影像 (影像解析度是 205 ╳ 307 像素) (b) 填補失敗的影像 (c) 缺陷偵測後的影像。白色區塊是缺陷偵測機制後,不自然的區塊 (d) 重新填補後的輸出影像 



                                           (a)                                                                                                                      (b)

圖四︰移除物體阻檔在柵欄之前的範例 (a) 原始影像 (b) 輸出影像

< 上一篇下一篇 >