• 沒有找到結果。

H.264/AVC之資訊隱藏技術

N/A
N/A
Protected

Academic year: 2021

Share "H.264/AVC之資訊隱藏技術"

Copied!
56
0
0

加載中.... (立即查看全文)

全文

(1)國 立 屏東教育 大 學 資訊科學系 碩 士 論 文. H.264/AVC之資訊隱藏技術. Data Hiding in H.264/AVC. 研 究 生:林子翔 指導教授:楊政興 博士. 中 華 民 國 102 年 7 月.

(2) H.264/AVC之資訊隱藏技術 Data Hiding in H.264/AVC 研 究 生:林子翔. Student:Tzu-hsiang Lin. 指導教授:楊政興. Advisor:Cheng-Hsing Yang. 國 立 屏 東 教 育 大 學 資 訊 科 學 系 碩 士 論 文. A Thesis Submitted to Department of Computer Science College of Sciences National Pingtung University of Education in partial Fulfillment of the Requirements for the Degree of Master In Computer Science. July 2013. Pingtung, Taiwan, Republic of China. 中華民國102年7月.

(3)

(4) 誌. 謝. 在研究所的求學過程中,首先感謝指導教授楊政興博士及林義凱博士、黃樹乾博士, 除了學術上的研究及論文上的撰寫,更讓我學習到認真負責的態度,從平常論文的研究, 相關文獻的探討,讓我們能更了解影像處理、資訊安全、資訊隱藏等領域的奧妙,老師 認真嚴謹的態度更是我們學習的典範,讓我們能把論文順利的完成且盡善盡美。 而在這些過程中也感謝老師不厭其煩的指導與解惑,也感謝口試委員們對本篇論文 多方的指導與建議,使得本論文更加完整,無論工作或是學習的道路上總是充滿荊棘, 從遇到問題進而解決問題,更讓我深深的體會到堅持的重要。 在學期間也感謝實驗室的學長、同學、和學弟妹的互相鼓勵與幫助,還有晴耕雨讀 的夥伴們對我的支持,讓我在研究及生活上充滿活力,最後感謝我的父母與家人在我求 學期間給予我最大的支持與關懷,讓我能夠順利完成學業,更感謝每一位關心我的人。. I.

(5) 摘. 要. 因為資訊及網際網路的發達,在網路上數位多媒體資料非常容易被儲存、傳播、修 改及非法複製,為了防止資料傳輸時的安全問題及版權保護的問題,可以藉由資訊隱藏 的技術來解決這些問題。 H.264的視訊壓縮格式因具有相當高的壓縮效果和壓縮品質,故被廣泛使用。H.264 透 過 畫 面 內 預 測 (Intra-Prediction) 來 消 除 畫 面 內 的 空 間 冗 餘 性 , 以 畫 面 間 預 測 (Inter-Prediction)來消除畫面與畫面間的冗餘性,其中在畫面間預測的部分,使用移動向 量(Motion vector)來記錄其移動資訊。 在本篇論文中,我們提出一利用P畫面移動向量之H.264/AVC之資訊隱藏技術,藉 由修改移動向量之位移來達到資訊隱藏的目的,我們提出之方法在藏入機密訊息之後, 可以維持很好的視訊品質,且可容易取回藏入之機密訊息,且有相當不錯之藏量。. 關鍵字:H.264/AVC、移動向量、浮水印、資訊隱藏. II.

(6) Abstract Due to the development of information and Internet, digital multimedia data is very easy to be stored, transmitted, modified, and illegally copied over the network. In order to prevent data transmission security issues and copyright protection issues, the information hiding techniques have been developed to solve these issues. Because H.264 video compression format has a very good compression rate and compression quality, it has been widely used. H.264 uses intra prediction to eliminate the intra-frame spatial redundancy and inter prediction to eliminate the inter-frame temporal redundancy, in which the inter-frame prediction uses motion vectors to record it’s motion information. In this thesis, a H.264/AVC data hiding technique based on motion vectors of P frame is proposed. It modifies the motion vector of shift to achieve the purpose of data hiding. After secret data is embedded, our proposed method can maintain a good video quality. Besides, the embedded data can be easily extracted and there is a good amount of embedding capacity.. Keywords:H.264/AVC , motion vector , watermark , data hiding. III.

(7) 目. 錄. 誌. 謝 ...............................................................................................................................I. 摘. 要 ............................................................................................................................. II. Abstract ..................................................................................................................................... III 目. 錄 ............................................................................................................................ IV. 圖. 次 ............................................................................................................................ VI. 表. 次 .......................................................................................................................... VII. 第一章. 緒論 ........................................................................................................................ 1 第一節 研究背景與動機 ........................................................................................... 1 第二節 研究目的 ....................................................................................................... 2 第三節 論文架構 ....................................................................................................... 2. 第二章. 文獻探討 ................................................................................................................ 4 第一節 數位浮水印介紹 ........................................................................................... 4 第二節 H.264/AVC壓縮標準 .................................................................................... 6 第三節 畫面內預測(Intra-Prediction) ..................................................................... 10 第四節 畫面間預測(Inter-Prediction) ..................................................................... 20 第五節 移動估計與移動補償 ................................................................................. 21 第六節 轉換量化及熵編碼 ..................................................................................... 21 第七節 H.264上資訊隱藏的相關文獻 ................................................................... 23. 第三章. H.264之資訊隱藏技術 ........................................................................................ 25 第一節 資訊隱藏之方法分析 ................................................................................. 25 第二節 資訊隱藏方法 ............................................................................................. 26 第三節 資訊萃取方法 ............................................................................................. 30. 第四章. 實驗結果與數據分析 .......................................................................................... 33 第一節 實驗參數設定 ............................................................................................. 33 第二節 實驗之測試影片及客觀評估方式 ............................................................. 34 第三節 本論文藏入後之實驗數據 ......................................................................... 36 第四節 本論文與其他學者方法比較 ..................................................................... 39. 第五章. 結論及未來研究方向 .......................................................................................... 42 IV.

(8) 第一節 結論 ............................................................................................................. 42 第二節 未來研究方向 ............................................................................................. 42 參考文獻 .................................................................................................................................. 43. V.

(9) 圖. 次. 圖2. 1:ITU-T與ISO/IEC MPEG標準的演進 .......................................................................... 7 圖2. 2:NAL UNIT STREAM的層級架構 .................................................................................... 8 圖2. 3:畫面內預測預測方向 ................................................................................................ 12 圖2. 4:4X4畫面內預測模式 .................................................................................................. 13 圖2. 5:VERTICAL MODE示意圖 .............................................................................................. 13 圖2. 6:HORIZONTAL MODE示意圖 ......................................................................................... 14 圖2. 7:DC MODE示意圖 ......................................................................................................... 14 圖2. 8:DIAGONAL DOWN-LEFT MODE示意圖 ......................................................................... 15 圖2. 9:DIAGONAL DOWN-RIGHT MODE示意圖 ....................................................................... 15 圖2. 10:VERTICAL-RIGHT MODE示意圖 ................................................................................. 16 圖2. 11:HORIZONTAL-DOWN MODE示意圖 ............................................................................ 17 圖2. 12:VERTICAL-LEFT MODE示意圖 ................................................................................... 18 圖2. 13:HORIZONTAL-UP MODE示意圖 .................................................................................. 19 圖2. 14 :16X16畫面內預測模式 .............................................................................................. 19 圖2. 15:移動估計之七種區塊切割方式 .............................................................................. 20 圖2. 16:H.264量化表 ............................................................................................................ 22 圖2. 17:依X軸分類之MV區塊 ................................................................................................ 24 圖3. 1:移動估計 .................................................................................................................... 25 圖3. 2:嵌入示意圖 ................................................................................................................ 27 圖3. 3:嵌入流程圖 ................................................................................................................ 28 圖3. 4:範例 ............................................................................................................................ 29 圖3. 5:萃取流程圖 ................................................................................................................ 31 圖4. 1:原始視訊 .................................................................................................................... 34 圖4. 2:嵌入後視訊 ................................................................................................................ 34. VI.

(10) 表. 次. 表4. 1:視訊格式 .................................................................................................................... 33 表4. 2:JM之參數 ................................................................................................................... 33 表4. 3:測試視訊說明 ............................................................................................................ 35 表4. 4:FOREMAN序列之實驗數據 ........................................................................................ 36 表4. 5:AKIYO序列之實驗數據.............................................................................................. 36 表4. 6:MOBILE序列之實驗數據 ........................................................................................... 37 表4. 7:NEWS序列之實驗數據 ............................................................................................... 37 表4. 8:HIGHWAY序列之實驗數據 ........................................................................................ 37 表4. 9:SALESMAN序列之實驗數據 ....................................................................................... 38 表4. 10:全部序列之實驗數據 .............................................................................................. 38 表4. 11:FOREMAN序列的結果比較 ...................................................................................... 39 表4. 12:AKIYO序列的結果比較............................................................................................ 39 表4. 13:MOBILE序列的結果比較 ......................................................................................... 39 表4. 14:NEWS序列的結果比較 ............................................................................................. 40 表4. 15:HIGHWAY序列的結果比較 ...................................................................................... 40 表4. 16:SALESMAN序列的結果比較 ..................................................................................... 40 表4. 17:全部序列的結果比較 .............................................................................................. 40. VII.

