摘要:信息技術的發展帶動了通信網絡的迅速發展,它既為計算機網絡的發展提供了機遇,又給通信網絡的效率和安全提出了更高的挑戰。該文針對無線中圖像數據丟失問題,利用基于樣本塊的方法填充丟失數據,不僅能夠提高通信網絡的效率,而且可以自動恢復丟失的圖像數據,實驗顯示了該方法的有效性。
關鍵詞:通信網絡;基于樣本塊的方法;UDP協議;Mean-Shift方法
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2010)21-5714-02
通信網絡為計算機信息的獲取、傳輸、處理、利用和共享提供一個安全可靠的環境和傳輸通道,但現實中通信網絡并非是絕對安全的,傳輸數據過程中數據包的丟失、泄密和篡改時有發生,且日趨嚴重。
目前在通信網絡中比較常用的兩個通信協議是TCP協議和UDP協議。TCP是一種面向連接的協議,采用“三次握手”方式來確保數據的準確接收,其工作機制是首先是建立連接;其次發送端發送數據,接收端接收數據;再次接收端向發送端發送反饋信息,如果發送數據被成功接收,則斷開連接,否則必須重傳發送失敗的數據。而UDP協議是一種無連接的協議,不提供可靠的信息發送機制,因此在數據傳輸過程當中更容易出現數據包的丟失現象。
TCP協議雖說提供安全的數據傳輸,但是傳輸效率不高,因此不適合于實時性較高的應用。UDP協議雖說不提供安全的數據傳輸,但是其傳輸效率很高,能實現實時傳輸,但是容易出現丟失數據包的問題。在實際當中很多實時性很高的珍貴數據是不容有失的,那么如何解決這一問題呢?
在2003年Shantanu D.Rane等提出無線電傳輸中丟失數據復原的問題,他們結合現有的圖像修復技術和紋理合成技術對傳輸過程中丟失的數據進行填充。在傳輸過程中,圖像被劃分為 的塊,計算其離散余弦變換,然后量化并進行哈弗曼編碼,最后傳輸圖像數據[1]。該文獻中對丟失數據填充過程如下:對丟失的塊分類,根據周圍的塊判斷丟失塊是紋理塊還是結構塊,如果是紋理塊使用紋理合成算法,否則使用結構修復算法。分析發現該方法對于塊的分類不夠準確,而且丟失數據的填充比較耗時。
本文針對上述缺陷直接使用基于樣本塊的方法[3]填充UDP協議丟包數據。在目前所有的圖像修復方法中,基于樣本塊的修復方法是非常有效用的一種,它不僅能夠填充圖像紋理部分,而且能夠修復圖像簡單的結構,對結構的修復主要是受修復的優先權和樣本塊的大小控制,適合的修復順序和樣本塊大小是有利于圖像結構的保持。因此本文直接使用基于樣本塊的方法對丟失的圖像數據進行填充,這樣不僅能夠提高填充的效率,而且能夠減輕數據包的丟失造成嚴重損失。
1 基于樣本塊的丟失圖像數據填充
UDP協議的數據傳輸過程與無線電數據的傳輸是相似的,其優點是傳輸過程中的部分數據丟失不會引起整個圖像數據的混亂,這就為數據的恢復提供了一定的可能,否則數據的恢復是非常困難的。在很多文獻中提到UDP協議的丟包率與具體網絡環境有關,沒有一個準確的數值,但是一般來說其平均丟包率總會小于無線電數據的丟包率3.6%[2]。
基于樣本塊的方法一種非常有效的丟失圖像數據的填充方法,它不僅能填充大塊的紋理破損,而且能夠修復較小的結構破損。UDP協議的丟包率一般來說很小,這也就為圖像的結構部分的復原提供了重要的保障。基于樣本塊的圖像修復過程如下:
1) 確定丟失數據包的位置,因為圖像數據是經過編碼后傳輸的,因此即使丟包也不會使得整個圖像數據混亂,自然其丟失數據的位置容易確定;
2) 尋找破損區域的邊緣;
3) 按照優先權計算方法確定當前優先權最高的像素點,優先權P(p)一般為信任度因子C(p)與數據因子D(p)的積。信任度因子和數據因子的計算如式(1)和式(2):
(1)
(2)
信任度因子確保了當前待修復塊上有更多的已知像素點來確保找到的最佳匹配塊的準確性,而數據因子表示破損區域邊界在優先權最高像素點處的法線與該點處等照線的夾角,夾角越大則結構越強,否則結構越弱,結構越強的自然越先修復,這樣有利于圖像邊緣的保持;
4) 根據相似度的度量機制,尋找最佳匹配塊;
5) 將最佳匹配塊中的數據拷貝到當前待修復塊中,注意只拷貝當前塊中破損像素點對應的數據;
6) 更新破損區域;
7) 判斷破損像素點的個數是否為0,如果為0,則轉8),否則返回到2);
8) 修復結束。
基于樣本塊的修復方法雖說有很好的修復效果,但是也必須注意其修復過程中存在的問題。首先誤差的累積問題,這必然導致錯誤的填充結果。其次是最佳匹配塊的選擇問題,如何在多個候選最佳匹配塊中選出真正最佳的匹配塊。
文獻[4]提出一種新的方法來解決這誤差累積的問題,首先使用Mean-Shift方法[5]對圖像進行了粗劃分,對最佳匹配塊的選擇區域作了限制,具體的最佳匹配塊的選擇原則如下:
1) 如果待修復塊屬于粗劃分Ti,則最佳匹配塊僅在Ti中選擇;
2) 如果待修復塊處于多個劃分Ti∪Ti+1∪...∪Ti+k的邊緣,則最佳匹配塊在Ti∪Ti+1∪...∪Ti+k中選擇。
上述方法相當于給匹配塊的選擇加了一些約束,使選擇范圍縮小。這樣不僅縮短了尋找匹配塊的時間,也避免了誤差的累積。
另外一個問題就是最佳匹配塊唯一的問題。假設目前找到的匹配塊為ψp1, ψp2,…ψpk,那么如何在這之中選擇一個真正的最佳匹配塊。文獻[6]提到了一種選取最佳匹配塊的方法,認為與當前待修復塊的空間距離越近,其相關程度越高。因此,通過計算待修復塊的核與匹配塊的核之間的空間距離來最終選定哪個塊是真正的最佳匹配塊。丟失數據的填充流程圖如圖1所示。
2 實驗結果
本文用VC++實現了該算法,通過大量的實驗說明了本文算法的有效性。由于傳輸圖像很容易獲得,因此本文采用峰值信噪比的方法對恢復結果進行客觀評價。峰值信噪比PSNR的計算如下式:
(3)
PSNR值越大,恢復的效果越好,越接近原圖;PSNR值越小,恢復效果越差,與原圖差異越大。恢復結果如圖2、圖3、圖4所示。
4 結論
本文分析了通信網絡中UDP協議的傳輸機制,發現UDP協議在傳輸數據時容易發生數據丟包問題,由此使用基于樣本塊的方法解決恢復丟失數據包的問題。盡管文獻[1]的作者提出了無線傳輸中圖像數據的恢復方法,但是該方法比較復雜,而且存在諸多的不穩定性,諸如塊的分類等。本文結合基于樣本塊修復的優點對丟失數據進行恢復,并通過實驗進行了驗證,確實取得了令人滿意的效果。這樣不僅很大程度上提高了UDP協議圖像數據傳輸的安全性,也提高了UDP協議的傳輸效率。
參考文獻:
[1] Shantanu D.Rane,Guilloermo Sapiro and Marcelo Bertalmio. Structure and Texture Filling-in of Missing Image Blocks in Wireless Transmission and Compression Applications[J].IEEE TRANSACTIONS ON IMAGE PROCESSING,VOL.12,NO.3,MARCH 2003,pp.296-303.
[2] E.Chang. An image coding and reconstruction scheme for mobile computing.In proc.5th IDMS,Oslo,Norway,Sept.1998,pp.137-148.
[3] A.Criminisi,P.Perez and K.Toyama. Region Filling and Object Removal by Exemplar-Based Image Inpainting[J].IEEE TRANSACTIONS ON IMAGE PROCESSING,VOL.13,NO.9,SEP 2004.
[4] Feng Tang,Yiting Ying,Jin Wang,and Qunsheng Peng.A Novel Texture Synthesis Based Algorithm for Object Removal in Photographs. MJ Maher (Ed.): ASIAN 2004, LNCS 3321, pp. 248–258, 2004.
[5] Comaniciu D, Meer P.: Mean Shift: A Robust Approach toward Feature Space Analysis[J],IEEE Trans. Pattern Analysis Machine Intell,Vol.24, No.5,603-619,2002.
[6] 盧小寶,王維蘭.基于樣本塊的唐卡圖像修復算法的改進[J].計算機應用.2010,30(4):943-946,2010.
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文