專利名稱:在壓縮視頻比特流中插入水印的編碼方法和設備的制作方法
技術領域:
本發(fā)明涉及視頻編碼器和解碼器,更具體地,涉及水印插入和/或檢測的設備和方法。
背景技術:
經常地,需要能夠識別壓縮視頻比特流的源,例如,識別有版權的材料的未授權發(fā)布者。用來創(chuàng)建比特流的編碼器能夠唯一地通過在編碼過程期間通過插入指紋(或水印)來識別。理想地,水印插入過程應該具有低附加計算復雜度,且水印應該是不能夠可視地檢測的,且對編碼效率具有非常低的影響。
已經提出了大量的計算來將不可見的耐用和/或脆弱的水印插入到已壓縮圖像和視頻中。一類技術根據(jù)人類視覺系統(tǒng)(HVS)對頻率響應較為敏感,在離散余弦變換(DCT)、小波或其他變換域中產生了水印信號。
一些系統(tǒng)對JPEG或MPEG壓縮圖像/視頻的量化DCT變換系數(shù)進行操作,其中對特定變換系數(shù)的最低有效位(LSB)進行調整以便與水印信號比特的奇偶性匹配。
因此,需要具有的附加計算復雜度的編碼器和解碼器來插入和檢測實質上不能可視地檢測的水印。
發(fā)明內容
通過插入和檢測實質上不能可視地檢測的水印的設備和方法來解決現(xiàn)有技術中的這些和其他缺陷和缺點。
根據(jù)本發(fā)明的原理,公開了一種給視頻內容加水印的編碼器;所述編碼器包括量化單元,用于對視頻比特流的系數(shù)進行量化;以及嵌入單元,與量化單元信號通信,用于作為塊中已編碼系數(shù)的數(shù)量的奇偶性的函數(shù),將數(shù)字指紋的比特嵌入到視頻比特流的塊中。
通過結合附圖閱讀的典型實施例的以下描述,本發(fā)明的這些和其他方案、特征和優(yōu)點將變得明顯。
根據(jù)以下典型附圖,本發(fā)明將得到更好地理解,其中圖1示出了塊編碼器的流程圖;圖2示出了根據(jù)本發(fā)明原理的具有指紋插入的塊編碼器的流程圖;圖3示出了根據(jù)本發(fā)明的原理的具有強制指紋插入的塊編碼器的流程圖;圖4示出了根據(jù)本發(fā)明的原理的具有所需的指紋插入的塊編碼器的流程圖;圖5示出了根據(jù)本發(fā)明原理的具有指紋檢測的塊解碼器的流程圖;圖6示出了根據(jù)本發(fā)明原理的具有進行指紋插入的塊編碼器的視頻編碼器的方框圖;以及圖7示出了根據(jù)本發(fā)明原理的具有進行指紋檢測的塊解碼器的視頻解碼器的方框圖。
具體實施例方式
本發(fā)明的實施例提出了具有低附加計算復雜度的方法和設備,用于插入和檢測實質上不能可視地檢測的水印。在以下描述中,為了簡化,編碼器和解碼器可以統(tǒng)稱為編解碼器,盡管方法和設備實施例可以僅能夠編碼、僅能夠解碼、或同時能夠編碼和解碼。在各個附圖中的幾百個位置處,類似元件可以有具有附圖專用數(shù)字的類似參考數(shù)字來表示。這里,術語“水印”和“指紋”可以互換地使用。
諸如MPEG-2、MPEG-4和JVT的通用視頻壓縮標準包含幀內編碼I幀和幀間編碼P和B幀。通過將圖像組合為MPEG-2中的圖像組(GOP)或獨立解碼器刷新周期(IDR),能夠實現(xiàn)壓縮視頻比特流中的隨機訪問點。在這些標準中,將已編碼的圖像劃分為非重疊塊。利用離散余弦變換(DCT)對每一個塊進行變換,或對其進行類似變換、量化和運行長度(run length)編碼,從而僅對非零量化系數(shù)進行編碼。量化過程可以是均勻的或非均勻的,并且可以采用不工作區(qū)(dead zone)和/或閾值設定。例如,JVT JM參考軟件采用一個閾值,通過其,如果在量化過程的第一級之后的非零系數(shù)的數(shù)量小于閾值T,則應用量化過程的第二級來強制將塊中的所有系數(shù)量化為零。
本描述示出了本發(fā)明的原理。因此,將會意識到,本領域的技術人員將能夠設計各種配置,盡管這里未明確描述和示出,這些各種配置將具體實現(xiàn)本發(fā)明的原理且包括在本發(fā)明的精神和范圍內。
這里所述的所有示例和條件語言用于教導的目的以幫助讀者理解本發(fā)明的原理和由發(fā)明人對本領域作出貢獻的理念,并且應理解為并不局限于這樣的特別陳述的示例和條件。
而且,這里陳述本發(fā)明的原理、方案和實施例的所有語句以及其特定示例應包括其結構上和功能上的等價物。另外,應該注意,這樣的等價物包括當前已知的等價物以及未來開發(fā)的等價物,即,所開發(fā)的執(zhí)行相同功能的任意元件,而與結構無關。
因此,例如,本領域的技術人員將會意識到這里所呈現(xiàn)的方框圖示出了具體實現(xiàn)了本發(fā)明原理的說明性電路的概念圖。類似地,將會意識到,任何流程圖、流圖、狀態(tài)轉換圖、微代碼等表示可以在計算機可讀介質上實質上進行表示的各種過程,并且由計算機或處理器執(zhí)行,不管是否清楚地示出了這樣的計算機或處理器。
附圖中所示的各種元件的功能可以通過使用專用硬件、以及能夠執(zhí)行與適當軟件相關的軟件的硬件來提供。當由處理器提供時,這些功能可以由單個專用處理器、單個共享處理器或多個單獨處理器來提供,其中一些可以是共享的。而且,明確使用術語“處理器”或“控制器”不應理解為專指能夠執(zhí)行軟件的硬件,而可以隱含地包括而局限于數(shù)字信號處理器(“DSP”)硬件、用于存儲軟件的只讀存儲器(“ROM”)、隨機存取存儲器(“RAM”)、以及非易失性存儲器。
也可以包括其他硬件,傳統(tǒng)的和/或客戶定制的。類似地,在圖中所示的任何開關僅是概念性的。其功能可以通過程序邏輯的操作、通過專用邏輯、通過程序控制和專用邏輯的相互作用、或者甚至是相互地來實現(xiàn),特定技術可以由實現(xiàn)者根據(jù)從環(huán)境中更具體地理解來選擇。
在其權利要求中,表達為執(zhí)行特定功能的任何元件用于執(zhí)行該功能的任何方式,包括例如a)執(zhí)行該功能的電路元件的組合,或b)任何形式的軟件,因而包括固件、微代碼等,與適當?shù)碾娐方M合來執(zhí)行實現(xiàn)該功能的軟件。由這樣的權利要求所限定的本發(fā)明在于以下事實由各種陳述的裝置所提供的功能按照權利要求所要求的方式組合并結合在一起。因此,申請人考慮了能夠提供與這里所示等價的那些功能的任何裝置。
如圖1所示,塊編碼器通常由參考數(shù)字100來表示。塊編碼器100包括開始塊110,將控制傳遞給功能塊114。功能塊114使用幀內或幀間預測對塊進行預測,形成殘余塊,并將控制傳遞給功能塊116。結果,功能塊116對殘余塊進行變換,形成變換系數(shù),并將控制傳遞給功能塊118。功能塊118對變換系數(shù)進行量化,形成量化系數(shù),并將控制傳遞給功能塊120。結果,功能塊120將變量N量化為塊中的非零量化系數(shù)的數(shù)量,并將控制傳遞給判定塊122。判定塊122檢查N是否為零,如果N不為零,則將控制傳遞給功能塊136,功能塊136對該塊進行熵編碼,然后將控制傳遞給結束塊139。然而,如果N等于零,則判定塊122將控制傳遞給功能塊137,功能塊137并不對該塊進行編碼,或者利用已編碼塊圖案(CBP)來指示未編碼塊或跳過宏塊。結果,功能塊137將控制傳遞給結束塊139。
因此,圖1示出了基于塊的視頻編碼器的塊編碼過程的流程圖。針對塊形成幀內或幀間預測,并且從塊中減去該預測以形成殘余塊。對于幀間預測,通常使用運動補償。針對不同的編碼標準進行不同的幀內預測,而總是使用來自相同已編碼圖像中的相鄰塊或宏塊的信息。然后,利用塊變換對殘余塊進行變換以形成變換系數(shù)。對變換系數(shù)進行量化以形成量化系數(shù)。對其值非零的量化系數(shù)的數(shù)量N進行計數(shù)。如果N等于零,則不對塊進行編碼。如果對相同宏塊中的其他塊進行編碼,則利用已編碼塊圖案(CBP)來指示未編碼的塊。如果相同宏塊中的所有塊均未編碼,則跳過該宏塊。如果要對塊進行編碼,則利用運行長度編碼對非零系數(shù)進行熵編碼。
本發(fā)明的實施例提出了一種將唯一指紋插入到已壓縮視頻比特流中并檢測其的低復雜度方法。描述了用于插入并檢測已壓縮視頻比特流中的脆弱數(shù)字指紋(或水印)的方法,以便能夠識別用來創(chuàng)建壓縮的視頻比特流的編碼器。特別地,該方法非常適合于包括在MPEGAVC/ITU H.264比特流中。通過將塊中的已編碼系數(shù)的數(shù)量的奇偶性與所述碼的比特值相匹配,將唯一識別碼(指紋)的一個比特嵌入到比特流中的已編碼塊中。
該實施例允許在編碼過程期間,通過視頻壓縮編碼器將唯一指紋嵌入到已壓縮視頻比特流中。創(chuàng)建長度為L比特的唯一指紋序列FSEQ以唯一地識別該視頻編碼器。
在視頻壓縮編碼過程期間,通過強制將針對該塊的已編碼(非零)系數(shù)的總數(shù)的奇偶性與指紋序列的比特相匹配,將來自指紋序列的一個比特嵌入到已編碼塊中。該系數(shù)的總數(shù)可以僅是指AC系數(shù),也可以是指AC和DC系數(shù)。對于0比特,必須對偶數(shù)個非零系數(shù)進行編碼,而對于1比特,則必須對奇數(shù)個非零系數(shù)進行編碼。
轉到圖2,具有指紋插入的塊編碼器通常由參考數(shù)字200表示。塊編碼器200包括開始塊210,將控制傳遞給功能塊214。功能塊214利用幀內或幀間預測對塊進行預測,形成殘余塊,并將控制傳遞給功能塊216。結果,功能塊216變換該殘余塊,形成變換系數(shù),并將控制傳遞給功能塊218。功能塊218對變換系數(shù)進行量化,形成量化系數(shù),并且將控制傳遞給功能塊220。
結果,功能塊220將變量N量化為塊中非零量化系數(shù)的數(shù)量,并將控制傳遞給判定塊222。判定塊222檢查N是否為零,如果N等于零,則將控制傳遞給功能塊237,功能塊237并未對該塊進行編碼,或者已編碼塊圖案(CBP)來指示未編碼塊或跳過宏塊。結果,功能塊237將控制傳遞給結束塊239。然而,如果N不等于零,則判定塊222將控制傳遞給功能塊230,功能塊230獲取指紋序列F的下一比特,并將控制傳遞給判定塊232。判定塊232檢查指紋序列F是否等于N模2,如果F等于N模2,則將控制傳遞給功能塊236,功能塊236對該塊進行熵編碼,然后將控制傳遞給結束塊239。然而,如果F并不等于N模2,則判定塊232將控制傳遞給功能塊234,功能塊234對該塊重新量化以強制其為新值N,其中F等于N模2且N大于零。結果,功能塊234將控制傳遞給功能塊236,如上所述。
因此,圖2示出了具有指紋插入的基于塊的視頻編碼器的塊編碼過程。針對該塊形成幀間或幀內預測,并且將其從塊中減去以形成殘余塊。然后,利用塊變換變換殘余塊以形成變換系數(shù)。對變換系數(shù)進行量化以形成量化系數(shù)。對其值非零的量化系數(shù)的數(shù)量N進行計數(shù)。如果N等于零,則不對塊進行編碼,且并不將指紋序列比特嵌入到該塊中。如果N不等于零,則對塊進行編碼,并且將指紋序列的比特F嵌入到塊中。如果N%2(其中%是模運算符)等于F,則不需要動作將比特F嵌入到塊中,且對其進行熵編碼。如果N%2并不等于F,則對該塊重新量化來使其強制成為新值N,從而N%2=F且N>0。
如果對相同宏塊中的其他塊進行編碼,則利用已編碼塊圖案(CBP)指示未編碼塊。如果未對相同宏塊中的所有塊進行編碼,則跳過該宏塊。如果要對該塊進行編碼,則利用運行長度編碼對非零系數(shù)進行熵編碼。
當需要對塊進行重新量化時,編碼器可以選擇對塊進行重新量化的任意方法,從而使新值N滿足條件N%2=F且N>0??梢园?來增加或減少塊中的非零系數(shù)的數(shù)量,以便通過對塊重新量化來匹配指紋信號比特。需要的是,重新量化過程不會創(chuàng)建沒有非零系數(shù)的塊,由于不將對這些塊進行編碼,因此,水印檢測器將不能夠確定該塊已經將指紋比特嵌入到其中。由此,如果塊中的非零系數(shù)的數(shù)量為1,則必須增加而非減少該數(shù)量。
可以通過將原來對應于非零量化系數(shù)的變換系數(shù)重新量化為零,以1來減少值N。編碼器可以選擇最低值的變換系數(shù)或最高頻率位置的非零系數(shù)以將其重新量化為零,例如,使其對已壓縮視頻質量的影響最小。
可以通過將零值量化系數(shù)重新量化為諸如設置為1的非零值,來增加值N。編碼器可以選擇將在掃描次序上比第一量化級的最后非零量化系數(shù)高一個頻率位置的位置上的變換系數(shù)重新量化為1。在JVT壓縮標準中,當使用CAVLC熵編碼時,對尾部進行有效編碼,從而添加非零系數(shù),按照該方式,將對編碼該塊所需的比特數(shù)量產生極其小的影響。可以使用與諸如CABAC等其他熵編碼方法相同的策略。
用于選擇哪些已編碼塊來嵌入指紋比特的圖案是預定的,且由編碼器和指紋解碼器使用??梢允褂玫谝籐編碼塊,以編碼L比特序列。可選地,對于任意預定的值M,可以使用每一個第M編碼塊來編碼L*M已編碼塊中的L比特序列。還可以使用其他圖案。
可以在視頻序列中將L比特指紋序列重復許多次,或僅插入一次。一旦已經嵌入了整個L比特序列,則可以停止指紋嵌入過程,直到達到指定的重啟點為止。在優(yōu)選實施例中,針對每一個圖像組或IDR,重復L比特指紋序列。
編碼器可以選擇需要將整個L比特序列嵌入到某個數(shù)量的視頻圖像、片段或宏塊,對應于某個數(shù)量的塊B。在優(yōu)選實施例中,編碼器需要在每一個I圖像中對整個L比特序列進行編碼。
在對視頻圖像進行編碼之前,盡管已知視頻圖像被分為多少個塊,但是并不知道多少塊將被分類為未編碼。僅分類為已解碼的塊用于嵌入指紋比特。為了滿足將整個L比特指紋序列嵌入到所需數(shù)量的塊B的約束,編碼器可以強制對原來并未編碼的塊進行編碼,從而可以將指紋比特嵌入到該塊中。這通過對該塊重復量化從而使非零系數(shù)N的新數(shù)量大于零來實現(xiàn)。
現(xiàn)在轉到圖3,具有強制指紋插入的塊編碼器通常由參考數(shù)字300來指示。塊編碼器300包括開始塊310,將控制傳遞給功能塊314。功能塊314利用幀內或幀間預測對塊進行預測,形成殘余塊,并將控制傳遞給功能塊316。結果,功能塊316變換該殘余塊,形成變換系數(shù),并將控制傳遞給功能塊318。功能塊318對變換系數(shù)進行量化,形成量化系數(shù),并且將控制傳遞給功能塊320。
結果,功能塊320將變量N量化為塊中非零量化系數(shù)的數(shù)量,并將控制傳遞給功能塊330,功能塊330獲取指紋序列F的下一比特,并將控制傳遞給判定塊333。判定塊333檢查指紋序列F是否等于N模2以及N是否大于零,如果兩個條件均為真,則將控制傳遞給功能塊336,功能塊336對該塊進行熵編碼,然后將控制傳遞給結束塊339。然而,如果F并不等于N模2或N并不大于零,則判定塊333將控制傳遞給功能塊334,功能塊334對該塊重新量化以強制其為新值N,其中F等于N模2且N大于零。結果,功能塊334將控制傳遞給功能塊336,如上所述。
因此,圖3示出了具有強制指紋插入的塊編碼器。即,不對該塊進行編碼是不允許的,從而確保了將指紋比特嵌入到該塊中。前幾個步驟與圖2完全相同。針對該塊形成幀間或幀內預測,并且將其從塊中減去以形成殘余塊。然后,利用塊變換變換殘余塊以形成變換系數(shù)。對變換系數(shù)進行量化以形成量化系數(shù)。對其值非零的量化系數(shù)的數(shù)量N進行計數(shù)。以下步驟不同于圖2。如果N>0且F=N%2,則對該塊進行熵編碼。但是,如果這些條件未滿足,則必須對該塊重新量化來改變值N以滿足這些條件。不同于圖2,如果N=0,即,如果初始量化之后,塊還未編碼,則需要該重新量化步驟。
需要將整個L比特的指紋序列嵌入到B個塊內的編碼器能夠跟蹤塊計數(shù)、以及已編碼塊計數(shù)cbc。然后,當剩下的要編碼的塊數(shù)不再大于剩下要嵌入的指紋比特的數(shù)量,則編碼器能夠強制對剩余塊進行編碼,即,不允許將其分類為未編碼。
如圖4所示,具有所需指紋插入的塊編碼器通常由參考數(shù)字400表示。塊編碼器400包括開始塊410,將控制傳遞給開始循環(huán)塊412,開始循環(huán)塊412初始化并之后在零和最大值B之間遞增循環(huán)計數(shù)器bc。開始循環(huán)塊將控制傳遞給功能塊414。功能塊414利用幀內或幀間預測對塊進行預測,形成殘余塊,并將控制傳遞給功能塊416。結果,功能塊416變換該殘余塊,形成變換系數(shù),并將控制傳遞給功能塊418。功能塊418對變換系數(shù)進行量化,形成量化系數(shù),并且將控制傳遞給功能塊420。
功能塊420將變量N初始化為塊中非零量化系數(shù)的數(shù)量,并將控制傳遞給功能塊430。功能塊430獲得指紋序列F=FSEQ[cbc]的下一個比特,并且將控制傳遞給判定塊422。判定塊422檢查N是否為零,如果N等于零,則將控制傳遞給判定塊424,判定塊424檢查B減去bc是否大于指紋序列比特數(shù)量(L)減去已編碼塊計數(shù)(cbc)。如果比較為真,則判定塊424將控制傳遞給功能塊437,功能塊437并未對該塊進行編碼,或者利用已編碼塊圖案(CBP)來指示未編碼塊或跳過宏塊。結果,功能塊437將控制傳遞給結束循環(huán)塊438,如果循環(huán)計數(shù)器bc還未達到最大值B,結束循環(huán)塊438將控制傳遞回開始循環(huán)塊412;或者如果循環(huán)計數(shù)器bc已經達到最大值B,則將控制傳遞給結束塊439。如果B減去bc并不大于L小于cbc,則判定塊424將控制傳遞給功能塊426,功能塊426對該塊重新量化以強制其為新值N,其中F等于N模2且N大于零。結果,功能塊426將控制傳遞給功能塊428。功能塊428遞增已編碼塊計數(shù)(cbc),并且將控制傳遞給功能塊436,功能塊436對該塊進行熵編碼,然后將控制傳遞給結束循環(huán)塊438。
然而,如果N并不等于零,則判定塊422將控制傳遞給判定塊432。判定塊432檢查指紋序列F是否等于N模2,如果F等于N模2,則將控制傳遞給上述的功能塊428。然而,如果F并不等于N模2,則判定塊432將控制傳遞給功能塊426,如先前所述。
因此,圖4示出了具有所需指紋插入的編碼器,其在其上需要嵌入L比特序列的片段或幀的B個塊上循環(huán)。循環(huán)計數(shù)器bc用于塊計數(shù)。對于每一個塊,初始步驟與圖2和3相同。針對該塊形成幀間或幀內預測,并從塊中減去其以形成殘余塊。然后,利用塊變換來變換殘余塊以形成變換系數(shù)。對變換系數(shù)進行量化以形成量化系數(shù)。對非零量化系數(shù)的數(shù)量N進行計數(shù)。如果N=0,則進行進一步的檢查,檢查作為要處理的剩余塊的數(shù)量的B-bc是否大于作為要嵌入的剩余指紋序列比特的數(shù)量的L-cbc,在這種情況下,并未對該塊進行編碼。即,如果B-bc>L-cbc,則該塊并未編碼。然而,如果B-bc不大于L-cbc,則必須對當前塊進行編碼,從而可以嵌入指紋比特以便滿足將所有L個比特嵌入到B個塊中的約束。變量cbc是已編碼塊計數(shù),其對已經編碼了多少塊進行跟蹤,即,沒有被分類為未編碼的那些塊。
轉到圖5,指紋檢測器通常由參考數(shù)字500表示。指紋檢測器500包括開始塊540,將控制傳遞給將控制傳遞給開始循環(huán)塊542,開始循環(huán)塊542將循環(huán)變量cbc初始化為零并在后續(xù)迭代中對循環(huán)變量cbc進行遞增,直到最大值L為止。開始循環(huán)塊542將控制傳遞給功能塊544,功能塊544將計數(shù)N設置為等于塊中的非零量化系數(shù)的數(shù)量,并且將控制傳遞給功能塊546。結果,功能塊546獲得指紋序列F=FSEQ[cbc]的下一個比特,并且將控制傳遞給判定塊548。判定塊548檢查F是否等于N模2。如果F并不等于N模2,則判定塊548將控制傳遞給功能塊556,功能塊556確定是否已經檢測到指紋并將控制傳遞給結束塊558。然而,如果N等于N模2,則判定塊548將控制傳遞給結束循環(huán)塊550,如果循環(huán)變量cbc還未等于L,則結束循環(huán)塊550將控制傳遞回開始循環(huán)塊542,或者否則,將控制傳遞給功能塊552。功能塊552確定已經檢測到指紋,并將控制傳遞給結束塊554。
因此,為了檢測已壓縮視頻比特流中的指紋,對第一L個已編碼塊進行測試以查看嵌入的水印比特是否與L比特指紋序列FSEQ相匹配。如果使用了在第一L個已編碼塊中并未嵌入比特的圖案,例如對每一個第M塊進行操作的圖案,則可以對該過程進行調節(jié)以遵循相同的圖案。
在圖5的指紋檢測器實施例中,利用cbc作為循環(huán)指標對第一L個已編碼塊進行循環(huán)。對于每一個塊,對非零量化系數(shù)的數(shù)量N進行計數(shù)。然后,將指紋序列F=FSEQ[cbc]的下一比特與N%2進行比較。如果F=N%2,則循環(huán)繼續(xù)。如果在循環(huán)中的任意點處,F(xiàn)≠N%2,則將該過程結束,并且不檢測指紋。如果循環(huán)以針對L個已編碼塊總是滿足F=N%2的條件完成,則該過程結束并檢測該指紋。
如果L足夠大,則在指紋序列的圖案之后的已編碼系數(shù)數(shù)量的未加指紋的已壓縮比特流的圖案為奇數(shù)是非常不可能在2^L中近似為1。如果該比特流已經以任意方式從原來創(chuàng)建其的方法發(fā)生改變,即,如果出現(xiàn)了信道差錯,則L個已編碼塊的單個組的指紋檢測可能會失敗。為了提供更大程度的可靠度,指紋檢測器可以針對指紋檢測已編碼比特流的每一個GOP或IDR。
轉到圖6,用于指紋插入的典型視頻編碼器通常由參考數(shù)字600來表示。編碼器600的輸入端與求和點610的同相輸入端相連以信號通信。求和點610的輸出端與塊變換器620相連以信號通信。變換器620與量化器630相連以信號通信,該量化器630可選地具體實現(xiàn)了用于指紋插入的塊編碼器,該量化器630與水印嵌入器635相連以信號通信。如相關領域的普通技術人員根據(jù)這里的教導所意識到的,編碼器600僅需要包括水印編碼器635和量化器630的指紋插入部分之一。嵌入器635的輸出端與VLC(可變長度編碼器)640相連以信號通信,VLC 640的輸出端為編碼器600的外部可用輸出端。
量化器630的輸出端還與反相量化器650相連以信號通信。反相量化器650與反相塊變換器660相連以信號通信,結果,反相塊變換器660與參考圖像存儲器670相連以信號通信。參考圖像存儲器670的第一輸出端與運動估計器680的第一輸入端相連以信號通信。編碼器600的輸入端還與運動估計器680的第二輸入端相連以信號通信。指示運動矢量的運動估計器680的輸出端還與運動補償器690的第一輸入端相連以信號通信。參考圖像存儲器670的第二輸出端與運動補償器690的第二輸入端相連以信號通信。指示運動補償后的參考圖像的運動補償器690的輸出端與求和點610的反相輸入相連以信號通信。
如圖7所示,用于指紋檢測的典型視頻解碼器通常由參考數(shù)字700表示。視頻解碼器700包括VLD(可變長度解碼器710),與指紋檢測器715相連以信號通信,指紋檢測器715與反相量化器720相連以信號通信,所述反相量化器720可選地具體實現(xiàn)了指紋檢測的塊解碼器。如相關領域的普通技術人員根據(jù)這里的教導將會意識到的,解碼器700僅需要包括指紋檢測器715和反相量化器720的指紋檢測部分之一。反相量化器720與反相變換器730相連以信號通信。反相變換器730與求和點740的第一輸入端相連以信號通信,求和點740的輸出端提供視頻解碼器700的輸出。求和點740的輸出端與參考圖像存儲器750相連以信號通信。參考圖像存儲器750與運動補償器760相連以信號通信,運動補償器760與求和點740的第二輸入端相連以信號通信。
相關領域的普通技術人員根據(jù)這里的教導任意確定本發(fā)明的這些和其他特征和優(yōu)點。應該理解,本發(fā)明的原理能夠以硬件、軟件、固件、專用處理器或其組合等各種形式來實現(xiàn)。
更具體地,本發(fā)明的原理實現(xiàn)為硬件和軟件的組合。而且優(yōu)選地,軟件實現(xiàn)為在程序存儲單元具體實現(xiàn)的應用程序。可以將該應用程序上載到包括任何適當結構的機器上并由該機器來執(zhí)行。優(yōu)選地,在具有諸如一個或多個中央處理單元(“CPU”)、隨機存取存儲器(“RAM”)和輸入/輸出(“I/O”)接口的硬件的計算機平臺上實現(xiàn)該機器。該計算機平臺還可以包括操作系統(tǒng)和微指令代碼。這里所述的各種過程和功能可以是微指令代碼的一部分或應用程序的一部分或其組合,其可以由CPU來執(zhí)行。另外,各種其他外圍單元可以與計算機平臺相連,例如附加數(shù)據(jù)存儲單元和打印單元。
還應該理解,由于在附圖中所示的構成系統(tǒng)的組件和方法的一部分最好以軟件來實現(xiàn),因此根據(jù)對本發(fā)明進行編程的方式,系統(tǒng)組件或處理功能塊之間的實際連接可以是不同的。給定了這里的教導,相關領域的普通技術人員之一將能夠設想本發(fā)明的這些和類似實現(xiàn)或配置。
盡管已經參考附圖描述了說明性實施例,但是應該理解,本發(fā)明并不局限于這些精確的實施例,而可以由本領域的技術人員來實現(xiàn)各種改變和修改,而不脫離本發(fā)明的范圍或精神。所有這樣的改變和修改應包括在所附權利要求所限定的本發(fā)明的范圍內。
權利要求
1.一種在已壓縮視頻比特流中包括數(shù)字指紋的方法(200,300,400),所述方法包括將唯一識別碼表示為比特序列(230,330,430);以及通過將塊中已編碼系數(shù)的數(shù)量的奇偶性與唯一識別碼的比特值相匹配,將唯一識別碼的每一個比特嵌入到已壓縮視頻比特流的相應已編碼塊中(234,334,434)。
2.根據(jù)權利要求1所述的方法,其特征在于已編碼系數(shù)的數(shù)量在每一個塊中是非零的,指示唯一識別碼中的比特。
3.根據(jù)權利要求1所述的方法,其特征在于比特序列的長度是固定的。
4.根據(jù)權利要求1所述的方法,其特征在于唯一識別碼唯一地識別視頻編碼器。
5.根據(jù)權利要求1所述的方法,其特征在于塊中已編碼系數(shù)的數(shù)量是指AC系數(shù)。
6.根據(jù)權利要求1所述的方法,其特征在于針對唯一識別碼中的0比特,對針對所述塊的偶數(shù)個非零系數(shù)進行編碼,而針對唯一識別碼中的1比特,對針對所述塊的奇數(shù)個非零系數(shù)進行編碼。
7.根據(jù)權利要求1所述的方法,其特征在于匹配奇偶性包括檢查針對所述塊的非零系數(shù)的數(shù)量的奇偶性是否與唯一識別碼的比特的奇偶性相同(232,332,432);以及如果針對所述塊的非零系數(shù)的數(shù)量的奇偶性與唯一識別碼的比特的奇偶性相同,則對所述塊重新量化(234、334、434)。
8.根據(jù)權利要求7所述的方法,其特征在于匹配奇偶性還包括檢查針對重新量化塊的非零系數(shù)的數(shù)量的奇偶性是否與唯一識別碼的比特的奇偶性相同;以及如果針對所述塊的非零系數(shù)的數(shù)量的奇偶性與唯一識別碼的比特的奇偶性相同,則進一步對所述塊重新量化。
9.根據(jù)權利要求7所述的方法,其特征在于還包括確保針對所述重新量化塊的非零系數(shù)的數(shù)量不等于零(222,333,422)。
10.根據(jù)權利要求1所述的方法,其特征在于匹配奇偶性包括以1來增加或減少塊中的非零系數(shù)的數(shù)量以與唯一識別碼的比特相匹配。
11.根據(jù)權利要求1所述的方法,其特征在于匹配奇偶性包括在原來僅具有一個非零系數(shù)的塊中,以1增加而非減少非零系數(shù)的數(shù)量以與所述唯一識別碼的比特相匹配。
12.根據(jù)權利要求1所述的方法,其特征在于匹配奇偶性包括通過將原來已經對應于非零量化系數(shù)的變換系數(shù)重新量化為零,以1來減少非零系數(shù)的數(shù)量。
13.根據(jù)權利要求12所述的方法,其特征在于從最低值變換系數(shù)和最大頻率位置的非零系數(shù)中選擇要重新量化為零的變換系數(shù),以減少對已壓縮視頻質量的影響。
14.根據(jù)權利要求10所述的方法,其特征在于通過將零值的量化系數(shù)重新量化為非零值,增加非零系數(shù)的數(shù)量。
15.根據(jù)權利要求14所述的方法,其特征在于要重新量化的零值量化系數(shù)處于在掃描次序上比最后的非零初始量化系數(shù)高一個頻率位置的位置處。
16.根據(jù)權利要求1所述的方法,其特征在于匹配奇偶性包括利用1值系數(shù)來替代零值系數(shù),其中要替代的零值系數(shù)處于在掃描次數(shù)上比最后的非零系數(shù)高一個頻率位置的位置處。
17.根據(jù)權利要求1所述的方法,其特征在于還包括根據(jù)選擇圖案,選擇要嵌入唯一識別碼的比特的已壓縮視頻比特流的相應已編碼塊。
18.根據(jù)權利要求17所述的方法(300),其特征在于所述選擇圖案包括直到唯一識別碼的比特數(shù)的每一個連續(xù)塊。
19.根據(jù)權利要求17所述的方法(200),其特征在于所述選擇圖案包括直到唯一識別碼的比特數(shù)的原來具有至少一個非零系數(shù)的每一個塊。
20.根據(jù)權利要求17所述的方法(300),其特征在于所述選擇圖案包括直到唯一識別碼的比特數(shù)的每一個第N塊。
21.根據(jù)權利要求17所述的方法(200),其特征在于所述選擇圖案包括直到唯一識別碼的比特數(shù)的原來具有至少一個非零系數(shù)的每一個第N塊。
22.根據(jù)權利要求17所述的方法(400),其特征在于所述選擇圖案包括直到在已壓縮視頻比特流的已編碼塊的結尾附近的塊的原來具有至少一個非零系數(shù)的每一個第N塊、以及直到唯一識別碼的比特數(shù)的之后的每一個塊和已壓縮視頻比特流的最后塊。
23.根據(jù)權利要求1所述的方法,其特征在于還包括將數(shù)字指紋的多個拷貝包括在已壓縮視頻比特流中。
24.根據(jù)權利要求23所述的方法,其特征在于針對每一個圖像組或獨立解碼器刷新周期,重復數(shù)字指紋的新拷貝。
25.根據(jù)權利要求1所述的方法,其特征在于已編碼塊是塊、片段、宏塊和圖像中的至少一個。
26.根據(jù)權利要求17所述的方法,其特征在于所述整個選擇圖案在每一個幀內編碼圖像內重復。
27.一種利用水印比特序列為視頻數(shù)據(jù)加水印的方法(200,300,400),所述方法包括編碼多個視頻塊中的每一個(214-218,314-318,414-418);通過強制使每一個塊中的已編碼系數(shù)的數(shù)量與指紋序列比特的奇偶性相匹配,將來自水印比特序列的水印比特嵌入到每一個已編碼塊中(234,334,434)。
28.根據(jù)權利要求27所述的加水印的方法(200,400),其特征在于僅使用已編碼塊。
29.根據(jù)權利要求27所述的加水印的方法,其特征在于還包括重新量化以強制將使尾部嵌入水印比特。
30.根據(jù)權利要求27所述的加水印的方法,其特征在于還包括將最低值的變換系數(shù)重新量化為零。
31.根據(jù)權利要求27所述的加水印的方法,其特征在于還包括如果需要將比特嵌入到塊中,則強制對塊進行編碼。
32.根據(jù)權利要求27所述的加水印的方法,其特征在于還包括通過與塊中的已編碼系數(shù)數(shù)量的奇偶性相對應地從已編碼塊中獲得水印比特,檢測所述水印。
33.一種在已壓縮視頻比特流中嵌入數(shù)字指紋的視頻編碼器(600),其特征在于,所述編碼器包括量化單元(630),用于量化視頻比特流的系數(shù);以及與量化單元信號通信的嵌入單元(635),用于作為塊中已編碼系數(shù)的數(shù)量的奇偶性的函數(shù),將數(shù)字指紋的比特嵌入到視頻比特流的塊中。
34.一種具有嵌入在已壓縮視頻比特流中的水印的數(shù)字視頻盤,其特征在于,所述水印包括表示為多個比特的唯一識別碼;以及與唯一識別碼的多個比特相對應的多個已編碼塊,其中已壓縮視頻比特流的每一個相應已編碼塊具有等于唯一識別碼的相應比特值的、塊中已編碼系數(shù)的數(shù)量的奇偶性。
35.一種具有嵌入在已壓縮視頻比特流中的水印的數(shù)字視頻信號,其特征在于,所述水印包括表示為多個比特的唯一識別碼;以及與唯一識別碼的多個比特相對應的多個已編碼塊,其中已壓縮視頻比特流的每一個相應已編碼塊具有等于唯一識別碼的相應比特值的、塊中已編碼系數(shù)的數(shù)量的奇偶性。
36.一種將數(shù)字指紋嵌入到已壓縮視頻比特流中的視頻編碼器,所述編碼器包括用于將唯一識別碼表示為比特序列的裝置;以及通過將塊中的已編碼系數(shù)的數(shù)量的奇偶性與唯一識別碼的比特值相匹配、將唯一識別碼的每一個比特嵌入到已壓縮視頻比特流的相應已編碼塊中的裝置。
全文摘要
公開了一種為視頻內容加水印的視頻編碼器(600)、解碼器(700)和方法(200,300,400,500)。所述編碼器包括量化單元(630),用于量化視頻比特流的系數(shù);以及與量化單元信號通信的嵌入單元(635),用于作為塊中已編碼系數(shù)的數(shù)量的奇偶性的函數(shù),將數(shù)字指紋的比特嵌入到視頻比特流的塊中;并且解碼器包括檢測單元(715),用于作為塊中的已編碼系數(shù)的數(shù)量的奇偶性的函數(shù),檢測視頻比特流的塊中的數(shù)字指紋的比特;以及與檢測單元(715)信號通信的反相量化單元(720),用于對視頻比特流的系數(shù)進行反相量化。
文檔編號G10L19/00GK1806442SQ200480016568
公開日2006年7月19日 申請日期2004年6月23日 優(yōu)先權日2003年6月25日
發(fā)明者吉爾·麥克唐納·布瓦斯, 丹尼爾·里查德·格瑞里尼, 尹鵬 申請人:湯姆森許可貿易公司