(11) 第一章. 緒論. 第一節 研究背景與動機 數位影像是一種流行的媒體,因為多媒體壓縮和網際網路的發展,使得以往的資料 轉變為數位資訊,因此在網路上數位影像資料非常容易被儲存、傳播、修改及非法複製, 所以需要注意資料傳輸時的安全問題以及版權保護智慧財產權等問題,故可藉由資訊隱 藏的技術來做版權保護,DRM(Digital Rights Management)數位版權管理是一種可保護內 容在網際網路上撥放傳播,可防止版權內容遭到非法使用,企業也可以確保機密文件不 被員工外洩的技術,保護所有者的數位資產,新規格的產品更容易被竊取和非法拷貝, 故公司會投入相當的預算來做 DRM 數位版權管理,來保護重要資料,如用戶 ID 、 到期日期、作者姓名等。 數位影像浮水印(Digital Watermark)[1][2]是在數位影像中加入有意義的圖形或文字, 用來作為數位影像的版權保護,也可以使用在機密通訊的傳送,故可藉由資訊隱藏的技 術來達到版權保護的目的。即是在傳送過程中嵌入我們需要的機密訊息浮水印,且影像 在加入浮水印之後不影響其視覺感知上的影像品質,不會輕易被肉眼察覺,在網路傳輸 時除了傳送者跟接收者以外沒有人知道有資訊隱藏,可以防止未經授權的複製。 視訊由一連串靜止畫面組成,若我們在做視訊壓縮時,考慮畫面間的關聯性,則可 對視訊做有效壓縮。通常畫面與畫面間有極大的相似性,因此會產生時間上冗餘 (Temporal redundancy),壓縮時參考兩張畫面的關聯性,只對不同的地方做壓縮,或者 直接使用前一張畫面,以減少資料量,達到壓縮效果。 單張畫面內鄰近之點的關聯性也很高,有空間上的冗餘(Spatial redundancy),我們 可對此做進一步的壓縮。再加上視訊的接收端為人類的視覺系統,考慮人類對視訊的感 覺,移除人眼無法察覺的失真,再將資料做有效率的儲存。而越來越多的數位視訊的出 現,如數位教材、圖書館的影片檔、線上教學等,H.264 壓縮標準正好是一種適用於網 路傳輸的視訊壓縮標準,因為其高壓縮率及高影像品質而被廣泛使用。 本論文提出一基於移動向量之數位浮水印技術,藉由改變特定的移動向量來實現資 訊的藏入,並實驗證明本方法之可行性。. 1.

(12) 第二節 研究目的 因為多媒體壓縮及網路技術的發展,使得數位影像易於傳播,人們可輕易的使用燒 錄設備去複製多媒體資料,網路上也可以非常方便的下載到視訊影片或音樂檔案,所以 需要有效的版權保護,例如用視訊浮水印防止未經授權的複製。數位浮水印已有多年發 展,包括靜態影像(Still Image Watermark)浮水印及視訊(Video Watermark)浮水印,但是 許多視訊浮水印的技術都是由靜態影像浮水印[8]發展而來,直接以靜態影像的處理方式 應用到視訊浮水印[9],然而視訊與靜態影像略有不同,視訊除了畫面內(Intra frame)的 空間冗餘性,還有畫面間(Inter frame)時間軸上的冗餘性,即相鄰的畫面跟畫面之間有極 高的相關性,所以我們要利用其特性,考慮其時間及空間上的特性來設計浮水印系統。. 第三節 論文架構 本論文共分為五章,其內容安排如下: 第一章:緒論 說明研究背景與動機、研究目的及論文架構。 第二章:文獻探討 為使本研究理論基礎與架構更周延,本論文搜集並整理相關文獻,歸納成下列單元 來做文獻探討: 一、數位浮水印介紹 二、H.264/AVC壓縮標準的介紹 三、畫面內預測 四、畫面間預測 五、移動估計與移動補償 六、轉換量化及熵編碼 七、相關文獻 第三章:提出之H.264之資訊隱藏技術 一、資訊隱藏之方法分析 二、資訊隱藏方法 三、資訊提取方法. 2.

(13) 第四章:實驗結果與數據分析 一、實驗參數設定 二、實驗之測試影片及客觀評估方式 三、本論文藏入後之實驗數據 四、本論文與其他學者方法比較 第五章:結論及未來研究方向 一、結論 二、未來研究方向. 3.

(14) 第二章. 文獻探討. 由於資訊的發達和網際網路的發展,藉由網路來傳遞資料,使資料傳遞更為迅速便 捷,但是也帶來了安全上的問題,而浮水印為影像中資訊隱藏(Information Hiding)常用 的技術,加入浮水印可防止未經授權的版權保護,例如音頻、靜態影像和視訊等媒體, 將機密資訊藏在媒體中,可應用在版權保護跟數位認證等[10,11] 。 浮水印因為不同的應用,對資訊隱藏的要求會著重在不同的目標,容量 (Capacity)[12]、不可察覺性(Invisible)[13]、強韌性(Robustness)[14]、可逆性(Reversible)[15] 等。浮水印可依其嵌入方式,可分成空間域(Spatial Domain)[16, 17]與頻率域(Frequency Domain)[18, 19],空間域的嵌入是一種失真性的嵌入方法,直接對空間域的像素值做修 改,來達到嵌入的效果,如LSB (Least Significant Bits)[20]等常見的方法,但是容易破壞 原圖的外觀,且較不能抵抗攻擊強韌性不足,而頻率域數位浮水印利用特定的公式如離 散餘旋轉換(Discrete Cosine Transform),離散小波轉換(Discrete Wavelet Transform)等, 將空間域像素值轉換成頻率域的係數,藉由轉換後能量集中在低頻的特性,來選擇嵌入 的位置,再利用演算法嵌入版權訊息,來達成資訊的隱藏。. 第一節 數位浮水印介紹 浮水印被分為兩類一種為可視的(Visible)數位浮水印,另一種則為不可視的(Invisible) 數位浮水印[1][2],可視的浮水印即可用肉眼直接看到浮水印,且不需演算法就可以得 到使用者資訊,如商標、校徽、註冊商標、電視台的標誌等可方便觀看者識別,保護影 片不被直接盜用,具有視覺的嚇阻效果,但會破壞原圖的美觀。另一類不可視的浮水印 無法透過肉眼直接看到,必須透過演算法將浮水印取出,而不可視的數位浮水印技術必 需要能有效的抵抗攻擊,並且不易讓人察覺其中藏有浮水印資訊,以下整理出浮水印必 需滿足的特性,做為判斷浮水印技術優劣的指標[3]: 1. 透明度(Transparency): 即為藏入浮水印後的媒體,必需不易由人體所察覺,並盡可能保有原始數位資料 完整,如此一來,讓有心人士不易察覺,進而想破壞或去除浮水印。 2. 強健性(Robustness): 即為藏入浮水印後的媒體,能夠抵抗各種無意或惡意的攻擊,如媒體經過模糊化、 4.

(15) 濾波、失真壓縮等攻擊後,仍可以將浮水印取出。 3. 正確性(Unambiguous): 即為取出的浮水印必需保有一定的完整性與正確率,不可模稜兩可、含糊不清, 才足以正確地驗證版權的擁有者。 4. 容量(Capacity): 嵌入的資料量盡可以越大越好,以提高浮水印的強健性或正確性,但前題為嵌入 後失真度不會增加太多。 5. 安全性(Security): 有些浮水印技術是公開的,嵌入與取出的技術是為人所知,媒體受到攻擊後,雖 仍可取出浮水印,卻無法確保其可信度,因此必需額外對浮水印再加密,或保留一些條 件係數,才能達到真正的安全性。 6. 不易統計偵測(Statistically undetectable): 即為攻擊者無法由藏有浮水印的媒體,利用統計之方式計算其中的浮水印資訊, 進而將其移除。 7. 不需原始資料(Blind detection): 即是在浮水印取出的過程中,不需要與原始資料做比對,即可取出浮水印,如此 一來便不需額外花費空間來儲存原始資料,此為研究發展之主流。. 在實際應用上,不同的資訊隱藏技術也著重在不同的特性上,如影像品質、強韌性 和藏入資料量。空間域的可視型浮水印在嵌入和提取時操作較為簡單,有運算快速容易 嵌入等特性,但是如果受到訊號處理等影像攻擊的破壞,強韌性不足;不可視型浮水印 在嵌入跟提取時,都比空間域浮水印來的複雜且需較高的運算量,必須經過特定轉換公 式將空間域像素值轉換為頻率域的係數,再經過演算法嵌入機密訊息達到版權保護的效 果,能抵抗影像處理的攻擊,較有強韌性。 近年來的研究多偏重在不可視型的浮水印的研究上,將機密資訊嵌入到頻率域的係 數中,在其嵌入方式、運算量及效能上,仍具相當發展空間,故可著重於此,改善嵌入 演算法的影像品質、抵抗攻擊強韌性及藏量等。. 5.

