一種結合gop幀結構的視頻水印方法與系統的製作方法
2023-07-04 00:40:36
專利名稱:一種結合gop幀結構的視頻水印方法與系統的製作方法
一種結合GOP幀結構的視頻水印方法與系統方法
技術領域:
本發明屬於視頻數字水印領域,具體涉及一種結合GOP幀結構的視頻水印添加與提取方法,實現了在GOP幀結構中嵌入以及提取水印信息,構造了一種快速安全的方法來保證視頻序列的數據完整性。二、背景技術
數字水印是一種有效的數字產品版權保護和數據安全維護技術。在水印處理系統中,盜版者要麼試圖去除水印來破壞版權要麼複製被篡改後的產品以獲得虛假的內容驗證。最近幾年,數字網絡通訊正在飛速發展。在這種環境下,數字產品很容易被複製、處理、 傳播和公開。盜版者正是利用數字產品的這些性能來破壞製造商和用戶的合法權力以獲得個人利益。因而,人們必須考慮多媒體產品在數字網絡分布系統中的安全問題。
對數字多媒體產品的非法操作或行為,通常包括下列三種情況。
(I)非法訪問即未經允許從某個網站中非法複製或翻印數字產品。
(2)故障纂改盜版者惡意地修改數字產品以抽取或插入特徵並進行重新發送, 從而使原始產品的版權資訊丟失。
(3)版權破壞盜版者收到數字產品後未經版權所有者的允許將其轉賣。
近年來數字水印技術取得了很大的發展,但研究方向主要集中於靜止圖像水印技術,在視頻水印研究方面,由於包括空間掩蔽效應等特性在內的更為精確的人眼視覺模型尚未完全建立,使得視頻水印技術相對於圖像水印技術發展滯後,現有的標準視頻編碼格式又造成了水印技術引入上的局限性,一些針對視頻水印的特殊攻擊形式(如幀重組、幀平均、幀間組合、幀刪除等)的出現,以及視頻水印算法的實時性等特點使得視頻水印研究面臨著新的挑戰。
視頻不同於圖片,編碼後有一定的特殊結構,如圖It5GOP(Grc)Up Of Picture)是指視頻編碼格式中的幀序列,一般分為I、P、B三種,如排成IBBPBBPBBPBBPBBP……樣式,GOP 是視頻編碼將來存取的最基本單位,它的排列順序將會一直重複到影像結束。在視頻進行編碼後,幀的順序將會發生變化,如原來經過編碼後為。一個GOP就是一組連續的IPB幀。 視頻編碼將幀分為I、P、B三種,I是幀內編碼幀,P是前向預測幀,B是雙向內插幀。簡單地講,I幀是一個完整的畫面,而P幀和B幀記錄的是相對於I幀的變化。沒有I幀,P幀和 B幀就無法解碼。
現有的一些基於空間域的水印嵌入方式,並沒有考慮到視頻幀本身的結構特點, 只是單獨地在某一幀中加入了水印,這樣,對於一些如幀重組,幀刪除等破壞視頻的行為, 這些方法並不能檢測出視頻是否遭到破壞,且視頻質量會受到一定的影響。而基於壓縮域的水印嵌入方法,過多地依賴於特定的視頻壓縮算法,只能適用於一些特定的視頻格式。因此,考慮提出一種數字水印方法,綜合GOP幀結構特徵信息,克服了傳統方法無法保證連續幀完整性的弱點。三、發明內容
本發明的目的是提出一款結合GOP幀結構的視頻水印方法與系統,對傳統的視頻水印方法做了改進,根據視頻編解碼過程中的GOP幀結構,對視頻進行有效處理,克服了傳統方法無法保證連續視頻幀完整性的弱點,對視頻質量不造成任何影響。數字水印提取和驗證的過程快速方便,切實有效保證了視頻完整性;支持各種視頻格式,算法簡單高效。
本發明的技術方案是
(I)嵌入水印信息
嵌入水印信息指的是對用戶信息和視頻信息通過一個約定的算法得到嵌入的信息,根據視頻的GOP幀結構信息分配待嵌入的水印信息,確定嵌入水印位置和相應信息嵌入處理,並保存對應的視頻完整性信息,如圖2所示。
①對用戶信息和視頻信息通過一個約定的算法得到嵌入的信息,不同的用戶和不同的視頻將得到一個具有保障的嵌入信息,這樣一方面可以保證每個視頻嵌入的信息都不相同,另一方面又可以保證嵌入信息的安全性和不可知性。
②將視頻文件解碼得到非壓縮域的圖像幀,按照待編碼的GOP幀結構對其進行分組,每個GOP為一組對其 進行處理,依據視頻幀的結構確定每一幀中嵌入信息的數量;
③根據嵌入的信息經過約定的算法後,確定具體嵌入位置;
④嵌入水印時,計算並保存保存相應位置的像素信息與水印信息值之間的差值。
實際上並沒有真實地在視頻中嵌入信息,而是保存相應位置的像素亮度與水印信息值之間的差,這樣的一個優勢就是不會對視頻文件的質量造成破壞,破壞者也就不能單單地掃描圖像從而就找出嵌入的信息。
(2)提取水印信息
提取水印信息指的是將視頻解碼並分組成視頻幀,對用戶信息和視頻信息求得嵌入信息,通過此嵌入信息找出水印的位置,在這些位置上讀出視頻信息,然後將其與伺服器差值信息做比較得到水印信息,如圖3所示。
①對視頻幀進行解碼後,依舊是每個GOP —組;
②根據用戶信息和視頻信息得到嵌入信息,然後由這些信息得到嵌入的位置;
③根據視頻信息得到的位置提取出像素的相應信息,再與伺服器上保存的差值進行差計算,得到提取的水印息值;
④將提取出的水印值與正確值進行對比,如果所有組的信息都與正確信息相同, 則表明視頻完整性未被破壞;只要有其中某一組不同,就可以判斷視頻受到了一定的損壞。
此方法的優點是在空間域添加,實現的方法較簡單,速度也非常快,對視頻的質量更不造成任何影響;同時保存的額外的差值信息對於伺服器來說也是相當小的,是可以忽略不計的。四
圖IGOP幀結構圖
圖2水印嵌入流程圖
圖3水印提取流程圖
圖4嵌入信息生成4
圖5嵌入信息分配
圖6嵌入位置的確定
圖7水印嵌入
圖8水印提取五具體實施方式
在編碼的過程中,可以採用H264編碼標準,並使用「IBPBIBPB」這樣的幀結構,即一個 GOP 組為 「 IBPB 」。
(I)嵌入水印
嵌入的水印信息由用戶信息和視頻信息通過一個不可逆的算法得到,可以採用用戶帳號和視頻的上傳時間求散列摘要的方法,在實現過程中使用SHA-I算法,這樣就得到了 160位的數據信息。當然也可以使用其他類似的方法,這樣處理後就實現兩個功能,一方面保證了嵌入信息的唯一性,另一方面也避免了直接使用明文造成的安全問題,如圖4所/Jn ο
對要添加水印的視頻文件解碼,以一個GOP結構為一組,在進行視頻水印的添加過程中以其為基本單位進行處理。
對於160位的摘要信息,可以根據幀的不同類型有選擇地嵌入不同數量的信息。 如圖5所示,在I幀中嵌入80位數據,在P幀中嵌入48位數據,在每個B幀中嵌入16位數據,當然各幀中嵌入信息的數量也可選擇其他分配策略,也可以通過一定的算法動態地確定在各幀中嵌入信息的多少。
在進行水印嵌入時,需要根據嵌入信息,確定圖像幀的嵌入位置,比如,可以通過 160位信息之中在嵌入信息之前的那些信息中O和I的個數來確定具體位置是在哪一行哪一列,也可以通過其他的方法來確定,但是要保證每一點得到的位置都是不同的。(如圖6 所示,在I幀中嵌入的80位信息位010001001111101010,也,在嵌入第二個I時,通過在其之前的所有這一幀中的數據010001來確定它的嵌入位置,由O的個數4確定其嵌在第4行, 由I的個數2確定其嵌在第二行;以此類推,即可確定所有數據的嵌入位置)
在嵌入水印時,並沒有實際地去改變嵌入位置像素點的信息,而是將該位置像素的某種信息(比如亮度)與要嵌入的值進行求差,將其差值保存在伺服器上。這樣一方面保證了視頻質量不受破壞,另一方面也加大了篡改假冒視頻的難度,如圖7所示。
例如嵌入位置像素的亮度為128,嵌入水印信息為I,則保存的信息就為127。
(2)提取水印
提取水印是嵌入的逆過程,如圖8所示。先是對要驗證的視頻文件進行解碼,得到其幀結構信息,如之前使用的IBPBIBPB這樣的幀結構,即一個GOP為IBPB,並將每個GOP分為一組,以其為基本單位進行處理。
—個重要的步驟就是要得到嵌入信息的位置。首先也是要得到嵌入的信息,然後通過這個信息計算得到嵌入的位置。計算嵌入位置的方法與嵌入水印時使用的方法相同, 這樣才能保證提取出的信息的正確性。如前所述可以通過160位信息之中在嵌入信息之前的那些信息中O和I的個數來確定具體位置是在哪一行哪一列。
讀取得到相應位置像素的信息值,將其與伺服器上保存的差值信息求差得到最終提取出的信息。例如讀取位置的像素亮度值為128,伺服器端保存的差值為127,則提取出的水印信息為1,與嵌入的信息相同。
將提取出的信息與正確的嵌入信息進行對比,如果每一組都相同,則可以說視頻的完整性未受到破壞;如果有任一組不同,則就可以說視頻完整性受到了破壞。
權利要求
1.結合GOP幀結構的視頻水印方法與系統,其特徵是由用戶信息和視頻信息共同生成數字水印,結合GOP幀結構信息分配數字水印信息,由水印數據確定嵌入位置並作相應處理,具體包括嵌入水印信息和提取水印信息兩個部分。
2.根據權利要求I所述的結合GOP幀結構的視頻水印方法與系統,其特徵是所述嵌入水印信息部分,具體步驟為 步驟一、對用戶信息和視頻信息通過約定算法生成嵌入的信息; 步驟二、將視頻解碼並分組視頻幀,據視頻的GOP幀結構信息分配待嵌入的水印信息; 步驟三、依據嵌入信息經過約定算法確定嵌入水印的位置; 步驟四、讀取相應位置像素的信息,與嵌入信息求差,對應將其作為完整性信息保存在伺服器。
3.根據權利要求I所述的結合GOP幀結構的視頻水印方法與系統,其特徵是所述提取水印信息部分,具體步驟為 步驟一、將視頻解碼並分組成視頻幀; 步驟二、對用戶信息和視頻信息求得嵌入信息; 步驟三、通過此嵌入信息確定水印的位置; 步驟四、在這些位置上讀出像素信息,然後將其與伺服器上保存的完整性信息求出差值得到水印信息。
4.根據權利要求2所述的嵌入水印信息部分,其特徵是所述的約定算法,其具體實現為對用戶帳號和視頻上傳時間使用散列算法,得到摘要信息,以此作為嵌入的信息。
5.根據權利要求2所述的嵌入水印信息部分,其特徵是所述的根據視頻的GOP幀結構信息分配待嵌入的水印信息,具體指對要添加水印的視頻文件解碼,以一個GOP結構為一組,可以根據幀的不同類型或通過一定的算法動態地確定在各幀中嵌入信息的多少。
6.根據權利要求2所述的嵌入水印信息部分,其特徵是所述的確定嵌入水印的位置,具體實現時是通過待嵌水印信息之中在嵌入信息之前的那些信息中O和I的個數來確定具體行列位置。
全文摘要
本發明公開了一種結合GOP幀結構的視頻水印方法與系統,由用戶信息和視頻信息共同生成數字水印,結合GOP幀結構信息分配數字水印信息,由水印數據確定嵌入位置並作相應處理,具體包括嵌入水印信息和提取水印信息兩個部分。包括對用戶信息和視頻信息通過一個約定的算法得到嵌入的信息,根據視頻的GOP幀結構信息分配待嵌入的水印信息,確定嵌入水印位置和相應信息嵌入處理,並保存對應的視頻完整性信息;對用戶信息和視頻信息求得嵌入信息,通過此嵌入信息找出水印的位置,在這些位置上讀出視頻信息,然後將其與伺服器差值信息做比較得到水印信息。應用本發明可以簡單快速地對視頻進行添加和提取水印,同時保存的額外的差值信息對於伺服器來說也相當小。本發明的技術方案具有良好的發展前景。
文檔編號H04N7/26GK102946531SQ20121030249
公開日2013年2月27日 申請日期2012年8月24日 優先權日2012年8月24日
發明者王健, 高暉, 葛浩, 杜紅陽 申請人:南京大學