一種視頻水印嵌入方法及裝置制造方法
【專利摘要】本發(fā)明實施例公開了一種視頻水印嵌入方法及裝置,涉及視頻處理【技術(shù)領(lǐng)域】,該方法包括:獲得待嵌入水印信息的二進制數(shù)據(jù);根據(jù)待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量;根據(jù)預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊;根據(jù)所確定的編碼塊數(shù)量以及運動矢量,從起始編碼塊開始,對目標視頻幀中需嵌入帶嵌入水印信息的各個編碼塊編碼,以在目標視頻幀中嵌入待嵌入水印信息。應(yīng)用本發(fā)明實施例提供的方案嵌入視頻水印時,待嵌入水印信息不會被視頻編碼破壞。
【專利說明】一種視頻水印嵌入方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及視頻處理【技術(shù)領(lǐng)域】,特別涉及一種視頻水印嵌入方法及裝置。
【背景技術(shù)】
[0002]近年來數(shù)字水印技術(shù)快速發(fā)展,在數(shù)字版權(quán)保護領(lǐng)域得到了越來越廣泛的應(yīng)用。數(shù)字載體(如視頻)中嵌入水印信息后,可通過特定方式提取所嵌入的水印信息,根據(jù)所提取的水印信息能夠確認版權(quán)所有者等信息,進而保護版權(quán)所有者的合法權(quán)益。
[0003]現(xiàn)有技術(shù)中,在視頻中嵌入水印信息時,通常是先在原始視頻幀中嵌入水印信息,再對嵌入水印信息后的原始視頻幀進行視頻編碼。應(yīng)用上述方法嵌入水印信息后,由于水印信息已嵌入原始視頻幀中,很難通過轉(zhuǎn)碼的方式去掉原始視頻幀中已嵌入的水印信息,因此,該方法具有較強的抗轉(zhuǎn)碼特性。但在原始視頻幀中嵌入水印信息后修改了原始視頻幀中的圖像數(shù)據(jù),會降低原始視頻幀的圖像質(zhì)量。而且,常用的視頻編碼方法一般為有損編碼,嵌入水印后的原始視頻幀,經(jīng)視頻編碼后,會有信息損失,所嵌入的水印信息可能會被破壞,這樣在提取水印信息時,易提取失敗。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例公開了一種視頻水印嵌入方法及裝置,以降低視頻編碼對所嵌入水印信息的影響。
[0005]為達到上述目的,本發(fā)明實施例公開了一種視頻水印嵌入方法,所述方法包括:
[0006]獲得待嵌入水印信息的二進制數(shù)據(jù);
[0007]根據(jù)所述待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定嵌入所述待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量,所述編碼塊為:編碼處理過程中使用的數(shù)據(jù)單元;
[0008]根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊,其中,所述目標視頻幀按照所述預(yù)設(shè)的編碼規(guī)則,劃分為若干編碼塊;
[0009]根據(jù)所確定的編碼塊數(shù)量以及運動矢量,從所述起始編碼塊開始,對所述目標視頻幀中需嵌入所述待嵌入水印信息的各個編碼塊編碼,以在所述目標視頻幀中嵌入所述待嵌入水印信息。
[0010]可選的,所述根據(jù)所述待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定嵌入所述待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量,包括:
[0011]獲得所述待嵌入水印信息的二進制數(shù)據(jù)的位數(shù)Numwm ;
[0012]根據(jù)如下關(guān)系式,計算嵌入所述待嵌入水印信息所需編碼塊的數(shù)量Numeb,
[0013]Numeb = (Numwm+Nummv—X+Nummv—y — I)/(Nummv—X+Nummv—y),
[0014]其中,Nummv x為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量X方向分量的取值范圍對應(yīng)的二進制位數(shù),Numfflvj為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量Y方向分量的取值范圍對應(yīng)的二進制位數(shù);
[0015]以(Nummv X+Nummv y)為單位,對所述待嵌入水印信息的二進制數(shù)據(jù)進行分段;
[0016]根據(jù)分段結(jié)果,從所述待嵌入水印信息的二進制數(shù)據(jù)的低位開始,利用每個分段對應(yīng)的數(shù)據(jù)構(gòu)成對一個編碼塊編碼所需的運動矢量。
[0017]可選的,所述根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊,包括:
[0018]在所述目標視頻幀中,確定嵌入所述待嵌入水印信息的標識編碼塊;
[0019]以預(yù)設(shè)的運動矢量對所述標識編碼塊編碼,其中,對所述標識編碼塊編碼后的數(shù)據(jù),用于標識編碼后的所述目標視頻幀中已嵌入所述待嵌入水印信息;
[0020]根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,確定所述標識編碼塊之后的第一個編碼塊為嵌入位置對應(yīng)的起始編碼塊。
[0021]可選的,所述根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊,包括:
[0022]根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,確定嵌入位置對應(yīng)的起始編碼塊;或
[0023]根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀的編碼過程中,確定嵌入位置對應(yīng)的起始編碼塊。
[0024]可選的,所述根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,確定嵌入位置對應(yīng)的起始編碼塊,包括:
[0025]根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,將預(yù)設(shè)位置的編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
[0026]可選的,所述根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀的編碼過程中,確定嵌入位置對應(yīng)的起始編碼塊,包括:
[0027]在對所述目標視頻幀的編碼過程中,根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,計算當前編碼塊中各像素點之間的相關(guān)性;
[0028]若當前編碼塊各像素點之間的相關(guān)性滿足預(yù)設(shè)條件,則將當前編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
[0029]為達到上述目的,本發(fā)明實施例公開了一種視頻水印嵌入裝置,所述裝置包括:
[0030]二進制數(shù)據(jù)獲得模塊,用于獲得待嵌入水印信息的二進制數(shù)據(jù);
[0031]信息確定模塊,用于根據(jù)所述待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)貝U,確定嵌入所述待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量,所述編碼塊為:編碼處理過程中使用的數(shù)據(jù)單元;
[0032]起始編碼塊確定模塊,用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊,其中,所述目標視頻幀按照所述預(yù)設(shè)的編碼規(guī)則,劃分為若干編碼塊;
[0033]水印信息嵌入模塊,用于根據(jù)所確定的編碼塊數(shù)量以及運動矢量,從所述起始編碼塊開始,對所述目標視頻幀中需嵌入所述待嵌入水印信息的各個編碼塊編碼,以在所述目標視頻幀中嵌入所述待嵌入水印信息。[0034]可選的,所述信息確定模塊,包括:
[0035]位數(shù)獲得子模塊,用于獲得所述待嵌入水印信息的二進制數(shù)據(jù)的位數(shù)Numwm ;
[0036]編碼塊數(shù)量計算子模塊,用于根據(jù)如下關(guān)系式,計算嵌入所述待嵌入水印信息所需編碼塊的數(shù)量Nunu,
[0037]Numeb = (Numwm+Nummv—X+Nummv—y — I)/(Nummv—X+Nummv—y),
[0038]其中,Numniv x為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量X方向分量的取值范圍對應(yīng)的二進制位數(shù),Numfflvj為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量Y方向分量的取值范圍對應(yīng)的二進制位數(shù);
[0039]數(shù)據(jù)分段子模塊,用于以(Nummv X+Nummv y)為單位,對所述待嵌入水印信息的二進制數(shù)據(jù)進行分段;
[0040]運動矢量構(gòu)成子模塊,用于根據(jù)分段結(jié)果,從所述待嵌入水印信息的二進制數(shù)據(jù)的低位開始,利用每個分段對應(yīng)的數(shù)據(jù)構(gòu)成對一個編碼塊編碼所需的運動矢量。
[0041]可選的,所述起始編碼塊確定模塊,包括:
[0042]標識編碼塊確定子模塊,用于在所述目標視頻幀中,確定嵌入所述待嵌入水印信息的標識編碼塊;
[0043]標識編碼塊編碼子模塊,用于以預(yù)設(shè)的運動矢量對所述標識編碼塊編碼,其中,對所述標識編碼塊編碼后的數(shù)據(jù),用于標識編碼后的所述目標視頻幀中已嵌入所述待嵌入水印信息;
[0044]第一起始編碼塊確定子模塊,用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,確定所述標識編碼塊之后的第一個編碼塊為嵌入位置對應(yīng)的起始編碼塊。
[0045]可選的,所述起始編碼塊確定模塊,
[0046]具體用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,確定嵌入位置對應(yīng)的起始編碼塊;或
[0047]具體用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀的編碼過程中,確定嵌入位置對應(yīng)的起始編碼塊。
[0048]可選的,所述起始編碼塊確定模塊,具體用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,將預(yù)設(shè)位置的編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
[0049]可選的,所述起始編碼塊確定模塊,包括:
[0050]相關(guān)性計算子模塊,用于在對所述目標視頻幀的編碼過程中,根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,計算當前編碼塊中各像素點之間的相關(guān)性;
[0051]第二起始編碼塊確定子模塊,用于在當前編碼塊各像素點之間的相關(guān)性滿足預(yù)設(shè)條件的情況下,將當前編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
[0052]由以上可見,本發(fā)明實施例提供的方案中,根據(jù)待嵌入水印信息的二進制數(shù)據(jù),確定嵌入待嵌入水印信息所需的編碼塊數(shù)量以及編碼各個編碼塊所需的運動矢量,并根據(jù)所確定的上述信息編碼需嵌入待嵌入水印信息的編碼塊。與現(xiàn)有技術(shù)相比,本實施例提供的方案中,水印信息以編碼塊運動矢量的形式嵌入到編碼后的目標視頻幀中,由于運動矢量屬于視頻編碼的語義元素,因此,待嵌入水印信息不會被視頻編碼破壞?!緦@綀D】
【附圖說明】
[0053]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0054]圖1為本發(fā)明實施例提供的視頻水印嵌入方法的第一種流程示意圖;
[0055]圖2為本發(fā)明實施例提供的視頻水印嵌入方法的第二種流程示意圖;
[0056]圖3為本發(fā)明實施例提供的視頻水印嵌入方法的第三種流程示意圖;
[0057]圖4為本發(fā)明實施例提供的視頻水印嵌入裝置的第一種結(jié)構(gòu)示意圖;
[0058]圖5為本發(fā)明實施例提供的視頻水印嵌入裝置的第二種結(jié)構(gòu)示意圖;
[0059]圖6為本發(fā)明實施例提供的視頻水印嵌入裝置的第三種結(jié)構(gòu)示意圖。
【具體實施方式】
[0060]首先對本發(fā)明實施例提供的一種視頻水印嵌入方法進行說明,該方法可以包括以下步驟:
[0061]獲得待嵌入水印信息的二進制數(shù)據(jù);
[0062]根據(jù)待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定嵌入待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量;
[0063]根據(jù)預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊;
[0064]根據(jù)所確定的編碼塊數(shù)量以及運動矢量,從起始編碼塊開始,對目標視頻幀中需嵌入待嵌入水印信息的各個編碼塊編碼,以在目標視頻幀中嵌入待嵌入水印信息。
[0065]由于常用的編碼規(guī)則一般為有損編碼,因此,應(yīng)用這些編碼規(guī)則進行視頻編碼時,會造成視頻幀中圖像信息損失,若將水印信息嵌入到未編碼的視頻幀中,經(jīng)視頻編碼后,會或多或少的帶來水印信息損失,易造成后期提取水印信息失敗。然而,運動矢量屬于編碼規(guī)則中規(guī)定的語法元素,視頻編碼過程中,會直接將運動矢量等語法元素寫入視頻碼流中,不會改變這些語法元素的值,因此,應(yīng)用上述方法在視頻中嵌入水印信息時,不會造成水印信息損失。
[0066]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0067]圖1為本發(fā)明實施例提供的視頻水印嵌入方法的第一種流程示意圖,該方法包括:
[0068]SlOl:獲得待嵌入水印信息的二進制數(shù)據(jù)。
[0069]實際應(yīng)用中,待嵌入水印信息可以是以八進制、十進制、十六進制等方式表示的,根據(jù)八進制、十進制、十六進制等與二進制之間的轉(zhuǎn)換關(guān)系,可以得到該待嵌入水印信息的二進制數(shù)據(jù)。[0070]當然,實際應(yīng)用中,該待嵌入水印信息也可以是以二進制方式表示的,本申請并不對待嵌入水印信息的表示方式進行限定。
[0071]S102:根據(jù)待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定嵌入待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量。
[0072]其中,編碼塊為:編碼處理過程中使用的數(shù)據(jù)單元。不同的編碼規(guī)則中規(guī)定的編碼塊的大小可以不同,例如,8x8、8xl6、16x8、16x16等等。
[0073]在本發(fā)明的一個具體實施例中,參見圖2,提供了根據(jù)待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定嵌入待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量(S102)的具體實現(xiàn)方式,包括:
[0074]S102A:獲得待嵌入水印信息的二進制數(shù)據(jù)的位數(shù)Num.。
[0075]S102B:計算嵌入待嵌入水印/[目息所需編碼塊的數(shù)量Numeb。
[0076]對各個編碼塊進行編碼所需的運動矢量,一般包括X方向分量和Y方向分量,另夕卜,運動矢量作為編碼規(guī)則的語法元素,在預(yù)設(shè)的編碼規(guī)則中會規(guī)定表示運動矢量的一個分量的取值范圍,根據(jù)該取值范圍可以得知該分量對應(yīng)的二進制位數(shù),例如,編碼規(guī)則中規(guī)定表示運動矢量的一個分量的取值范圍為:[-32768,32768],由于32768對應(yīng)的二進制位數(shù)為15位,另外需要一個二進制位表示正數(shù)或負數(shù),則該分量的取值范圍對應(yīng)的二進制位數(shù)為:16位。
[0077]視頻編碼過程中,通常需通過運動搜索獲得參考視頻幀中,與當前編碼塊相似度較高的編碼塊作為當前編碼塊的參考編碼塊,進而根據(jù)參考編碼塊在參考視頻幀中的位置,得到當前編碼塊對應(yīng)的運動矢量,在本發(fā)明的一個優(yōu)選實施例中,可以不進行運動搜索,而直接根據(jù)待嵌入水印信息的二進制數(shù)據(jù)獲得編碼塊對應(yīng)的運動矢量。
[0078]該優(yōu)選實施例中,可以通過如下表達式計算嵌入待嵌入水印信息所需編碼塊的數(shù)量。
[0079]Numeb = (Numwm+Nummv—X+Nummv—y — I)/ (Nummv—X+Nummv—y)
[0080]其中,Numniv x為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量X方向分量的取值范圍對應(yīng)的二進制位數(shù),Numfflvj為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量Y方向分量的取值范圍對應(yīng)的二進制位數(shù)。
[0081]S102C:以(Nummv X+Nummv y)為單位,對待嵌入水印信息的二進制數(shù)據(jù)進行分段。
[0082]S102D:根據(jù)分段結(jié)果,從待嵌入水印信息的二進制數(shù)據(jù)的低位開始,利用每個分段對應(yīng)的數(shù)據(jù)構(gòu)成對一個編碼塊編碼所需的運動矢量。
[0083]其中,每個分段對應(yīng)的數(shù)據(jù)中,可以是低Numniv x位為運動矢量X方向分量值,高Nummv y位為運動矢量Y方向分量值;也可以是高Nummv-x位為運動矢量X方向分量值,低Nummv y位為運動矢量Y方向分量值。
[0084]S103:根據(jù)預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊。
[0085]其中,目標視頻幀按照預(yù)設(shè)的編碼規(guī)則,劃分為若干編碼塊。
[0086]實際應(yīng)用中,可以在對目標視頻幀編碼之前,確定嵌入位置對應(yīng)的起始編碼塊,也可以在對目標視頻幀進行編碼的過程中,確定嵌入位置對應(yīng)的起始編碼塊。
[0087]在對目標視頻幀編碼之前,確定嵌入位置對應(yīng)的起始編碼塊,可以根據(jù)預(yù)設(shè)位置確定嵌入位置對應(yīng)的起始編碼塊。
[0088]具體的,預(yù)設(shè)位置可以是編碼塊左上角頂點的坐標,例如:(0,16),即左上角頂點坐標為(0,16)的編碼塊;
[0089]可以是編碼塊在視頻幀中的塊位置,例如:(2,3),即第三編碼塊行、第四編碼塊列對應(yīng)的編碼塊(假設(shè),編碼塊行和編碼塊列的序號從O開始);
[0090]可以是編碼塊序號,例如:5,即按照預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,第6個編碼塊(假設(shè),編碼塊序號從O開始)。
[0091]當然,本申請并不限定預(yù)設(shè)位置的具體表現(xiàn)方式,實際應(yīng)用中,可以根據(jù)具體情況確定。
[0092]在對目標視頻幀的編碼過程中,確定嵌入位置對應(yīng)的起始編碼塊,可以先根據(jù)預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,計算當前編碼塊中各像素點之間的相關(guān)性,在當前編碼塊各像素點之間的相關(guān)性滿足預(yù)設(shè)條件的情況下,將當前編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
[0093]其中,計算當前編碼塊中各像素點之間的相關(guān)性,可以通過計算當前編碼塊中各個像素點之間的均方差得到,也可以通過計算當前編碼塊中各個像素點之間的梯度值得至IJ。本申請并不限定計算當前編碼塊中各像素點之間的相關(guān)性的方法。
[0094]需要說明的是,S102和S103沒有嚴格的執(zhí)行順序限制,S103可以在S102之后執(zhí)行,也可以在S102之前執(zhí)行,還可以與S102同時執(zhí)行。
[0095]S104:根據(jù)所確定的編碼塊數(shù)量以及運動矢量,從起始編碼塊開始,對目標視頻幀中需嵌入待嵌入水印信息的各個編碼塊編碼,以在目標視頻幀中嵌入待嵌入水印信息。
[0096]由以上可見,本實施例提供的方案中,根據(jù)待嵌入水印信息的二進制數(shù)據(jù),確定嵌入待嵌入水印信息所需的編碼塊數(shù)量以及編碼各個編碼塊所需的運動矢量,并根據(jù)所確定的上述信息編碼需嵌入待嵌入水印信息的編碼塊。與現(xiàn)有技術(shù)相比,本實施例提供的方案中,水印信息以編碼塊運動矢量的形式嵌入到編碼后的目標視頻幀中,由于運動矢量屬于視頻編碼的語義元素,因此,待嵌入水印信息不會被視頻編碼破壞。
[0097]視頻編碼過程中,由于當前視頻幀與參考視頻幀之間存在較強的時間相關(guān)性,所以,通過運動搜索得到的各個編碼塊的運動矢量一般數(shù)值較小,而若根據(jù)待嵌入水印信息的二進制數(shù)據(jù),得到的嵌入水印信息所需的編碼塊的運動矢量有可能也較小,并依此嵌入水印信息后,后續(xù)使用中提取所嵌入的水印信息時,由于所嵌入的水印信息與其他根據(jù)運動搜索得到的運動矢量相似,所以難于提取所嵌入的水印信息,進而難于證明版權(quán)所有者等信息。
[0098]在本發(fā)明的一個具體實施例中,參見圖3,提供了視頻水印嵌入方法的第三種流程示意圖,其中,根據(jù)預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊(S103),包括:
[0099]S103A:在目標視頻幀中,確定嵌入待嵌入水印信息的標識編碼塊。
[0100]S103B:以預(yù)設(shè)的運動矢量對標識編碼塊編碼。
[0101]其中,對標識編碼塊編碼后的數(shù)據(jù),用于標識編碼后的目標視頻幀中已嵌入待嵌入水印信息,主要通過編碼后的數(shù)據(jù)中的預(yù)設(shè)運動矢量體現(xiàn)。
[0102]本領(lǐng)域內(nèi)的技術(shù)人員可以理解的是,為了能夠更好的區(qū)別于通過運動搜索得到的運動矢量,預(yù)設(shè)的運動矢量可以選擇數(shù)值較大的值。
[0103]從已編碼的視頻幀中提取嵌入的水印信息時,可以先檢測編碼塊的運動矢量是否為預(yù)設(shè)的運動矢量,若是預(yù)設(shè)的運動矢量,則進一步按照預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,從該編碼塊之后的若干編碼塊對應(yīng)的運動矢量中提取已嵌入的水印信息。
[0104]S103C:根據(jù)預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,確定標識編碼塊之后的第一個編碼塊為嵌入位置對應(yīng)的起始編碼塊。
[0105]需要說明的是,S103B和S103C沒有嚴格的執(zhí)行順序限制,S103C可以在S103B之后執(zhí)行,也可以在S103B之前執(zhí)行,還可以與S103B同時執(zhí)行。
[0106]由以上可見,本實施例提供的方案中,通過預(yù)設(shè)的運動矢量對標識編碼塊進行編碼,以標識編碼后的目標視頻幀中已嵌入水印信息,便于后續(xù)提取水印信息,并根據(jù)所提取的水印信息證明版權(quán)所有者等信息。
[0107]圖4為本發(fā)明實施例提供的視頻水印嵌入裝置的第一種結(jié)構(gòu)示意圖,該裝置包括:二進制數(shù)據(jù)獲得模塊401、信息確定模塊402、起始編碼塊確定模塊403和水印信息嵌入模塊404。
[0108]其中,二進制數(shù)據(jù)獲得模塊401,用于獲得待嵌入水印信息的二進制數(shù)據(jù);
[0109]信息確定模塊402,用于根據(jù)所述待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定嵌入所述待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量,所述編碼塊為:編碼處理過程中使用的數(shù)據(jù)單元;
[0110]起始編碼塊確定模塊403,用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊,其中,所述目標視頻幀按照所述預(yù)設(shè)的編碼規(guī)則,劃分為若干編碼塊;
[0111]水印信息嵌入模塊404,用于根據(jù)所確定的編碼塊數(shù)量以及運動矢量,從所述起始編碼塊開始,對所述目標視頻幀中需嵌入所述待嵌入水印信息的各個編碼塊編碼,以在所述目標視頻幀中嵌入所述待嵌入水印信息。
[0112]在本發(fā)明的一個具體實施例中,參見圖5,提供了一種信息確定模塊402的具體結(jié)構(gòu)示意圖,包括:位數(shù)獲得子模塊4021、編碼塊數(shù)量計算子模塊4022、數(shù)據(jù)分段子模塊4023和運動矢量構(gòu)成子模塊4024。
[0113]其中,位數(shù)獲得子模塊4021,用于獲得所述待嵌入水印信息的二進制數(shù)據(jù)的位數(shù)Numwm ;
[0114]編碼塊數(shù)量計算子模塊4022,用于根據(jù)如下關(guān)系式,計算嵌入所述待嵌入水印信息所需編碼塊的數(shù)量Nunu,
[0115]Numeb = (Numwm+Nummv—X+Nummv—y — I)/(Nummv—X+Nummv—y),
[0116]其中,Nummv x為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量X方向分量的取值范圍對應(yīng)的二進制位數(shù),Numfflvj為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量Y方向分量的取值范圍對應(yīng)的二進制位數(shù);
[0117]數(shù)據(jù)分段子模塊4023,用于以(Nummv X+Nummv y)為單位,對所述待嵌入水印信息的二進制數(shù)據(jù)進行分段;
[0118]運動矢量構(gòu)成子模塊4024,用于根據(jù)分段結(jié)果,從所述待嵌入水印信息的二進制數(shù)據(jù)的低位開始,利用每個分段對應(yīng)的數(shù)據(jù)構(gòu)成對一個編碼塊編碼所需的運動矢量。
[0119]可選的,起始編碼塊確定模塊403,具體用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,確定嵌入位置對應(yīng)的起始編碼塊;或
[0120]具體用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀的編碼過程中,確定嵌入位置對應(yīng)的起始編碼塊。
[0121]可選的,起始編碼塊確定模塊403,具體用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,將預(yù)設(shè)位置的編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
[0122]在本發(fā)明的一個具體實施例中,起始編碼塊確定模塊403可以包括:相關(guān)性計算子模塊和第二起始編碼塊確定子模塊(圖中未示出)。
[0123]其中,相關(guān)性計算子模塊,用于在對所述目標視頻幀的編碼過程中,根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,計算當前編碼塊中各像素點之間的相關(guān)性;
[0124]第二起始編碼塊確定子模塊,用于在當前編碼塊各像素點之間的相關(guān)性滿足預(yù)設(shè)條件的情況下,將當前編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
[0125]由以上可見,本實施例提供的方案中,根據(jù)待嵌入水印信息的二進制數(shù)據(jù),確定嵌入待嵌入水印信息所需的編碼塊數(shù)量以及編碼各個編碼塊所需的運動矢量,并根據(jù)所確定的上述信息編碼需嵌入待嵌入水印信息的編碼塊。與現(xiàn)有技術(shù)相比,本實施例提供的方案中,水印信息以編碼塊運動矢量的形式嵌入到編碼后的目標視頻幀中,由于運動矢量屬于視頻編碼的語義元素,因此,待嵌入水印信息不會被視頻編碼破壞。
[0126]在本發(fā)明的一個具體實施例中,參見圖6,提供了視頻水印嵌入裝置的第三種流程示意圖,其中,起始編碼塊確定模塊403,包括:標識編碼塊確定子模塊4031、標識編碼塊編碼子模塊4032和第一起始編碼塊確定子模塊4033。
[0127]其中,標識編碼塊確定子模塊4031,用于在所述目標視頻幀中,確定嵌入所述待嵌入水印信息的標識編碼塊;
[0128]標識編碼塊編碼子模塊4032,用于以預(yù)設(shè)的運動矢量對所述標識編碼塊編碼,其中,對所述標識編碼塊編碼后的數(shù)據(jù),用于標識編碼后的所述目標視頻幀中已嵌入所述待嵌入水印信息;
[0129]第一起始編碼塊確定子模塊4033,用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,確定所述標識編碼塊之后的第一個編碼塊為嵌入位置對應(yīng)的起始編碼塊。
[0130]由以上可見,本實施例提供的方案中,通過預(yù)設(shè)的運動矢量對標識編碼塊進行編碼,以標識編碼后的目標視頻幀中已嵌入水印信息,便于后續(xù)提取水印信息,并根據(jù)所提取的水印信息證明版權(quán)所有者等信息。
[0131]對于裝置實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關(guān)之處參見方法實施例的部分說明即可。
[0132]需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
[0133]本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述方法實施方式中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件來完成,所述的程序可以存儲于計算機可讀取存儲介質(zhì)中,這里所稱得的存儲介質(zhì),如:R0M/RAM、磁碟、光盤等。
[0134 以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。
【權(quán)利要求】
1.一種視頻水印嵌入方法,其特征在于,所述方法包括: 獲得待嵌入水印信息的二進制數(shù)據(jù); 根據(jù)所述待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定嵌入所述待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量,所述編碼塊為:編碼處理過程中使用的數(shù)據(jù)單元; 根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊,其中,所述目標視頻幀按照所述預(yù)設(shè)的編碼規(guī)則,劃分為若干編碼塊; 根據(jù)所確定的編碼塊數(shù)量以及運動矢量,從所述起始編碼塊開始,對所述目標視頻幀中需嵌入所述待嵌入水印信息的各個編碼塊編碼,以在所述目標視頻幀中嵌入所述待嵌入水印信息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定嵌入所述待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量,包括: 獲得所述待嵌入水印信息的二進制數(shù)據(jù)的位數(shù)Numwm ; 根據(jù)如下關(guān)系式,計算嵌入所述待嵌入水印信息所需編碼塊的數(shù)量Nunu, Numeb =(Nurnwil^Nummv-JNummvj — I)/(Nummv—X+Nummv—y), 其中,Numniv x為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量X方向分量的取值范圍對應(yīng)的二進制位數(shù),Numfflvj為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量Y方向分量的取值范圍對應(yīng)的二進制位數(shù); 以(Nummv X+Nummv y)為單位,對所述待嵌入水印信息的二進制數(shù)據(jù)進行分段; 根據(jù)分段結(jié)果,從所述待嵌入水印信息的二進制數(shù)據(jù)的低位開始,利用每個分段對應(yīng)的數(shù)據(jù)構(gòu)成對一個編碼塊編碼所需的運動矢量。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊,包括: 在所述目標視頻幀中,確定嵌入所述待嵌入水印信息的標識編碼塊; 以預(yù)設(shè)的運動矢量對所述標識編碼塊編碼,其中,對所述標識編碼塊編碼后的數(shù)據(jù),用于標識編碼后的所述目標視頻幀中已嵌入所述待嵌入水印信息; 根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,確定所述標識編碼塊之后的第一個編碼塊為嵌入位置對應(yīng)的起始編碼塊。
4.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊,包括: 根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,確定嵌入位置對應(yīng)的起始編碼塊;或 根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀的編碼過程中,確定嵌入位置對應(yīng)的起始編碼塊。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,確定嵌入位置對應(yīng)的起始編碼塊,包括:根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,將預(yù)設(shè)位置的編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀的編碼過程中,確定嵌入位置對應(yīng)的起始編碼塊,包括: 在對所述目標視頻幀的編碼過程中,根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,計算當前編碼塊中各像素點之間的相關(guān)性; 若當前編碼塊各像素點之間的相關(guān)性滿足預(yù)設(shè)條件,則將當前編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
7.一種視頻水印嵌入裝置,其特征在于,所述裝置包括: 二進制數(shù)據(jù)獲得模塊,用于獲得待嵌入水印信息的二進制數(shù)據(jù); 信息確定模塊,用于根據(jù)所述待嵌入水印信息的二進制數(shù)據(jù)以及預(yù)設(shè)的編碼規(guī)則,確定嵌入所述待嵌入水印信息所需的編碼塊數(shù)量以及對各個編碼塊進行編碼所需的運動矢量,所述編碼塊為:編碼處理過程中使用的數(shù)據(jù)單元; 起始編碼塊確定模 塊,用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在目標視頻幀中,確定嵌入位置對應(yīng)的起始編碼塊,其中,所述目標視頻幀按照所述預(yù)設(shè)的編碼規(guī)則,劃分為若干編碼塊; 水印信息嵌入模塊,用于根據(jù)所確定的編碼塊數(shù)量以及運動矢量,從所述起始編碼塊開始,對所述目標視頻幀中需嵌入所述待嵌入水印信息的各個編碼塊編碼,以在所述目標視頻幀中嵌入所述待嵌入水印信息。
8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述信息確定模塊,包括: 位數(shù)獲得子模塊,用于獲得所述待嵌入水印信息的二進制數(shù)據(jù)的位數(shù)Numwm ; 編碼塊數(shù)量計算子模塊,用于根據(jù)如下關(guān)系式,計算嵌入所述待嵌入水印信息所需編碼塊的數(shù)量Numeb,
Numeb = (Numwm+Nummv—X+Nummv—y — I)/(Nummv—X+Nummv—y), 其中,Numniv x為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量X方向分量的取值范圍對應(yīng)的二進制位數(shù),Numfflvj為所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的運動矢量Y方向分量的取值范圍對應(yīng)的二進制位數(shù); 數(shù)據(jù)分段子模塊,用于以(Nummv X+Nummv y)為單位,對所述待嵌入水印信息的二進制數(shù)據(jù)進行分段; 運動矢量構(gòu)成子模塊,用于根據(jù)分段結(jié)果,從所述待嵌入水印信息的二進制數(shù)據(jù)的低位開始,利用每個分段對應(yīng)的數(shù)據(jù)構(gòu)成對一個編碼塊編碼所需的運動矢量。
9.根據(jù)權(quán)利要求7或8所述的裝置,其特征在于,所述起始編碼塊確定模塊,包括: 標識編碼塊確定子模塊,用于在所述目標視頻幀中,確定嵌入所述待嵌入水印信息的標識編碼塊; 標識編碼塊編碼子模塊,用于以預(yù)設(shè)的運動矢量對所述標識編碼塊編碼,其中,對所述標識編碼塊編碼后的數(shù)據(jù),用于標識編碼后的所述目標視頻幀中已嵌入所述待嵌入水印信息; 第一起始編碼塊確定子模塊,用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,確定所述標識編碼塊之后的第一個編碼塊為嵌入位置對應(yīng)的起始編碼塊。
10.根據(jù)權(quán)利要求7或8所述的裝置,其特征在于,所述起始編碼塊確定模塊, 具體用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,確定嵌入位置對應(yīng)的起始編碼塊;或 具體用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀的編碼過程中,確定嵌入位置對應(yīng)的起始編碼塊。
11.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述起始編碼塊確定模塊,具體用于根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,在對所述目標視頻幀編碼之前,將預(yù)設(shè)位置的編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
12.根據(jù)權(quán)利要求10所述的裝置,其特征在于,所述起始編碼塊確定模塊,包括: 相關(guān)性計算子模塊,用于在對所述目標視頻幀的編碼過程中,根據(jù)所述預(yù)設(shè)的編碼規(guī)則中規(guī)定的視頻幀中編碼塊的編碼順序,計算當前編碼塊中各像素點之間的相關(guān)性; 第二起始編碼塊確定子模塊,用于在當前編碼塊各像素點之間的相關(guān)性滿足預(yù)設(shè)條件的情況下,將當 前編碼塊確定為嵌入位置對應(yīng)的起始編碼塊。
【文檔編號】H04N19/467GK103997652SQ201410261584
【公開日】2014年8月20日 申請日期:2014年6月12日 優(yōu)先權(quán)日:2014年6月12日
【發(fā)明者】朱洪波 申請人:北京奇藝世紀科技有限公司