(16) 第二節 H.264/AVC壓縮標準 H.264/AVC/MPEG-4 Part10 [21] 是由 ITU-T [22] 視 訊 編 碼專 家小 組 (VCEG) 和 ISO/IEC [23]動態圖像專家小組(MPEG)聯合組成的聯合視訊團隊(Joint Video Team)提出 的高度壓縮數位視訊編解碼器標準。 此新格式在ITU-T組織中命名為H.264。在ISO組織中則納入MPEG-4 Part10在編解碼 技術上是相同的,在研究上通常合併稱為 H.264/AVC。希望能達到編碼效率的增加和 極佳的視訊品質,此編解碼技術也被稱為進階視訊編碼 (Advanced Video Coding,簡稱 AVC)。 視訊壓縮的標準由兩大標準組織所制定,一為ISO/IEC的動態圖像專家組織(Moving Picture Experts Group,MPEG)[23],制定的標準有MPEG-1、MPEG-2、MPEG-4、MPEG-7、 MPEG-21;另一為ITU-T的視頻編碼專家組織(Video Coding Experts Group,VCEG)[22], 其制定的標準有H.261、H.262、H.263、H.264,其中H.262與H.264為兩大組織所共同制 定,目前H.264為最新的視訊壓縮標準。 H.264視訊壓縮標準[24],於相關研究顯示H.264/AVC與MPEG-2及MPEG-4相較之下 [25],無論是壓縮率或視訊品質皆有大幅的提升,其優異的性能倍受關注,且H.264/AVC 將視訊編碼層(Video Coding Layer,VCL)與網路提取層(Network Abstraction Layer,NAL) 的概念引進[26][27],以往視訊標準著重的是壓縮效能部分,而H.264/AVC包含一個內建 的NAL網路協定適應層,藉由NAL來提供網路的狀態,可以讓VCL有更好的編解碼彈性 與糾錯能力,使得H.264/AVC非常適用於多媒體串流(Multimedia streaming)及行動電視 (Mobile TV)的相關應用。圖2.1[34]為ITU-T與ISO/IEC MPEG標準的演進。. 6.

(17) 圖2. 1:ITU-T與ISO/IEC MPEG標準的演進. 一. 網路提取層(NAL) H.264壓縮標準最大的特色是將網路提取層的概念引進,它是以NAL封包為單位的方 式來做為VCL編解碼的運算單位,可以將NAL當成是一個專作封裝(Packaging)的模組, 用來將VCL壓縮過的位元流(Bitstream)封裝成適當大小的封包單位(NAL-unit),並在 NAL-unit Header中的NAL-unit Type欄位記錄此封包的型式,每種型式分別對應到VCL 中不同的編解碼工具。此外,NAL有一個重要的功能,即為當網路擁塞時,可能會造成 封包錯誤或接收順序錯誤,傳輸層協定會在Reference Flag作設定的動作,當接收端收到 此NAL封包時,便會知道要進行糾錯運算,在解壓縮的同時嘗試將錯誤修正回來。 一個完整的H.264 bitstream是由許多個NAL-units所組成的,也可將此bitstream稱為 NAL unit stream,NAL unit stream的層級架構如圖2.2[34]所示,一個NAL unit stream內可 以包含多個壓縮視訊序列(coded video sequence),一個單獨的壓縮視訊序列即表示一部 影片,壓縮視訊序列是由許多Access unit所組成,一個Access unit可完整解碼出一張 Frame。 在 一 個 壓 縮 視 訊 序 列 中 , 第 一 個 Access unit 必 須 為 IDR(Instantaneous Decoding Refresh) Access unit,此unit即表示畫面內容全採intra prediction,可以完全以本身資訊即 可解碼出影像,不需參考其他的Access unit資訊,而每一個Access unit即是由多個 NAL-unit所組成,在H.264標準中規範了12種的NAL-unit型式,可以將其分類為VCL NAL-unit及Non-VCL NAL-unit兩類,其中VCL NAL-unit其內容皆為影像編碼的資訊, 7.

(18) 而Non-VCL NAL-unit則有兩種,一為Parameter Sets,另一為Supplemental Enhancement Information (SEI),Parameter Sets主要是描述整個壓縮視訊序列的參數,例如:長寬比例、 影像顯現的時間點(Timestamp)、相關解碼所需的參數…等,Parameter Sets內的資訊相當 重要,若在傳輸時產生錯誤,可能會造成影像無法解碼;而SEI可以存放影片簡介、版權 宣告、使用者自行定義的資料…等。. 圖2. 2:NAL unit stream的層級架構. 二. 視訊編碼層(VCL) H.264視訊壓縮[24][25]的原理即是消除空間與時間的冗餘性(Redundancy),來達到 壓縮的目的,H.264透過畫面內預測(Intra-Prediction)來消除畫面內(Intra frame) 的空間冗 餘性,以畫面間預測(Inter-Prediction)來消除畫面與畫面間的冗餘性,在做過預測後將差 餘影像進行空間轉換(Transform)與量化(Quantize),並將轉換與量化後的係數進行編碼。 視訊編碼技術是藉由移除影片中的冗餘(Redundancy)以減少資料量,大多數的視訊編碼 (包括H.264/AVC的主要應用)都是屬於失真(Lossy)的演算法,也就是說,我們以視覺上 品質的好壞,而不以資料的絕對正確做為編碼的最終目的。失真的壓縮演算法相較於無 失真(Lossless)的壓縮演算法,其壓縮倍率較高,而且碼率─失真取捨(Rate-distortion tradeoff)的彈性較大。 在H.264視訊編碼中,採用類似MPEG視訊編碼標準,H.264採用三種方式來壓縮一 個畫面,依據是否採用畫面間編碼與移動估計時參考畫面的選擇,有 I、P、B 三種不 同的畫面類型。其中畫面群(Group of pictures:GOP)每一個畫面群以 I 畫面為開頭, 由一張 I 畫面及數張 P 及 B 畫面所組成,這些 I、P、B 畫面的排列與數目比例並不 8.

(19) 是固定的,可以根據需要彈性選擇,其數目可因位元率之需求而改變,即 I 畫面和 I 畫 面之間的畫面排列,一個 GOP 也是視訊序列隨機存取的基本單位。 畫面群就是一組編碼的影片或視訊串流內部的連續圖像。每一個H.264編碼的影片或 視訊串流都由連續的圖像群組組成,畫面群可包含下列圖像類型: I 畫面(Intra pictures):採用類似於 JPEG DCT 的畫面內編碼,並不考慮與其他畫面 的關係,所儲存的是一張完整的畫面,相當於一個固定影像,且獨立於其它的圖像類型, 每個畫面群都是由 I 畫面開始,壓縮時不參考其他畫面,它可以保證每個GOP中必然 有一張完整的畫面,因此即使中間有很大而且突然的畫面改變(例如,鏡頭突然切換或 剪接等)使移動補償編碼沒辦法有效預測 P 畫面和 B 畫面,我們也還是可以在下一個 I 畫面恢復正常的放映; I 畫面的壓縮率較低,但它可以做為隨機讀取(如快轉、快回、 段落選取)的依據,以及 P 畫面與 B 畫面的參考畫面。 P 畫面(Predicted pictures) : P 畫面是利用前面的 I 或 P 畫面做為向前預測 (forward prediction)的參考畫面,畫面中不動的部分不儲存,只儲存不一樣的地方,再結 合移動補償編碼進行壓縮,包含來自先前的 I 或 P 畫面的差異資訊; P 畫面的壓縮 率比 I 畫面高,它也可以做為其他畫面的參考畫面,但不能做為隨機讀取的依據。 B 畫面(Bidirectional predictive pictures) :編碼時可以參考前後最近的 I 畫面或 P 畫面,再結合移動補償編碼進行壓縮,包含來自前後的 I 或 P 畫面的差異資訊; B 畫 面的壓縮率比 P 畫面更高,但它不能做為其他畫面編碼時的參考畫面,也不能做為隨 機讀取的依據。由於 B 畫面可以參考未來的畫面,因此會造成編碼延遲,比較不適合 視訊電話及視訊會議等即時性的應用。 每個畫面群以 I 畫面為開頭,然後每間隔幾張畫面就有一張 P 畫面,而在 P 畫面 與 P 畫面(或 I 畫面)間則穿插著 B 畫面,這些 I、P、B 畫面的排列與數目比例並不 是固定的,可以根據需要彈性選擇,而下一個 I 畫面即為新的畫面群的起始點。. 如果顯示順序是:I0、B1、B2、P3、B4、B5、P6、B7、B8、I9, 則編解碼順序為:I0、P3、B1、B2、P6、B4、B5、I9、B7、B8。. 9.

(20) 一般來說,影片中的冗餘可以區分為以下幾種 : (一)畫面間冗餘(Interframe redundancy):由於視訊影片是由一個時間序列的影像 所組成,同一個場景前後的畫面通常相似性極高,其內容極為相似,畫面間冗餘也稱時 間冗餘。. (二)畫面內冗餘(Intraframe redundancy):一張畫面空間上鄰近的像素(Pixel)點通常 具有相近的亮度或顏色,畫面內冗餘也稱空間冗餘。 (三)編碼冗餘(Coding redundancy):量化之後符號並非完全相等,且符號間也存在 著相關性。 (四)感官冗餘(Perceptual redundancy):人類視覺系統(HVS)對於不同顏色或空間頻 率的敏感度不盡相同,某些圖像成分較不易被察覺。. 第三節 畫面內預測(Intra-Prediction) 在H.264壓縮標準中, I 畫面(I Frame)並未參考其他畫面資訊, I 畫面的編碼是採 用類似JPEG DCT壓縮方式,不考慮與其他畫面間的關係,全以畫面內資訊,參考周圍 臨近的巨區塊(Macroblock,簡稱MB),利用其空間域上的相似性,來消除大量的冗餘資 訊量,臨近區塊的選擇一般是以欲編碼區塊的左邊與上面兩已編碼過的區塊。H.264 提 供了多種預測模式,大致上可分為亮度(Luminance)和色度(Chrominance)兩種。前置處理 將顏色轉換為YCbCr、YUV等色彩空間(Color space),被廣泛的應用於影像壓縮及數位 視訊。 在 YCbCr 格式中,Y為顏色的亮度(Luma)成分,而色度資訊被分為兩種色差成份 來儲存, Cb 表示藍色的濃度偏移量成份, Cr 則表示紅色的濃度偏移量成份。 RGB to YCbCr 的轉換公式如下:. Y = 0.299R + 0.587G + 0.114B Cb = -0.168R - 0.331G + 0.499B. (2-1). Cr = 0.500R - 0.419G - 0.081B 而 YUV 格式中,Y 表示亮度(Luminance、Luma),U 和 V 則是色度、濃度 (Chrominance、Chroma), U 和 V 元件可以被表示成原始的 R、 G 、B。 10.

(21) RGB to. YUV 的轉換公式如下:. Y= 0.299R + 0.587G + 0.114B U= -0.169R - 0.331G + 0.5B + 128. (2-2). V= 0.5R - 0.419G - 0.081B + 128. YCbCr在應用上很廣泛,JPEG、MPEG、DVD、攝影機、數位電視等皆採此一格式。 YUV和YCbCr常常有些混用的情況,其中YUV通常用來描述類比訊號,而相反的YCbCr 則是用來描述數位的影像訊號。. H.264畫面內預測分為三種模式:4x4 Luma Prediction Mode、16x16 Luma Prediction Mode、8x8 Chroma Prediction Mode。 1. 4x4 Luma Prediction Mode H.264在4x4亮度區塊提供了9種預測模式,如圖2.3[34]所示,標示0~8表示其預測方 向,其中mode 2表示DC模式,而圖2.4[34]黃色區塊大寫A~M表示臨近已編碼過的像素, 做為預測的參考,圖2.5~2.13[7][34]為畫面內預測之4×4中九種不同方向之實際預測公 式。 2. 16x16 Luma Prediction Mode H.264提供了16x16亮度區塊預測編碼,如圖2.14所示,其預測模式分為四種:Vertical、 Horizontal、DC、Plane。 3. 8x8 Chroma Prediction Mode 這主要是處理一個巨區塊裡4個8x8彩度(Chrominance)的部分,它跟16x16 Luma Prediction Mode 所包含的模式是相同的。. 11.

(22) 圖2. 3:畫面內預測預測方向. 圖2.3為4×4中九種不同的模式(Mode),分別是:. 0. Vertical 1. Horizontal 2. DC 3. Diagonal down-left 4. Diagonal down-right 5. Vertical-right 6. Horizontal-down 7. Vertical-left 8. Horizontal-up 畫面內預測利用周圍已經解壓縮的像素,圖2.4黃色區塊大寫A~M表示臨近已編碼 過的像素,做為預測的參考,之後根據圖2.3九個方向來做預測,至於預測方向則是根據 模式不同而變化,詳細預測方向及預測過程描述如下: ( pred( )表示預測值,pix( )表示像素值). 12.

(23) 圖2. 4:4x4畫面內預測模式. 0. Vertical. 圖2. 5:Vertical mode示意圖. pred(a, e, i, m) = pix(A) pred(b, f, j, n) = pix(B) pred(c, g, k, o) = pix(C) pred(d, h, l, p) = pix(D). 13.

(24) 1. Horizontal. 圖2. 6:Horizontal mode示意圖. pred(a, b, c, d) = pix(I) pred(e, f, g, h) = pix(J) pred(i, j, k, l) = pix(K) pred(m ,n, o, p) = pix(L). 2. DC. 圖2. 7:DC mode示意圖. pred(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) = [pix(A) + pix(B) + pix(C) + pix(D) + pix(I) + pix(J) + pix(K) + pix(L)] / 8. 14.

(25) 3. Diagonal down-left. 圖2. 8:Diagonal down-left mode示意圖. pred(a) = [pix(A) + 2 × pix(B) + pix(C) + 2] / 4 pred(b, e) = [pix(B) + 2 × pix(C) + pix(D) + 2] / 4 pred(c, f, i) = [pix(C) + 2 × pix(D) + pix(E) + 2] / 4 pred(d, g, j, m) = [pix(D) + 2 × pix(E) + pix(F) + 2] / 4 pred(h, k, n) = [pix(E) + 2 × pix(F) + pix(G) + 2] / 4 pred(l, o) = [pix(F) + 2 × pix(G) + pix(H) + 2] / 4 pred(p) = [pix(G) + 3 × pix(H) + 2] / 4. 4. Diagonal down-right. 圖2. 9:Diagonal down-right mode示意圖 15.

(26) pred(a, f, k, p) = [pix(I) + 2 × pix(M) + pix(A) + 2] / 4 pred(b, g, l) = [pix(M) + 2 × pix(A) + pix(B) + 2] / 4 pred(c, h) = [pix(A) + 2 × pix(B) + pix(C) + 2] / 4 pred(d) = [pix(B) + 2 × pix(C) + pix(D) + 2] / 4 pred(e, j, o) = [pix(M) + 2×pix(I) + pix(J) + 2] / 4 pred(i, n) = [pix(I) + 2 × pix(J) + pix(K) + 2] / 4 pred(m) = [pix(J) + 2 × pix(K) + pix(L) + 2] / 4. 5. Vertical-right. 圖2. 10:Vertical-right mode示意圖. pred(a, j) = [pix(M) + pix(A) + l] / 2 pred(b, k) = [pix(A) + pix(B) + l] / 2 pred(c, l) = [pix(B) + pix(C) + l] / 2 pred(d) = [pix(C) + pix(D) + l] / 2 pred(e, n) = [pix(I) + 2 × pix(M) + pix(A) + 2] / 4 pred(f, o) = [pix(I) + 2 × pix(M) + pix(A) + 2] / 4 pred(g, p) = [pix(A) + 2 × pix(B) + pix(C) + 2] / 4 pred(h) = [pix(B) + 2 × pix(C) + pix(D) + 2] / 4 pred(i) = [pix(M) + 2 × pix(I) + pix(J) + 2] / 4 pred(m) = [pix(I) + 2 × pix(J) + pix(K) + 2] / 4 16.

(27) 6. Horizontal-down. 圖2. 11:Horizontal-down mode示意圖. pred(a, g) = [pix(M) + pix(A) + l] / 2 pred(b, h) = [pix(I) + 2 × pix(M) + pix(A) + 2] / 4 pred(c) = [pix(M) + 2 × pix(A) + pix(B) + 2] / 4 pred(d) = [pix(A) + 2 × pix(B) + pix(C) + 2] / 4 pred(e, k) = [pix(I) + pix(J) + l] / 2 pred(f, l) = [pix(M) + 2 × pix(I) + pix(J) + 2] / 4 pred(i, o) = [pix(J) + pix(K) + l] / 2 pred(j, p) = [pix(I) + 2 × pix(J) + pix(K) + 2] / 4 pred(m) = [pix(K) + pix(L) + l] / 2 pred(n) = [pix(J) + 2 × pix(K) + pix(L) + 2] / 4. 17.

(28) 7. Vertical-left. 圖2. 12:Vertical-left mode示意圖. pred(a) = [pix(A) + pix(B) + l] / 2 pred(b, i) = [pix(B) + pix(C) + l] / 2 pred(c, j) = [pix(C) + pix(D) + l] / 2 pred(d, k) = [pix(D) + pix(E) + l] / 2 pred(e) = [pix(A) + 2 × pix(B) + pix(C) + 2] / 4 pred(f, m) = [pix(B) + 2 × pix(C) + pix(D) + 2] / 4 pred(g, n) = [pix(C) + 2 × pix(D) + pix(E) + 2] / 4 pred(h, o) = [pix(D) + 2 × pix(E) + pix(F) + 2] / 4 pred(l) = [pix(E) + pix(F) + l] / 2 pred(p) = [pix(E) + 2 × pix(F) + pix(G) + 2] / 4. 18.

(29) 8. Horizontal-up. 圖2. 13:Horizontal-up mode示意圖. pred(a) = [pix(I) + pix(J) + l] / 2 pred(b) = [pix(I) + 2 × pix(J) + pix(K) + 2] / 4 pred(c, e) = [pix(J) + pix(K) + l] / 2 pred(d, f) = [pix(J) + 2 × pix(K) + pix(L) + 2] / 4 pred(g, i) = [pix(K) + pix(L) + l] / 2 pred(h,j) = [pix(K) + 3 × pix(L) + 2] / 4 pred(k, m) = pix(L) pred(l, n) = pix(L) pred(o) = pix(L) pred(p) = pix(L). 圖2. 14 :16x16畫面內預測模式. 19.

(30) 第四節 畫面間預測(Inter-Prediction) 畫面間預測編碼指的就是使用 移動估計(Motion estimation)與移動補償(Motion compensation)充分利用相鄰畫面間的高相關性來達到高效率編碼的目的,在H.264中, 所謂的畫面間預測包括 P 畫面和 B 畫面。 對於橫跨畫面間的預測技術方面,H.264提供了七種不同區塊大小來進行移動估計, 其中在一個巨區塊(Macroblock)中,依不同的區塊大小將有多個移動向量。一個巨區塊 分成更小的子區塊之方式,使區塊的切割更為多樣,因此移動向量的預測也更為精準。 區塊的切割方式如圖2.15[7],分別為16x16、16x8、8x16、8x8、8x4、4x8、4x4。. 圖2. 15:移動估計之七種區塊切割方式. 在進行移動估計時,可依據影像的複雜程度來選擇切割區塊大小,影像較複雜的區 域可以使用小區塊的切割方式,如人臉或者影像內邊緣的部份;影像較平滑的區域可以 使用大區塊的切割方式,如背景的部份,如此一來可以達到較佳的壓縮效能,並提升畫 面品質。以往的視訊壓縮法,其參考影像都局限於前後相臨的影像,H.264 提供了多重 參考圖像(Multiple reference frames)的概念,使得移動向量不再只限於前後相鄰的影像, 而是可以跨過多張影像,來作為預測的對象,這種參考方式在內容重複性高的影片,可 以得到較佳的預測結果,因而提高了壓縮效能。. 20.

(31) 第五節 移動估計與移動補償 利用畫面間的相關性,使用區塊(Block)為基礎的方式來描述移動的向量,這種用來 描述移動資訊的向量我們稱之為移動向量(Motion vector,簡稱MV),移動向量是描述移 動資訊的向量。 在參考畫面中找到與目前畫面最匹配之巨區塊(Macroblock,簡稱MB),達成MV的 移動估計。移動補償預測就是以前一個畫面加上每個方塊的移動向量來建立現在畫面的 預測影像,達到畫面間的移動補償預測(Motion compensation prediction) 。. 第六節 轉換量化及熵編碼 1.轉換(Transform): Discrete Cosine Transform (DCT)是一個無損的,可逆的數學過程,它是一種空間域 到頻率域的轉換,經由DCT轉換後的能量會集中在幾個低頻係數的數值上,而高頻的係 數則會趨近於零,DCT轉換可減少空間上的冗餘(Spatial redundancy),在 H.264 壓縮中 包含兩種 DCT 方式:4 × 4 DCT、2 × 2 DCT。2 × 2 DCT 是被利用在編碼部份,在 I Frame 的處理程序中並未被使用。H.264經過空間性預測和時間性預測後的殘餘的訊號, 皆採用 4 × 4 Integer DCT。4 × 4 Integer DCT 功能同一般的8 × 8 DCT,可用來進行 訊號能量集中。 2.量化(Quantization): 雖然以往的視頻編解碼標準也利用了量化的原理來進行壓縮編碼,但是 H.264 的量 化有其不同之處。在 H.264 的量化過程中,使用量化參數(Quantization Parameter,QP) 來決定量化步階大小(Quantization Step Size,Qstep),每個量化參數 QP 對應的量化步 階 Qstep 的數值在圖2.16顯示。亮度所使用的 QP Luma 值的間距並非等距的,而是每 個 Qstep 以 12.5﹪的比例增加,也就是說每相差六個QP值,QStep值會比原先增加一 倍。而在彩度方面,因為考量人眼對於彩度並沒有像亮度那麼敏感,所以在QP Chroma 大於某值之後,採用非等距的方式去處理。圖2.16[34]H.264量化表。. 21.

(32) 圖2. 16:H.264量化表. 3.熵編碼(Entropy Coding): 視訊編碼的最後一個步驟是熵編碼,它的基本原理是為出現機率較高的符號指定較 短的碼字(Codeword),然後把較長的字碼指定給較少出現的符號。採用熵編碼的部份參 數包括預測殘餘誤差(Quantized Transform Prediction Residues)、移動向量和其它的編碼 資訊。在H.264標準中,對於熵編碼部份提供兩種選擇:一種是適應性可變長度編碼 (Context Adaptive Variable-Length Code, CAVLC);另一種為適應性二進位算術編碼 (Context Adaptive Binary Arithmetic Coding, CABAC)。 適應性可變長度編碼(Context Adaptive Variable-Length Code,CAVLC)的基本原理 [27],主要是透過已編碼數據的情況,動態調整編碼中使用的參考碼表,因而取得更高 的壓縮比值。CAVLC用於亮度及色度差餘的編碼。差餘經過轉換及量化後得到的數據 通常有以下的特性:非零係數主要集中於低頻部分,即偏二維矩陣的左上角,而高頻係 數大部分則為零,即偏二維矩陣的右下角;DC係數附近的非零係數值較大,而高頻位 置上的非零係數值大部分是+1或-1。基於那些特性,CAVLC利用非零係數的數目 (TotalCoeffs)以及拖尾係數的數目(TrailingOnes)等概念實現有效率的壓縮編碼。. 22.

(33) 第七節 H.264上資訊隱藏的相關文獻 本節說明H.264 壓縮標準所設計的視訊浮水印系統,較常見嵌入法有:嵌入到頻率 域係數上、嵌入到視訊畫面內預測(Intra-prediction mode)中[4][30][35][36][39][41][42], 及嵌入到畫面間預測的移動向量(Motion vector)[28][31][32][37][38],及修改適應性變動 長度編碼法(Context-based Adaptive Variable-Length code,CAVLC)係數值[5][27][29][40] 等方法,後面介紹幾個H.264的相關文獻研究,作為後續研究的考量。 李學者[4]在2006年,提出一個適用於 H.264/AVC 之快速且強韌的浮水印技術。這 個方法其中之一的特點就是快速。這個演算法將浮水印隱藏在頻率域當中。當影像在 H.264 中經過離散餘弦轉換並量化之後,藉由改變部份中、高頻係數的正負值,來達到 嵌入資訊的目的。但這樣的修改會直接影響到一個區塊的紋理細節,且對於強度較小的 AC 係數,可能在經過數次壓縮之後,其正負值會受到壓縮影響而變換,此為壓縮過程 造成的誤差,故其方法在強韌性上稍顯不足。 Zhang等學者[28]提出一個將浮水印隱藏在移動向量(Motion vector)的方法。在H.264 的預測過程中會有移動向量的數據產生,其方法透過改變移動向量來實現隱藏浮水印, 不過資訊隱藏量卻有限。 洪學者[5]在2012年,提出符合H.264/AVC影片壓縮規格的概念,不同於以往多數方 法著重在資訊的隱藏量而不將檔案大小列入考量,H.264的編碼格式被廣泛使用的原因 是因為其壓縮技術能在同樣或更高的視訊影像品質下有更高的壓縮率,由相關文獻 [27][29]知,在H.264編碼過程中會將影片圖像單位逐步由小到大分類並切割後再進行細 部的處理,不管是採用空間性預測或時間性預測得到的圖像差餘值,最終還是要經過一 樣的轉換跟量化過程,由於量化過程是屬於失真壓縮,如果將資訊隱藏實現於轉換過程 中,會因為量化過程導致浮水印資訊的破壞,無法取回正確之浮水印資訊,此方法藉由 修改編碼之拖尾係數,來實現資訊隱藏,提出之資訊隱藏方法在藏量上或許並沒有很突 出,但卻可以在藏入資訊後保持檔案的原始大小,保持H.264高壓縮率的特性。 Kung等學者[31]提出一使用移動向量之視訊浮水印技術,使用MPEG視訊,嵌入前 先對浮水印前處理,排列攪亂後,選擇相對應之移動向量藏入機密訊息,提取時判斷其 移動向量奇偶性取回浮水印,不須原始視訊比對。. 23.

(34) Wang等學者[32]提出一嵌入移動向量方法,利用移動向量的區域資訊來嵌入,計算 每個巨區塊誤差值,找誤差最小最匹配的移動向量做移動估計,根據嵌入之浮水印來搜 尋特定區域。 以橫坐標分為兩類,如2-3式,mv_x大於等於零分為一類,mv_x小於零分為另一類。. {. (2-3). 圖2. 17:依x軸分類之mv區塊. 依欲藏入之資訊修改其移動向量之方向,且標記如2-4式:. 屬於 Mark[i] = {. (2-4) 屬於. 其執行順序如下步驟: 1.執行時先確認H.264的搜尋演算法。 2.再根據嵌入的浮水印在範圍內搜尋。 3.執行搜尋演算法找最匹配區塊,紀錄移動向量。. 取回時可依在不同區域之移動向量,依據2-4式判斷取出的資訊: 若mv屬於 I 區域則代表取回資訊為0,若mv屬於 II 區域則代表取回資訊為1。. 24.

(35) 第三章. H.264之資訊隱藏技術. 本章介紹我們提出的視訊浮水印技術,由前面章節介紹可知,在H.264編碼過程中會 將影片圖像單位進行細部的處理,不管是畫面內預測或畫面間預測得到的影像殘餘值, 最後經過轉換跟量化過程。. 第一節 資訊隱藏之方法分析 由前面章節提到H.264是利用畫面間的相關性,使用區塊為基礎的方式來描述移動 的資訊,因為移動軌跡都可以被描述,故我們只需要編碼送出第一個畫面及每個區塊的 移動軌跡資訊,重建時只需要將每一個區塊依照自己的軌跡重建即可,這種用來描述移 動資訊的資訊我們稱之為移動向量,利用移動向量,我們可以做畫面間的移動補償預測, 移動估計的程序是以前一個參考畫面及目前畫面為輸入,在參考畫面中找到與目前畫面 最匹配之巨區塊,輸出每一個影像方塊的移動向量(參考畫面與目前畫面該方塊之位移) 達成移動向量的移動估計記錄其移動向量,如圖3.1移動估計,並做移動補償。 移動補償預測器的功能是利用前一個參考畫面,加上每一個方塊的移動向量,建立 出一個目前畫面的預測畫面,達到畫面間的移動補償預測,之後將原來的目前畫面減去 預測畫面便得到誤差影像,誤差影像再經過編碼送出。. 圖3. 1:移動估計 25.

(36) 第二節 資訊隱藏方法 我們提出一個使用畫面間預測的移動向量之特性,來做資訊藏入,若目前的畫面是 P 畫面,我們需要儲存的資料主要是該畫面與參考畫面的移動資訊,紀錄兩個畫面間之 移動向量,利用修改移動向量來達到資訊隱藏的目的,依欲藏入之資訊修改移動向量至 鄰近點,如圖3.2嵌入示意圖,圖3.3嵌入流程圖,詳細的演算法如下。. 嵌入演算法(Embedding algorithm): 輸入:原始視訊 H、機密訊息 S 輸出:偽裝視訊 H’ 1. 輸入原始視訊 H ,讀取畫面間預測移動向量MV(Motion vector),假設修改前的移動 向量為(u, v),其中 u 為MV之橫坐標,而 v 為MV之縱坐標。 2. 將移動向量(u, v)和其 3 × 3 範圍內的鄰近點代入公式 3-1: F(u, v) = [3 × (u mod 3) + (v mod 3)] mod 8. (3-1). 3. 假設(u’, v’)為修改後的移動向量: 若欲藏入資訊為 000. →. 則將移動向量修改到 F(u’, v’) = 0 的位置. 若欲藏入資訊為 001. →. 則將移動向量修改到 F(u’, v’) = 1 的位置. 若欲藏入資訊為 010. →. 則將移動向量修改到 F(u’, v’) = 2 的位置. 若欲藏入資訊為 011. →. 則將移動向量修改到 F(u’, v’) = 3 的位置. 若欲藏入資訊為 100. →. 則將移動向量修改到 F(u’, v’) = 4 的位置. 若欲藏入資訊為 101. →. 則將移動向量修改到 F(u’, v’) = 5 的位置. 若欲藏入資訊為 110. →. 則將移動向量修改到 F(u’, v’) = 6 的位置. 若欲藏入資訊為 111. →. 則將移動向量修改到 F(u’, v’) = 7 的位置. 代表如果欲藏入之資訊為000,則將移動向量修改,使其移動向量(u’, v’)帶入公式後 為F(u’, v’) = 0,若欲藏入之資訊為001,則將移動向量修改,使其移動向量(u’, v’)帶入公 式後為F(u’, v’) = 1,若欲藏入之資訊為010,則將移動向量修改,使其移動向量(u’, v’) 帶入公式後為F(u’, v’) = 2,以此類推達到嵌入的效果,一個移動向量可代表藏入3個位 元。. 26.

(37) 依其藏入資訊分別調整其移動向量(u, v),調整後移動向量稱為(u’, v’)。. 圖3. 2:嵌入示意圖. 27.

(38) 嵌入演算法開始. 搜尋最匹配區塊. 紀錄最匹配區塊MV. 計算下一個MV. 代入公式3-1 計算F(u’, v’)值. 從起始點開始 找鄰近3 × 3區域. 根據機密訊息 修改MV到其對應位置. No 演算法結束? Yes 嵌入演算法結束. 圖3. 3:嵌入流程圖. 28.

(39) 以下舉一個範例來說明本論文的藏入方法,若欲藏入之機密訊息為 001,且起始點之 移動向量(u, v) = (2, 2) 。將起始點和附近之 3 × 3 範圍鄰近點代入公式 3-1,將移動向 量修改到 F(u’, v’) = 1 的位置,所以(u’, v’) = (3, 1),如圖 3.4 所示。. 圖3. 4:範例. 由上面範例知,從起始點開始搜尋3 × 3範圍內的鄰近點,將移動向量(u, v)代入公 式3-1,計算對應位置之F(u’, v’)值,分別代表起始點及八個鄰近點,在mod 8運算後會出 現兩個F(u’, v’) = 0的情況。若出現此情況,此時皆代表藏入資訊為000,並取兩者中最 匹配者記錄其移動向量,又若起始點在影像邊緣之位置,使其不得在其九宮格內搜尋, 則將從另一方向搜尋其3 × 3範圍內之鄰近點,執行嵌入演算法。. 29.

(40) 第三節 資訊萃取方法 由上一節嵌入演算法知道,藉由修改紀錄移動資訊的移動向量來藏入,所以我們只 需要將修改之後的移動向量代回公式3-1,判斷其代表的數值便可取回藏入之機密訊息, 取回機密訊息方法如下面萃取演算法,其萃取流程圖如圖3.5。. 萃取演算法 (Extracting Algorithm): 輸入:偽裝視訊 H’ 輸出:機密訊息 S 1. 讀取偽裝視訊 H’,將 H’之移動向量代回公式3-1。 2. 若代入後F(u’, v’) = 0 → 代表藏入資訊為 000 F(u’, v’) = 1 → 代表藏入資訊為 001 F(u’, v’) = 2 → 代表藏入資訊為 010 F(u’, v’) = 3 → 代表藏入資訊為 011 F(u’, v’) = 4 → 代表藏入資訊為 100 F(u’, v’) = 5 → 代表藏入資訊為 101 F(u’, v’) = 6 → 代表藏入資訊為 110 F(u’, v’) = 7 → 代表藏入資訊為 111 3. 輸出機密訊息 S。. 30.

(41) 萃取演算法開始. 讀取MV資料. 代入公式3-1 計算F(u’, v’)值. 讀取下一個MV資料. 取回機密訊息. No 確認所有的MV. Yes 萃取演算法結束. 圖3. 5:萃取流程圖. 31.

(42) 我們接續上一個範例來說明萃取的方法。偽裝視訊所讀取的移動向量(u’, v’) = (3, 1), 代入公式3-1,F(u’, v’) = 1,所以萃取出機密訊息001。. 此外我們可將我們提出之方法擴充至4 × 4範圍,經過公式3-2轉換為一個0~15的數 值。從起始點開始搜尋4 × 4範圍內的鄰近點,此時一個移動向量可代表藏入4個位元, 依欲藏入之資訊修改移動向量,將其移動向量移動到鄰近點。. F(u, v) = [4 × (u mod 4) + (v mod 4)] mod 16. 32. (3-2).

(43) 第四章. 實驗結果與數據分析. 前一章介紹了我們提出來的資訊隱藏的方法,本章透過實驗來驗證我們資訊隱藏方 法之可行性,我們使用H.264/AVC的原始碼為JVT(joint video team)所發布之JM[33]原始 碼作為實驗的基礎。. 第一節 實驗參數設定 本實驗使用Foreman、Akiyo、Mobile、News、Highway、Salesman等六個QCIF視訊 格式檔案為測試影像,QCIF為通用影像傳輸格式(Common Intermediate Format),是 視訊會議(Video conference)中常使用的影像傳輸格式,解析度為176 × 144 畫素,影 像傳輸可達每秒30 frame,符合ITU 視訊會議資料傳輸協定。表4.1為視訊格式、表4.2為 JM相關參數、表4.3為測試視訊說明[6]。. 表4. 1:視訊格式 格式. 影像解析度. SQCIF. 128 × 96. QCIF. 176 × 144. CIF. 352 × 288. 4CIF. 704 × 576. 16CIF. 1408 × 1152. 表4. 2:JM之參數 Profile. Baseline. YUV format. 4:2:0. Sequence type. IPPP. Motion estimation scheme. Full search. Image format. QCIF. 33.

(44) 第二節 實驗之測試影片及客觀評估方式 以下為本實驗使用Foreman、Akiyo、Mobile、News、Highway、Salesman等六個QCIF 視訊格式,做為測試影片並實驗分析其影像品質上之影響,以下取第15個frame呈現, 圖4.1為原始測試視訊、圖4.2為嵌入後視訊。. (a). (d). (b). (e). (c). (f). 圖4. 1:原始視訊:(a)Foreman (b)Akiyo (c)Mobile (d)News (e)Highway (f)Salesman. (a). (b). (c). (d). (e). (f). 圖4. 2:嵌入後視訊:(a)Foreman (b)Akiyo (c)Mobile (d)News (e)Highway (f)Salesman 34.

(45) 表4. 3:測試視訊說明 測試視訊說明 屬於中移動量的影像,鏡頭會有些晃動,臉部有大動作表情。. Foreman. 屬於小移動量之影像,前景的主播員只有微幅移動,背景幾 Akiyo. 乎不動。 屬於小移動量之影像,但是背景是很複雜的,屬於複雜移動. Mobile. 的影像。 屬於中移動量之影像,前景的主播員只有微幅移動,背景是. News. 快速移動。 屬於中移動量之影像,鏡頭有些晃動,道路屬中移動量,雲. Highway. 屬於小移動量。 屬於小移動量之影像,只有前景單人在動,背景相當複雜。. Salesman. 在實驗中,影片在經過嵌入修改之後計算其PSNR值,一般用來衡量藏入資訊後的影 像品質,是利用峰值訊號雜訊比 (Peak Signal-to-Noise Ratio; PSNR) ,客觀評估其影像 品質變化,定義如下:. (. ). (. ). 其中MSE是原始影像與偽裝影像的均方差(Mean Square Error; MSE) ,MSE的定義如 下:. ∑ ∑ ( Pi,j Pi,j' ). (. ). 其中, Pi,j 與 Pi,j' 分別代表原始影像與偽裝影像上的像素值;M與N表示影像的寬度與 高度。 35.

(46) 第三節 本論文藏入後之實驗數據 實驗使用Foreman、Akiyo、Mobile、News、Highway、Salesman等六個測試影片, 取30個frame來做實驗,影片在經過嵌入修改之後計算其PSNR值與藏量,評估其影像品 質、位元率變化,實驗數據如表4.4~4.10。. 表4. 4:Foreman序列之實驗數據. Original. Watermark. Difference. embedded PSNR Y. 36.97. 36.96. -0.01. PSNR U. 40.73. 40.68. -0.05. PSNR V. 42.37. 42.35. -0.02. Bit rate (bit). 150224. 152032. +1.2%. Encode time (sec) 58.741. 58.819. +0.078. 表4. 5:Akiyo序列之實驗數據. Original. Watermark. Difference. embedded PSNR Y. 38.70. 38.69. -0.01. PSNR U. 40.83. 40.77. -0.06. PSNR V. 41.77. 41.76. -0.01. Bit rate (bit). 51856. 56920. +9.7%. Encode time (sec) 57.201. 57.869. +0.668. 36.

(47) 表4. 6:Mobile序列之實驗數據. Original. Watermark. Difference. embedded PSNR Y. 34.26. 34.27. +0.01. PSNR U. 35.79. 35.78. -0.01. PSNR V. 35.18. 35.17. -0.01. Bit rate (bit). 509584. 515368. +1.1%. Encode time (sec) 59.648. 60.643. +0.995. 表4. 7:News序列之實驗數據. Original. Watermark. Difference. embedded PSNR Y. 37.14. 37.12. -0.02. PSNR U. 39.73. 39.79. +0.06. PSNR V. 40.36. 40.37. +0.01. Bit rate (bit). 96912. 102704. +5.9%. Encode time (sec) 58.879. 59.665. +0.786. 表4. 8:Highway序列之實驗數據. Original. Watermark. Difference. embedded PSNR Y. 38.17. 38.18. +0.01. PSNR U. 37.98. 37.96. -0.02. PSNR V. 38.69. 38.68. -0.01. Bit rate (bit). 85848. 87648. +2.0%. Encode time (sec) 58.534. 58.732. +0.198. 37.

(48) 表4. 9:Salesman序列之實驗數據. Original. Watermark. Difference. embedded PSNR Y. 35.90. 35.88. -0.02. PSNR U. 39.63. 39.65. +0.02. PSNR V. 40.36. 40.38. +0.02. Bit rate (bit). 104736. 109680. +4.7%. Encode time (sec) 57.961. 58.098. +0.137. 表4. 10:全部序列之實驗數據 Foreman. Akiyo. Mobile. News. Highway. Salesman Avg.. PSNR Y. 36.96. 38.69. 34.27. 37.12. 38.18. 35.88. 36.85. PSNR U. 40.68. 40.77. 35.78. 39.79. 37.96. 39.65. 39.11. PSNR V. 42.35. 41.76. 35.17. 40.37. 38.68. 40.38. 39.79. +9.7%. +1.1%. +5.9%. +2.0%. +4.7%. +4.1%. Bit. rate +1.2%. (bit). 我們從這些實驗結果可以看出,視訊之PSNR值略微下降,但是人眼幾乎沒有察覺, 透過實驗數據的分析,我們發現動態之測試影片(Foreman、Mobile、Highway),因為影 片的運動較劇烈使得找到之最匹配區塊與修改後區塊相差無幾,其位元率輕微上升,較 靜態之測試影片(Akiyo、News、Salesman),因為找到之最匹配區塊與修改後區塊相差 較大,導致位元率增加較多。在這種的情況下,可調整藏入較少的資訊來維持較良好的 位元率,而對影像品質方面影響較小。 實驗使用Foreman、Akiyo、Mobile、News、Highway、Salesman等六個測試影片, 取30個frame來做實驗,實驗採用QCIF格式解析度為176 × 144,和王學者之方法相同在 每個 P 畫面中嵌入99 bits之機密訊息,29個 P 畫面,我們提出來的方法一個移動向量 可藏3 bits ,故可藏99 × 29 × 3 = 8613 bits機密訊息。. 38.

(49) 第四節 本論文與其他學者方法比較 此節使用Foreman、Akiyo、Mobile、News、Highway、Salesman等六個測試影片, 我們提出之方法與Wang等學者[32]提出之方法比較,影片嵌入修改後之PSNR值與藏量 比較,實驗數據如表4.11~4.17。. 表4. 11:Foreman序列的結果比較. proposed. Wang[32]. PSNR Y. 36.96. 36.88. PSNR U. 40.68. 40.61. PSNR V. 42.35. 42.31. 表4. 12:Akiyo序列的結果比較. proposed. Wang[32]. PSNR Y. 38.69. 38.58. PSNR U. 40.77. 40.98. PSNR V. 41.76. 41.79. 表4. 13:Mobile序列的結果比較. proposed. Wang[32]. PSNR Y. 34.27. 34.13. PSNR U. 35.78. 35.65. PSNR V. 35.17. 35.05. 39.

(50) 表4. 14:News序列的結果比較. proposed. Wang[32]. PSNR Y. 37.12. 37.06. PSNR U. 39.79. 39.76. PSNR V. 40.37. 40.34. 表4. 15:Highway序列的結果比較. proposed. Wang[32]. PSNR Y. 38.18. 38.00. PSNR U. 37.96. 37.96. PSNR V. 38.68. 38.68. 表4. 16:Salesman序列的結果比較. proposed. Wang[32]. PSNR Y. 35.88. 35.80. PSNR U. 39.65. 39.53. PSNR V. 40.38. 40.19. 表4. 17:全部序列的結果比較 Foreman. Akiyo. Mobile. News. Highway. Salesman Avg.. PSNR Y. +0.08. +0.11. +0.14. +0.06. +0.18. +0.08. +0.11. PSNR U. +0.07. -0.21. +0.13. +0.03. +0. +0.12. +0.02. PSNR V. +0.04. -0.03. +0.12. +0.03. +0. +0.19. +0.06. 40.

(51) 在這節實驗中我們的方法與王學者之方法做比較,從實驗結果中可以看出,我們提 出之方法視訊之PSNR值均優於王學者提出之方法,因為我們的的方法在修改移動向量 後,將移動向量移動到鄰近位置,找到之最匹配區塊與修改後區塊相差無幾,而王學者 之方法因修改移動向量之坐標到相反的位置,找到之最匹配區塊與其方法修改後區塊相 差甚鉅,因為我們提出之方法修改移動向量之差距沒有王學者方法之劇烈,故我們的方 法能維持良好的影像品質。 王學者提出的方法在六個測試影片的每個 P 畫面中嵌入99 bits之機密訊息,即每個 移動向量只藏入1 bit,而我們提出來的方法一個移動向量可藏3 bits,故我們的方法之藏 量為王學者的3倍。. 41.

(52) 第五章. 結論及未來研究方向. 第一節 結論 本論文提出一個使用 H.264 畫面間預測的移動向量之特性,來實現資訊隱藏技術。 由於畫面與畫面之間,會記錄兩個畫面間之移動向量,即會儲存該畫面與參考畫面的移 動資訊,利用前一個參考畫面,加上每一個方塊的移動向量,建立出一個目前畫面的預 測畫面,故利用修改移動向量來達到資訊隱藏的目的。 我們提出之方法,在修改藏入資訊之後,影像品質只有略微的下降,細節紋理無大 幅度的變化,人眼視覺效果無法察覺,不易讓有心人士察覺,進而破壞或去除藏入的訊 息,且在浮水印取出的過程中,不需要與原始資料做比對,即可取出浮水印,且有極佳 的藏量。. 第二節 未來研究方向 H.264/AVC視訊編碼其高壓縮效能及壓縮品質正是一種優良的壓縮標準,且被廣泛 使用,為了達到壓縮的目的,H.264視訊壓縮利用畫面內預測來消除畫面內的空間冗餘 性,以畫面間預測來消除畫面與畫面間的冗餘性。 近年來對於H.264的壓縮格式之研究也與日俱增,本論文的方法是利用修改畫面間 預測移動向量的部分,修改其移動資訊,藉由修改移動向量之位移來達到資訊隱藏的目 的,未來研究工作可以利用本篇成果為基礎,加強影像品質,或浮水印效能,甚至未來 可以嘗試在H.264之壓縮標準之技術的其他部份著手,不管是修改空間域像素或頻率域 轉換後DCT係數、移動向量、或CAVLC編碼等。. 42.

(53) 參考文獻 [1] 張真誠、黃國峰、陳同孝,電子影像技術(Electronic Imaging Techniques),松崗電腦 圖書資料股份有限公司,2000 年 12 月. [2] 陳同孝、張真誠、黃國峰,數位影像處理技術(Digital Image Processing Techniques), 松崗電腦圖書資料股份有限公司,2001 年 1 月. [3] 黃國峰,張真誠,黃明祥,"漫談數位浮水印技術," 資訊安全通訊, 第五卷第四期, September 1999. [4] 李勃廷,適用於 H_264_AVC 之快速且強韌的浮水印技術,國立清華大學資工系碩 士論文,新竹,2006. [5] 洪德民,H.264 影片的資訊隱藏,逢甲大學資工系碩士論文,台中,2012. [6] 王鴻達,H.264 加速區塊模式演算法研究,國立中央大學通訊工程學系碩士論文, 中壢,2008. [7] 蔡茗光,H.264 視訊編碼之同步式逆向錯誤追蹤演算法,國立中央大學通訊工程學 系碩士論文,中壢,2004. [8] P. Dong, J.G. Brankov, N.P. Galatsanos, Y. Yang and F. Davoine, ”Digital Watermarking Robust to Geometric Dist rti ns,” IEEE Trans. Image Processing, vol. 14, pp. 2140 -2150, Dec. 2005. [9] F. Hartung and M. Kutter, “ u time ia Watermarkin Techniques,” I. Proceedings. on Protection of Multimedia Content, vol. 87, pp. 1079-1107, 1999. [10] C. . Lu an H.Y. . Lia , “ u tipurpose Watermarking for Image Authentication and Pr tecti n,” IEEE Trans. Image Processing, vol. 10, pp. 1579-1592, Oct. 2001. [11] M.U. Celik, G. harma,. . a er, an A. . Teka p, “Hierarchica Watermarkin f r. Secure Ima e Authenticati n With L ca izati n,” I. Trans. Ima e r cessin , v .. ,. no. 6, pp. 585-595, June 2002. [12] Y.K. Lee, L.H. Chen, “High Capacity Image Steganography,” IEEE Proceedings on Vision Image, and Signal Processing, vol. 147, no. 3, pp. 288-294, 2000. [13] Y.S. Kim, O.H. Kwon, an. . ark, “Wave et Base Watermarkin. Ima es Usin the Human Visua. ystem,”. eth. f r Di ita. ectr nics Letters, v .3 , n .6, pp. 66-468,. Mar. 1999. [14] C.S. Lu, S.K. Huang, C.J. Sze, and H.Y.M. Liao, “Cocktail Watermarking for Digital Image Protection,” IEEE Transactions on Multimedia, vol. 2, no. 4, Dec. 2000. 43.

(54) . U. Ce ik, G. harma, A.. [15]. m e in ,” I. . Teka p, an. . a er, “L ss ess Genera ize -LSB Data. Transacti ns n Ima e r cessin , v .. , n . , pp.. 3-266, Feb.. 2005. [16] M.S. Hwang, C.C. Chang, and K.F. Hwang, “A Watermarking Technique Based on One-Way Hash Functions,” I. Transacti ns n C nsumer. ectr nics, v .. ,n . ,. pp. 286-294, 1999. [17] . L. Lin, “. ust Transparent Ima e Watermarkin. ystem with patia. echanisms,”. The Journal of Systems and Software 50, pp.107-116, 2000. [18] C.S. Lu, an H.Y. . Lia , “ tructura Di ita Inci enta Dist rti n esistant cheme,’’ I. i nature f r Ima e Authenticati n: An Transaction on Multimedia, vol. 5, no. 2,. Jun. 2003. [19] J. pau in , H.. a,. . . hirazi, an. EZW Lossy Compressed Images,”. . Kawa uchi, “B C Steganography Using. attern. ec niti n Lett., vol. 23, no. 13, pp.. 1579-1587, 2003. [20] J.. ie ikainen, “L B Matching Revisite ,” I. i na. r cessin Letters, vol. 13, no.5,. pp. 285-287, May 2006. [21] ITU-T Recommendation H.264. Advanced video coding for generic audiovisual 36 services, Nov. 2003. [22] ITU-T:http://www.itu.int/ITU-T Accessed 18 June 2013. [23] ISO/IEC:http://www.standardsinfo.net/. Accessed 18 June 2013.. [24] “Draft ITU-T recommendation and final draft international standard of joint video specification (ITU-T Rec. H.264/ISO/IEC 14486-10 Joint Video Team (JVT) of ISO/IEC MPEG and ITU-T VCEG, ” JVT-G050, 2003. [25] H. Kalva, “The H. 6 Vi e C. in. tan ar ,” IEEE Transaction on Multimedia, vol.. 13, pp. 86-90, 2006. [26] I. E. G. Richardson, H.264 and MPEG-4 Video Compression: Video Coding for Next Generation Multimedia, first ed. John Wiley and Sons, 2003. [27] I. E. G. Richardson, The H.264 Advanced Video Compression Standard, seconded. John Wiley and Sons, 2010. [28] J. Zhang, J. Li, and L. Zhang, “Video Watermark Technique in Motion Vector,” In Proceedings of XIV Brazilian Symposium on Computer Graphics and Image Processing, pp. 179-182, Oct. 2001. [29] A. Puria, X. Chenb, and A. Luthrac, “Vi e Coding Using the H.264/Mpeg-4 AVC 44.

(55) Compression Standard,” In Signal Processing: Image Communication 19, pp. 793-849, 2004. [30] X.J. Ma, Z.T. Li, H. Tu, and B. Zhang, “A Data Hiding Algorithm for H.264/AVC Video Streams without Intra-Frame Distortion Drift,” IEEE Transactions on Circuits and Systems for Video Technology, pp. 1320-1330, Oct 2010. [31] C.H. Kung, J.H. Jeng, Y.C. Lee, H.H. Hsiao, and W.S. Chen , “Vi e Watermarkin Using Motion Vector,” in 16th IPPR Conference on computer vision, graphics and image processing, pp. 547-551, 2003. [32] P. Wang, Z. Zheng and J. Ying, “A Novel Video Watermark Technique in Motion Vectors,” in ICALIP International Conference on Audio, Language and Image Processing, 2008 [33] JM http://iphome.hhi.de/suehring/tml/. Accessed 18 June 2013.. [34] H.264 Advanced Video Coding http://www.vcodex.com/h264.html. Accessed 18 June. 2013. [35] T.J. Lin, K.L. Chung, P.C. Chang, Y.H. Huang, H.Y. M. Liao, and C.Y. Fang, “An Improved DCT-based Perturbation Scheme for High Capacity Data Hiding in H.264/AVC Intra Frames,” The Journal of Systems and Software , pp. 604-614, 2013. [36] W. Huo, Y. Zhu, and H. Chen, “A Controllable Error-Drift Elimination Scheme for Watermarking Algorithm in H.264/AVC Stream,” IEEE Signal Processing Letters 18 , pp. 535-538, Sep. 2011. [37] J.M. Thiesse, J. Jung, M. Antonini, “Data Hiding of Motion Information in Chroma and Luma Samples for Video Compression,” IEEE Multimedia Signal Processing, pp. 217-221, 2010. [38] J.M. Thiesse, J. Jung, M. Antonini, “Rate Distortion Data Hiding of Motion Vector Competition Information in Chroma and Luma Samples for Video Compression,” IEEE Transactions of Circuits and Systems for Video Technology, pp. 729-741, 2011. [39] D.W. Kim, Y.G. Choi, H.S. Kim, J.S. Yoo, H.J. Choi, Y.H. Seo, “The Problems in Digital Watermarking into Intra-Frames of H.264/AVC,” Image and Vision Computing, vol. 28, pp. 1220-1228, Aug. 2010. [40] X. Li, H. Chen, D. Wang, T. Liu, G. Hou, “Data Hiding in Encoded Video Sequences Based on H.264,” IEEE International Conference on Computer Science and Information Technology, vol. 6, pp. 121-125, 2010. [41] Y. Li, H.X. Chen, Y. Zhao, “ A New Method of Data Hiding Based on H.264 Encoded Video Sequences,” IEEE International Conference on Signal Processing , pp. 1833-1836, 2010. 45.

(56) [42] A. Mansouri, A.M. Aznaveh, F. Torkamani-Azar, F. Kurugollu, “A Low Complexity Video Watermarking in H.264 Compressed Domain,” IEEE Transactions on Information Forensics and Security, vol. 5, pp. 649- 657, 2010.. 46.

(57)

參考文獻

相關文件

important to not just have intuition (building), but know definition (building block).. More on

“Big data is high-volume, high-velocity and high-variety information assets that demand cost-effective, innovative forms of information processing for enhanced?. insight and

Ongoing Projects in Image/Video Analytics with Deep Convolutional Neural Networks. § Goal – Devise effective and efficient learning methods for scalable visual analytic

Two cross pieces at bottom of the stand to make a firm base with stays fixed diagonally to posts. Sliding metal buckles for adjustment of height. Measures accumulated split times.

– evolve the algorithm into an end-to-end system for ball detection and tracking of broadcast tennis video g. – analyze the tactics of players and winning-patterns, and hence

Trace of display recognition and mental state inference in a video labelled as undecided from the DVD [5]: (top) selected frames from the video sampled every 1 second; (middle) head

Good Data Structure Needs Proper Accessing Algorithms: get, insert. rule of thumb for speed: often-get

F., “A neural network structure for vector quantizers”, IEEE International Sympoisum, Vol. et al., “Error surfaces for multi-layer perceptrons”, IEEE Transactions on