專利名稱:圖像處理方法、圖像處理裝置、程序和記錄介質(zhì)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明一般涉及用于通過編碼在數(shù)字內(nèi)容中嵌入數(shù)字水印和在對嵌入到數(shù)字內(nèi)容中的數(shù)字水印的解碼過程中檢測版權(quán)信息和/或偽造信息的圖像處理方法、圖像處理裝置、程序、和記錄介質(zhì)。
背景技術(shù):
本發(fā)明處理數(shù)字內(nèi)容,例如靜止圖像、運(yùn)動圖像、計(jì)算機(jī)程序和計(jì)算機(jī)數(shù)據(jù)的信息等。特別地,本發(fā)明提供了在以難于用灰度等級表達(dá)的數(shù)據(jù)格式來保存數(shù)據(jù)的情況下,對數(shù)字水印嵌入處理的有效技術(shù)。這樣的數(shù)據(jù)的例子包括諸如人工圖像這樣的二進(jìn)制圖像和彩色圖像,其僅僅允許使用特定顏色(例如,256色表示;也被稱為限制色彩或索引顏色)。
數(shù)字信息能夠很容易通過例如計(jì)算機(jī)來復(fù)制而不會降低質(zhì)量。相反地,數(shù)字信息可以很容易地被重寫和/或偽造。因此,在簡單處理和/或操作下,數(shù)字信息很可能在沒有允許的情況下被非法復(fù)制和再使用,或被部分改變,如此導(dǎo)致數(shù)字信息不能被作為攝影證據(jù)使用。
用于防止這樣的問題的方法包括被稱為數(shù)字水印或數(shù)據(jù)隱藏的方法。當(dāng)例如數(shù)據(jù)圖像這樣的數(shù)字內(nèi)容被正常重現(xiàn)時,數(shù)字水印是一種加入不可見信息的方法。
用于嵌入數(shù)字水印的方法大致可以分為以下兩種類型。
(1)用于直接嵌入進(jìn)內(nèi)容數(shù)據(jù)的采樣值的方法(2)用于嵌入進(jìn)頻率成分的方法在方法(1)中,當(dāng)執(zhí)行諸如壓縮這樣的處理時,很可能丟失嵌入的數(shù)據(jù),但是處理的負(fù)荷是輕的。另一方面,在方法(2)中,在諸如壓縮這樣的處理中,嵌入的數(shù)據(jù)不容易丟失,但是嵌入和提取處理的負(fù)荷是重的。
在以難于用灰度等級表達(dá)的數(shù)據(jù)格式來保存數(shù)據(jù)的情況下,如僅僅允許使用特定顏色的二進(jìn)制圖像和彩色圖像的情況下,將方法(2)應(yīng)用于數(shù)字水印是困難的。因而,方法(1)通常被用于這種情況下的數(shù)字水印。如下面所描述,用方法(1)來實(shí)現(xiàn)本發(fā)明。
向數(shù)字內(nèi)容中加入數(shù)字水印的預(yù)期目的包括,例如版權(quán)信息的記錄;非法復(fù)制者信息的跟蹤;IP地址歷史的記錄;非法復(fù)制(不可見/高容忍類型)的預(yù)防;偽造預(yù)防(不可見/低容忍類型)的應(yīng)用;鑒別;保密通信;數(shù)字內(nèi)容的備注和/或標(biāo)簽(可見/不可見類型,顯示所有者)的嵌入;水印移除(可見/不可見類型,內(nèi)容發(fā)布)的許可。
已經(jīng)提出一種方法,向相機(jī)提供用于在拍照時嵌入相機(jī)的序列號、拍攝日期和時間以及同時創(chuàng)建電子簽名的機(jī)制(參考“關(guān)于數(shù)字水印技術(shù)的研究報(bào)告(Research Report on Digital Watermark Techniques)”,日本電子工業(yè)發(fā)展協(xié)會,1993年3月以及“電子信息的合法復(fù)印的保護(hù)(Prevention of Illegal copy ofElectronic Information)”,“Nikkei Business”,第68-70頁,1998年2月23日)。因此,除了對拍攝證據(jù)的偽造的檢測之外,可以指定用于拍照的相機(jī)并確認(rèn)拍攝照片時的日期和時間。僅僅通過電子簽名技術(shù)就可以檢測偽造。然而,隨著水印技術(shù)的使用,可指定用于拍照的相機(jī)以及拍攝照片時的日期和時間,這對于防止偽造更有效。另外,通過增加嵌入的數(shù)字水印的信息量,可以提高了在指定偽造位置中的精確性。進(jìn)一步地,在版權(quán)保護(hù)期間,嵌入更多的水印信息,當(dāng)分析嵌入的信息時,信息的提取變得更容易,這些體現(xiàn)在效果上。
然而,數(shù)字水印的嵌入會降低嵌入數(shù)字水印的數(shù)字內(nèi)容數(shù)據(jù)的質(zhì)量。因此,盡可能減少圖像質(zhì)量的下降是很重要的,即使嵌入數(shù)據(jù)的數(shù)據(jù)量增加。
同時,在利用“人眼檢測圖像邊緣部分的噪聲小于圖像平坦部分的噪聲”的特征來在圖像中直接嵌入數(shù)字水印的情況下,數(shù)字水印通常被嵌入在圖像的邊緣部分。但是,通常在圖像區(qū)域中,邊緣部分的區(qū)域比平坦部分的少。因此,當(dāng)要嵌入的數(shù)字水印的信息量大時,圖像質(zhì)量明顯降低。尤其當(dāng)圖像質(zhì)量降級時,如人工創(chuàng)建的圖像(例如,分類帳帳頁、圖形、或地圖)輪廓被過分地影響、或圖像的框架被分割或刪除,那么原始圖像的信息和/或意思可能會丟失。
也就是說,為了提高檢測偽造和/或提取版權(quán)信息中的性能,最好盡可能地增加嵌入水印的信息量,同時盡可能地減少圖像質(zhì)量的下降。然而,嵌入水印的信息量越多,圖像質(zhì)量的下降的級別就越多。換句話說,在嵌入水印的信息量和圖像質(zhì)量的下降之間存在著折衷。
發(fā)明內(nèi)容
本發(fā)明的主要目的是提供改進(jìn)的和有用的圖像處理方法、圖像處理裝置、程序、以及記錄介質(zhì),其中上述的一個或多個問題被消除。
本發(fā)明的其它和更詳細(xì)的目的是提供圖像處理方法、圖像處理裝置、程序、以及記錄介質(zhì),其根據(jù)數(shù)字圖像拓?fù)浔Wo(hù)法則嵌入數(shù)字水印,同時減少圖像質(zhì)量下降。
本發(fā)明的主要特征在于實(shí)現(xiàn)一種保持?jǐn)?shù)字圖像拓?fù)浜惋@著邊緣形狀的碼生成方法(拓?fù)浔Wo(hù)法則)。
為了達(dá)到上述目的,根據(jù)本發(fā)明的一個方面,提供了一種圖像處理方法,其包括步驟將數(shù)字內(nèi)容分割成游程長度(run length),其中每個游程長度包括一個或多個具有相同色彩的連續(xù)像素;和在游程長度中嵌入數(shù)字水印信息,同時保存拓?fù)?topology)(第一拓?fù)浔Wo(hù)法則)。
另外,根據(jù)本發(fā)明的另一方面,提供了一種圖像處理裝置,包括將數(shù)字內(nèi)容分割成游程長度的分割部分,其中每個游程長度包括一個或多個具有相同色彩的連續(xù)像素;和在游程長度中嵌入數(shù)字水印信息且同時保存拓?fù)?第一拓?fù)浔Wo(hù)法則)的數(shù)字水印嵌入部分。
另外,根據(jù)本發(fā)明的另一方面,提供了一種能使計(jì)算機(jī)實(shí)現(xiàn)下列步驟的程序?qū)?shù)字內(nèi)容分割成游程長度,其中每個游程長度包括一個或多個具有相同色彩的連續(xù)像素;和在游程長度中嵌入數(shù)字水印信息,同時保存拓?fù)?第一拓?fù)浔Wo(hù)法則)。
另外,根據(jù)本發(fā)明的另一方面,提供了一種記錄有程序的計(jì)算機(jī)可讀記錄介質(zhì),該程序用于使得計(jì)算機(jī)實(shí)現(xiàn)步驟將數(shù)字內(nèi)容分割成游程長度,其中每個游程長度包括一個或多個具有相同色彩的連續(xù)像素;和在游程長度中嵌入數(shù)字水印信息,同時保存拓?fù)?第一拓?fù)浔Wo(hù)法則)。
根據(jù)本發(fā)明的一個實(shí)施例,可以在減少圖像質(zhì)量下降的同時,在包括相同色彩的連續(xù)像素和有關(guān)圖像中的所有像素色彩的部分中嵌入數(shù)字水印。
當(dāng)結(jié)合下面的附圖閱讀時,從下面的詳細(xì)描述中,本發(fā)明的其他目的、特征和優(yōu)點(diǎn)將變得更加明顯。
圖1是示出根據(jù)本發(fā)明實(shí)施例的系統(tǒng)結(jié)構(gòu)的示意圖;圖2A和2B示出用于說明嵌入數(shù)字水印信息的處理的流程圖;圖3A和3B示出用于說明提取數(shù)字水印信息的處理的流程圖;圖4A、4B和4C是用于說明根據(jù)第一實(shí)施例的數(shù)字水印的嵌入的圖;圖5是用于說明根據(jù)第二實(shí)施例的數(shù)字水印的嵌入的圖;圖6是用于說明根據(jù)第三實(shí)施例的數(shù)字水印的嵌入的圖;圖7是用于說明根據(jù)第四實(shí)施例的數(shù)字水印的嵌入的圖;圖8是用于說明根據(jù)第五實(shí)施例的數(shù)字水印的嵌入的圖;圖9是用于說明根據(jù)第六實(shí)施例的數(shù)字水印的嵌入的圖;圖10是用于說明根據(jù)第七實(shí)施例的數(shù)字水印的嵌入的圖;及圖11是用于說明根據(jù)第八實(shí)施例的數(shù)字水印的嵌入的圖。
具體實(shí)施例方式
給出對用于表達(dá)根據(jù)本發(fā)明的數(shù)字水印的信息值的方法的描述。數(shù)字水印的信息值由游程長度表示。例如,在數(shù)字水印信息由水平游程長度的奇偶來表示的情況下(例如,當(dāng)游程長度是偶數(shù)值時,數(shù)字水印1比特信息是OFF,以及當(dāng)游程長度是奇數(shù)值時,數(shù)字水印1比特信息是ON),嵌入數(shù)字水印可以使游程長度的大小從原始游程長度的+1改變到-1像素。下面的方法A到C描述了用于確定改變值的方法。
A.用于改變原始游程長度-1像素的方法該方法應(yīng)用于“要被嵌入的1比特信息值與原始游程長度的奇偶不匹配”的情況,以便兩者匹配。然而,當(dāng)原始游程長度值是1時,不能應(yīng)用方法A,而是應(yīng)用下面的方法C。
B.用于改變原始游程長度±0(沒有改變)的方法該方法應(yīng)用于“要被嵌入的1比特信息值匹配原始游程長度的奇偶,因此不需要改變原始游程長度”的情況。
C.用于改變原始游程長度+1的方法該方法應(yīng)用于“要被嵌入的1比特信息值與原始游程長度的奇偶不匹配”的情況,以便兩者匹配。然而,當(dāng)相鄰兩邊(左和右邊)的游程長度值都是1時,不能應(yīng)用該方法。在這種情況下,應(yīng)用上述的方法A。
方法A或方法C可以應(yīng)用于除了上述方法A和C所描述以外的其他情況。然而,為了盡可能地避免圖像形狀的(質(zhì)量的)下降,根據(jù)下面的確定方法(A)和(B)來適當(dāng)?shù)厥褂梅椒ˋ和C。
應(yīng)當(dāng)注意,下面的確定方法是基于特性“即使特定游程(下文稱為“相關(guān)游程”)的游程長度值被改變,從減少圖像質(zhì)量下降的需求來說,已改變游程長度的鄰近游程長度(相關(guān)游程的左邊或右邊)也需要被改變(通過使相關(guān)游程改變值的符號相反的增加或減少來改變)”。
(A)上述方法A應(yīng)用于原始游程長度值比兩個鄰近游程長度值都大的情況(當(dāng)原始游程長度值在三個值,即原始游程長度值和兩個鄰近游程長度值中最大時)。另外,要被改變的像素位于邊界部分,該邊界部分具有鄰近游程長度值中較大的游程長度值(在邊界部分上的一個像素被改變?yōu)猷徑纬痰南袼刂?。
這個描述為,當(dāng)(Ll<Lt)和(Lr<Lt)時,從Lt中減去1,以及在Ll或Lr上加上1,其中,在原始圖像的游程長度列表中-Ll...到目標(biāo)游程的左邊的游程長度(“l(fā)”表示“左”);-Lt...目標(biāo)游程的游程長度(“t”表示“目標(biāo)”);以及-Lr...到目標(biāo)游程的右邊的游程長度(“r”表示“右”)。
數(shù)字水印由Lt的奇偶來表示。Ll或Lr用于調(diào)節(jié),分別使(Ll+Lt)=常數(shù),或(Lt+Lr)=常數(shù)。
(B)方法C應(yīng)用于除了在(A)中所描述以外的其他情況(當(dāng)原始游程長度值不是三個值中最大的時,即,原始游程值和兩個鄰近游程長度值)。另外,要被改變的像素位于邊界部分,該邊界部分具有鄰近游程長度值中的較大的游程長度值(鄰近游程邊界部分上的一個像素被改變?yōu)橄嚓P(guān)游程的像素值)。
這個描述為,當(dāng)(Lt<Ll)或(Lt<Lr)時,在Lt上加上1,以及從Ll或Lr中減去1。
應(yīng)當(dāng)注意,可變數(shù)字水印信息不能在下面兩種情況下被嵌入,即使是1比特,這是用于在一系列像素中嵌入數(shù)字水印的極端情況。
(1)所有游程長度值是1的情況(很多自然圖像(照片)符合這種情況)(2)所有像素具有相同的色彩的情況(僅有單一組游程長度值)根據(jù)本發(fā)明的用于保護(hù)數(shù)字圖像的拓?fù)涞姆椒▽D像分割成塊,以及針對每個塊實(shí)現(xiàn)唯一的拓?fù)浔Wo(hù)功能。
拓?fù)浔Wo(hù)的基本思想(不變的規(guī)則)是“相同色彩的像素區(qū)域(游程長度),是由具有相同色彩的連續(xù)像素構(gòu)成,它禁止游程長度被分割以致在其中插入具有其他色彩的一個或更多像素,禁止要被嵌入其中的嵌套區(qū)域的新形成,以及禁止游程長度的刪除”。
將圖像分割成塊的優(yōu)點(diǎn)如下通過分割一個位置以嵌入信息來使以塊為單位的管理變得簡單;以及在允許平行處理的環(huán)境中,對每個塊,水印嵌入處理和水印提取處理能被平行地執(zhí)行,這加速了處理。
用于將圖像分割成塊的方法如下。
(1)在(1×n)像素中的線性(一維空間)塊這個塊是具有相同色彩的一系列像素以及被組織成稱為游程長度的數(shù)據(jù)。具有水平長的游程長度和垂直長的游程長度。然而,在下文中,給出的描述是基于游程長度是水平長和線性游程長度的假設(shè)。在這種情況下,游程長度在水平(右和左)方向上被改變,以及水印值由值的奇偶來表示。進(jìn)一步地,“n”是2的冪次數(shù)。同樣地應(yīng)用于下面的描述中。
在塊與左或右鄰近塊之間的塊邊界部分上執(zhí)行拓?fù)浔Wo(hù)的情況下,當(dāng)邊界部分具有與鄰近塊邊界相同的色彩時,塊邊界中的游程長度可以被設(shè)置為0。然而,在鄰近邊界部分內(nèi)并具有相同色彩(對于穿過塊邊界的拓?fù)浔Wo(hù))的游程長度不可能同時被設(shè)置為0。
(2)(n×n)矩形塊在這種情況下,可以采用上述游程長度的保護(hù),或拓?fù)淇梢栽趦删S區(qū)域內(nèi)被保護(hù)而不用考慮游程長度的保護(hù)。
(3)由具有相同色彩的像素所環(huán)繞的同樣色彩的獨(dú)立區(qū)域因?yàn)榭舍槍τ上嗤瘦喞h(huán)繞的每個區(qū)域執(zhí)行管理,所以拓?fù)浔Wo(hù)可以有效地減少圖像質(zhì)量的下降。然而,當(dāng)邊界部分的形狀模糊時,處理變得復(fù)雜,而且很難執(zhí)行高速處理。
如下所述在塊邊界中處理拓?fù)浔Wo(hù)功能。
(1)通過限制每個塊內(nèi)的像素來保護(hù)拓?fù)涞姆椒ㄔ谶@個方法中,獨(dú)立執(zhí)行對每個塊的處理。因此,能夠平行地執(zhí)行以塊為單位的處理。然而,塊邊界部分的圖像質(zhì)量稍微降低。
(2)考慮到從塊邊界部分到塊邊界部分外的像素值的連續(xù)性而進(jìn)行的保護(hù)拓?fù)涞姆椒ㄔ谶@個方法中,對每個塊的獨(dú)立處理被部分地調(diào)整。因此,不可能平行執(zhí)行以塊為單位的處理。然而,對于減少塊邊界部分中的圖像質(zhì)量的下降來說,這個方法是有效的。
(3)用于保護(hù)數(shù)字圖像中的有效邊緣形狀的方法在例如分類帳帳頁(ledger sheet)、圖表、和地圖這樣的人工圖像中,許多水平線、垂直線和斜線被用作在圖像中非常重要的線。另外,CCD或顯示裝置的像素,相當(dāng)于拍攝裝置的像素,其被排列在水平方向或垂直方向。因此,基于該特性是重要的判斷,通過改變像素值來嵌入數(shù)字水印,以便具有相同色彩的一系列連續(xù)像素沒有破壞到水平線、垂直線、或斜線(當(dāng)圖像被擴(kuò)展時,具有階梯形狀)的特性。
結(jié)合附圖,給出了本發(fā)明實(shí)施例的詳細(xì)描述。
圖1顯示了根據(jù)本發(fā)明一個實(shí)施例的系統(tǒng)結(jié)構(gòu)。特別是,圖1顯示了編碼/解碼裝置的示例性結(jié)構(gòu),該裝置對數(shù)字圖像執(zhí)行編碼(數(shù)字水印的嵌入)/解碼(讀取數(shù)字水印以及檢測偽造)方法。
編碼/解碼裝置包括控制部分(CPU)1、操作輸入部分(鍵盤、鼠標(biāo))2、外部存儲單元3、存儲器4、圖像拍攝部分5、顯示部分6、用于從外部輸入任意數(shù)據(jù)的數(shù)據(jù)輸入部分7、用于嵌入數(shù)字水印的源數(shù)據(jù)產(chǎn)生部分8、拓?fù)浔Wo(hù)處理部分9、數(shù)字水印嵌入部分10、圖像再生部分11、數(shù)字水印讀取部分12、用于顯示檢測到的偽造的偽造(顛倒)顯示部分13以及總線14。應(yīng)當(dāng)注意,省略了上述每個部分(或裝置)與總線14之間所需的接口的說明。
控制部分1是一個微型計(jì)算機(jī)(下文中簡稱為“CPU”,盡管它可以由例如CPU、ROM和RAM組成),其控制裝置的操作和功能。圖像拍攝部分5、數(shù)據(jù)輸入部分7、源數(shù)據(jù)產(chǎn)生部分8、拓?fù)浔Wo(hù)處理部分9、以及數(shù)字水印嵌入部分10、圖像再生部分11、數(shù)字水印讀取部分12和偽造顯示部分13中的每個的功能可以由CPU處理的軟件來實(shí)現(xiàn)。通過圖像拍攝部分5、數(shù)據(jù)輸入部分7、源數(shù)據(jù)產(chǎn)生部分8、拓?fù)浔Wo(hù)處理部分9以及數(shù)字水印嵌入部分10來執(zhí)行圖像拍攝處理。通過圖像再生部分11、數(shù)字水印讀取部分12以及偽造顯示部分13來執(zhí)行圖像再生處理。
操作輸入部分2用于輸入各種操作指令、功能選擇指令、編輯數(shù)據(jù)等等。操作輸入部分2可以是,例如鍵盤、鼠標(biāo)或觸摸板。特別是,當(dāng)對嵌入數(shù)字水印的圖像數(shù)據(jù)加密時或當(dāng)讀取加密的數(shù)字水印時,操作輸入部分2被用于輸入密鑰。
操作輸入部分2也包括作為顯示選擇裝置的功能,以及能將顯示部分6的顯示狀態(tài)改變?yōu)橄胍娘@示狀態(tài)。例如,采用鍵操作,數(shù)字水印讀取結(jié)果可以迭加在輸入圖像數(shù)據(jù)上被顯示出來,或者僅僅選擇和顯示它們中的一個。
外部存儲單元3是存儲介質(zhì),其能夠從裝置中彈出以及存儲例如由圖像拍攝部分5拍攝的圖像數(shù)據(jù)、通過數(shù)字水印嵌入部分10嵌入水印的壓縮數(shù)據(jù)以及由數(shù)字水印讀取部分12檢測到的偽造部分的數(shù)據(jù)。外部存儲單元3可以是例如軟盤(FD)、磁光盤(MOD)。另外,外部存儲單元3也起到記錄控制部分1所執(zhí)行的程序軟件的作用。
存儲器4是存儲例如由圖像拍攝部分5讀取的圖像數(shù)據(jù)和由圖像再生部分11通過讀取和解壓縮來產(chǎn)生的圖像數(shù)據(jù)、嵌入數(shù)字水印的保存數(shù)據(jù)的存儲器。存儲器4可以是例如大容量RAM或硬盤。
圖像拍攝部分5是圖像數(shù)據(jù)輸入裝置,用于掃描例如照片或被設(shè)置的分類帳帳頁,從中讀取圖像以及輸入圖像數(shù)據(jù)。因此圖像拍攝部分5可以是例如已知的圖像掃描儀或數(shù)碼相機(jī),其包括例如掃描光學(xué)系統(tǒng)和CCD的圖像傳感器及其驅(qū)動電路。
數(shù)據(jù)輸入部分7是用于輸入源信息和用于偽造檢測和版權(quán)保護(hù)的嵌入信息的裝置,該源信息用于嵌入作為數(shù)字水印的數(shù)字內(nèi)容的輔助信息。輸入的數(shù)據(jù)存儲在存儲器4中,并被發(fā)送給源數(shù)據(jù)產(chǎn)生部分8。
源數(shù)據(jù)產(chǎn)生部分8加密或編碼由數(shù)據(jù)輸入部分7輸入的數(shù)據(jù)。在處理之后,數(shù)據(jù)被存儲在存儲器4中,并被發(fā)送給數(shù)字水印嵌入部分10。
數(shù)字水印嵌入部分10執(zhí)行作為數(shù)字水印的數(shù)據(jù)的嵌入處理,其中該數(shù)據(jù)由數(shù)據(jù)輸入部分7輸入、由源數(shù)據(jù)產(chǎn)生部分8編碼(加密)、并在存儲器4中存儲。
另外,當(dāng)嵌入數(shù)字水印的時候,數(shù)字水印嵌入部分10將原始數(shù)據(jù)分割成多個塊。根據(jù)用于處理作為單一游程(游程長度)的一系列(在水平方向或垂直方向上)連續(xù)的相同色彩的像素的方法,數(shù)字水印嵌入部分10也執(zhí)行將整個圖像轉(zhuǎn)換成游程列表的處理。如下描述,圖2A和2B顯示了用于說明在圖像拍攝期間嵌入數(shù)字水印處理的流程圖。
拓?fù)浔Wo(hù)處理部分9是用于在數(shù)字水印嵌入部分10中控制將源數(shù)據(jù)產(chǎn)生部分8產(chǎn)生的數(shù)據(jù)嵌入到數(shù)字內(nèi)容中的位置的裝置,以便盡可能地減少圖像質(zhì)量的下降。
例如,由于可用色彩數(shù)目的限制,在中性色彩(模糊色彩,例如灰度)不能被表達(dá)的條件下嵌入數(shù)字水印的情況中,根據(jù)能夠保護(hù)所選擇的拓?fù)涞那度敕椒?,可以僅僅在適合減少圖像質(zhì)量下降的部分嵌入數(shù)字水印。這種情況下的例子包括例如文檔、圖畫、插圖(漫畫)和地圖的人工圖像。參考圖4到10給出在拓?fù)浔Wo(hù)處理部分9中的處理的詳細(xì)描述。
圖像再生部分11執(zhí)行用于讀取數(shù)據(jù)的控制,該數(shù)據(jù)包括由數(shù)字水印嵌入部分10嵌入并保存在例如外部存儲單元3中的數(shù)字水印。所讀取的圖像被存儲在存儲器4中。
數(shù)字水印讀取部分12從圖像數(shù)據(jù)中讀取數(shù)字水印,該圖像數(shù)據(jù)通過圖像再生部分11從存儲器4中再現(xiàn)并在其中嵌入數(shù)字水印。依賴于數(shù)字水印是否能被讀取,數(shù)字水印讀取部分12確定圖像是否是偽造和/或版權(quán)保護(hù)信息是否有效。
另外,在數(shù)字水印讀取處理之前,數(shù)字水印讀取部分12將嵌入數(shù)字水印的圖像分割成多個塊。根據(jù)用于處理作為單一游程(游程長度)的一系列(在水平方向或垂直方向上)連續(xù)的相同色彩的像素的方法,數(shù)字水印讀取部分12也執(zhí)行將整個圖像轉(zhuǎn)換成游程列表的處理。如下所述,圖3A和3B顯示了用于說明當(dāng)再現(xiàn)圖像時提取數(shù)字水印信息處理的流程圖。
當(dāng)確定通過數(shù)字水印讀取部分12讀取的結(jié)果是偽造的時候,偽造顯示部分13通過反轉(zhuǎn)顯示和/或用黑色填充區(qū)域來顯示對應(yīng)的區(qū)域。
圖4A、4B和4C是用于說明根據(jù)本發(fā)明第一實(shí)施例所述的數(shù)字水印嵌入的框圖。參考圖4A、4B和4C,給出了在同一行上嵌入數(shù)字水印的情況下拓?fù)浔Wo(hù)規(guī)則的描述。
在圖4A中,(a)代表原始圖像,(b)代表嵌入數(shù)字水印的圖像,及圖底部所示的圈(○)表示是否滿足拓?fù)浔Wo(hù)法則(○表示“是”)。圖4A-(a)表示由例如8比特量化的一行的圖像數(shù)據(jù)的游程長度的一部分。換句話說,在圖4A-(a)中所示的游程長度包括四種色彩的游程長度,即游程長度a(例如具有5個像素的長度且每個像素值是100),游程長度b(例如具有1個像素的長度且像素值是0),游程長度c(例如具有5個像素的長度且每個像素值是255),以及游程長度d(2個像素的長度且每個像素值是50)。應(yīng)當(dāng)注意,游程長度信息保存在圖中未示出的塊中。
圖4顯示了在沒有刪除游程長度(對應(yīng)于標(biāo)記游程長度0)或最新加入游程長度(最新創(chuàng)建具有等于或大于1的值的游程長度信息)的情形下嵌入數(shù)字水印,以便在同一行內(nèi)的拓?fù)洳槐桓淖兊那闆r。
假設(shè)比特0賦值給具有偶數(shù)長度的游程長度,以及比特1賦值給具有奇數(shù)長度的游程長度。
然后,在圖4A所示的情況下,因?yàn)楸磺度氲臄?shù)字水印信息是“0001”,和原始圖像(圖4-(a))的游程長度的隊(duì)列是“5奇數(shù)”→“1奇數(shù)”→“5奇數(shù)”→“2偶數(shù)”,所以通過嵌入數(shù)字水印信息改變了目標(biāo)游程的四個連續(xù)游程長度。
換句話說,在圖4A-(b)中,具有五個像素長度的游程長度a減少一個像素的長度而成為具有四個像素長度的游程長度a′。具有一個像素長度的游程長度b增加了一個像素長度而變成具有兩個像素長度的游程長度b′。具有五個像素長度的游程長度c增加了一個像素長度而變成了具有六個像素長度的游程長度c′。具有兩個像素長度的游程長度d減少了一個像素長度而變成了具有一個像素長度的游程長度d′。以上述方式,從原始圖像(a)中產(chǎn)生保護(hù)拓?fù)涞膱D像(b)。圖像(b)的游程長度是a′=4;b′=2;c′=6;以及d′=1。當(dāng)比特0賦值給具有偶數(shù)長度的游程長度,而比特1賦值給具有奇數(shù)長度的游程長度時,產(chǎn)生嵌入數(shù)字水印信息“0001”的圖像(b)。注意,增加或減少的像素?cái)?shù)目應(yīng)等于一個像素,以便減少圖像質(zhì)量的下降。
圖4B顯示了拓?fù)錄]有被保護(hù)的情況。在圖4B中,(a)表示原始圖像,(b)表示嵌入了數(shù)字水印的圖像,以及圖底部所示的圈(○)和叉(×)表示是否滿足拓?fù)浔Wo(hù)法則(○表示“是”和×表示“否”)。圖4B顯示在相同行中的相同色彩的游程長度的超出或不足。在圖4B中的原始圖像的游程長度與圖4A中的原始圖像(a)相同(也就是說,兩者的原始圖像(a)具有規(guī)則從左到右“奇數(shù)”→“奇數(shù)”→“奇數(shù)”→“偶數(shù)”)。在圖4B中,(b)表示圖像,在該圖像中通過增加游程長度a一個像素和減少游程長度c一個像素來嵌入數(shù)字水印。因?yàn)橛纬涕L度b被刪除且游程長度e′是新創(chuàng)建的,所以拓?fù)錄]有被保護(hù),而嵌入數(shù)字水印的圖像(b)被確定為無效。
在這里,“同一行上的相同色彩的游程長度中的超出和不足的情況”如下所述。對在圖4B中的原始圖像(a)的游程和圖像(b)的游程之間的對應(yīng)關(guān)系來說,存在不一致(在圖4B中由叉(×)表示的部分)。另外,參考圖4C,對原始圖像(a)的游程和嵌入數(shù)字水印的圖像(b)的游程之間對應(yīng)的關(guān)系來說,也存在不一致。因此,圖4C顯示了“在同一行上的相同色彩的游程長度的超出和不足的情況”的另外一個例子。
另一方面,在圖4A中的原始圖像(a)的游程與圖像(b)的游程間的對應(yīng)關(guān)系之間是匹配的。也就是說,在圖4A中由圈(○)所示那樣,在圖像(a)和(b)之間由游程所表示色彩的隊(duì)列是相同的。同樣,在圖像(a)和(b)之間的游程數(shù)目沒有改變,在圖像(a)和(b)之間僅僅改變了每個游程的長度。
給出關(guān)于如何確定某個情況是否對應(yīng)于“在同一行上的相同色彩的游程長度中存在超出和不足的情況”的描述。
一旦產(chǎn)生嵌入數(shù)字水印的圖像,在很多情況下原始圖像被丟棄(刪除)。因此,僅僅在嵌入數(shù)字水印時可以肯定地確定在相同色彩的游程長度中是否超出或不足。在這種情況下,通常嵌入數(shù)字水印的圖像被用作新的原始圖像。確切地說,新的原始圖像和原始圖像是不同的,但是新的原始圖像包括作為隱藏信息的附加信息,同時保持原始圖像的原始功能。
在嵌入數(shù)字水印中的處理方法對應(yīng)于圖2A中的步驟9。處理方法可以例如如下面所述來實(shí)現(xiàn)。
處理方法從最左向右逐一處理像素,同時分析原始圖像。
i)用于確定游程末端的方法(1)如果要嵌入數(shù)字水印的目標(biāo)像素的像素值與同一行中的左側(cè)相鄰像素的像素值相同,那么確定為目標(biāo)像素和左側(cè)相鄰像素是在游程中間。
(2)如果目標(biāo)像素的像素值與同一行中的左側(cè)相鄰像素的像素值不同,那么確定為游程的末端(中斷)存在于目標(biāo)像素和左側(cè)相鄰像素之間。
ii)調(diào)整游程長度的方法移動上述i)-(2)項(xiàng)所描述游程末端的位置。例如,將目標(biāo)游程的右側(cè)末端向左移動一個像素對應(yīng)于從游程a到游程a′的變化,這些分別由圖4A中(a)和(b)所表示。構(gòu)成游程a的最右側(cè)像素被改變?yōu)闃?gòu)成右側(cè)相鄰游程b的像素。
在這種情況下,當(dāng)一個末端被移動時(例如,向左或右移動一個像素),末端兩側(cè)上的游程長度被同時改變(在圖4A中,a→a′和b→b′)。
上述處理方法的進(jìn)一步的詳細(xì)描述在后面給出。
圖4C也顯示了拓?fù)錄]有被保護(hù)的情況。更確切地說,圖4C顯示了在同一行的相同色彩的游程長度中插入或刪除新的游程長度的情況。在圖4C中,(a)表示原始圖像,(b)表示嵌入數(shù)字水印的圖像,以及圈(○)和叉(×)表示是否滿足拓?fù)浔Wo(hù)法則(○表示“是”和×表示“否”)。
參考圖4C中的圖像(b),通過嵌入數(shù)字水印,新創(chuàng)建(插入)游程長度f以及刪除游程長度g。從而,拓?fù)錄]有被保護(hù)。因此,在圖4C的圖像(b)中的數(shù)字水印被確定為無效。
圖5是用于說明根據(jù)第二實(shí)施例的數(shù)字水印的嵌入的框圖。參考圖5,給出了關(guān)于在塊邊界部分保護(hù)拓?fù)涞臄?shù)字水印嵌入方法的描述。
在塊邊界部分存在于原始圖像的行1(在圖5中由(a)所表示)的游程長度C和C′(每個具有一個像素長度)之間的情況中,因?yàn)橛纬涕L度C和C′具有相同色彩,即使游程長度C和C′中的一個被刪除,拓?fù)湟材鼙槐Wo(hù)并能有效執(zhí)行數(shù)字水印嵌入處理??梢酝ㄟ^擴(kuò)展游程長素B一個像素以便刪除游程長度C或通過擴(kuò)展游程長度D一個像素以便刪除游程長度C′,來刪除游程長度C和C′中的一個。此外,通過不假設(shè)游程長度C和C′具有相同色彩,即使它們是相同的(沒有構(gòu)成連續(xù)性有效),在沒有執(zhí)行上述游程長度C或C′的刪除的情況下,可以執(zhí)行允許游程長度C或C′擴(kuò)展一個像素的處理。
在塊邊界部分存在于原始圖像的行2(在圖5中由(b)表示)的游程長度c和d(每個具有一個像素長度)之間的情況下,因?yàn)橛纬涕L度c和d沒有相同色彩,所以游程長度c和d都不可以刪除。游程長度c可以向游程長度d擴(kuò)展一個像素,以及游程長度d可以向游程長度e擴(kuò)展一個像素。
圖6是用于說明根據(jù)第三實(shí)施例的數(shù)字水印嵌入的方框圖。參考圖6,給出了關(guān)于在彼此堆疊的相鄰行之間保護(hù)拓?fù)涞臄?shù)字水印嵌入方法的描述。在圖6中,(a)表示兩行的原始圖像,即,行1和行2,以及(b)表示數(shù)字水印有效的情況。雖然行1的游程長度C被擴(kuò)展了一個像素,但維持(拓?fù)浔槐Wo(hù))行1的游程長度C和行2的游程長度d之間的連續(xù)性。應(yīng)當(dāng)注意,在圖6中,為了說明簡便,沒有改變游程長度A、B、a、b、c和e的長度。
另一方面,(c)表示行2的游程長度c和行1的游程長度D被擴(kuò)展一個像素的情況。在這種情況下,游程長度C和d不是連續(xù)的,這與原始圖像(a)不同。因此,拓?fù)錄]有被保護(hù),以及處理被確定為是無效的。
圖7是用于說明根據(jù)第四實(shí)施例所述數(shù)字水印嵌入的方框圖。參考圖7,給出了用于在彼此堆疊的相鄰行之間保護(hù)拓?fù)涞耐瑫r嵌入數(shù)字水印的方法的描述。圖7顯示了四個相鄰行的情況。在圖7中,(a)表示原始圖像,(b)表示嵌入數(shù)字水印的圖像,以及圖底部所示圈(○)和叉(×)分別表示有效性和無效性。參考圖像(b),因?yàn)樾?的游程長度B被擴(kuò)展了一個像素,所以游程長度C變得與原始圖像的游程長度不同。在游程長度D中的連續(xù)性被維持(拓?fù)浔槐Wo(hù))。然而,游程長度C的連續(xù)性被行2破壞。因此,拓?fù)錄]有被保護(hù),以及處理被確定為是無效的。
圖8是用于說明根據(jù)第五實(shí)施例的數(shù)字水印嵌入的方框圖。參考圖8,給出了用于在拓?fù)浔槐Wo(hù)的同時在目標(biāo)塊中嵌入一個要被嵌入的像素的方法的描述。在圖8中,(a)表示原始圖像,以及(b)表示嵌入數(shù)字水印的圖像。
在圖8中的原始圖像(a)中,D表示由相同色彩的像素形成的塊,A表示在塊D中并由要嵌入數(shù)字水印的像素所組成的區(qū)域。在圖8中的圖像(b)中,B表示具有與區(qū)域A相同色彩以及當(dāng)嵌入數(shù)字水印時所加入的像素(一個像素),C表示當(dāng)嵌入數(shù)字水印時所刪除的具有與區(qū)域A相同色彩的像素(一個像素),以及刪除的像素由塊D中的像素所替代。
應(yīng)當(dāng)注意,在上述情況中,當(dāng)嵌入像素B時,如果像素B與塊D的輪廓相接觸,那么拓?fù)錄]有被保護(hù),以及處理被確定為無效。但當(dāng)嵌入像素B時,如果像素B與塊D的輪廓相接觸,為了保護(hù)拓?fù)?,塊D的輪廓可以被移動(改變),以便輪廓不能與像素B相接觸。
圖9是用于說明根據(jù)第六實(shí)施例的數(shù)字水印嵌入的方框圖。參考圖9,給出了為了防止圖像質(zhì)量下降而在沒有改變要嵌入數(shù)字水印的區(qū)域的形狀的情況下嵌入水印的方法的描述。在圖9中,(a)表示原始圖像,以及(b)表示嵌入數(shù)字水印的圖像。
在圖9中的原始圖像(a)中,A表示要嵌入數(shù)字水印的塊,以及B表示要嵌入數(shù)字水印的像素區(qū)域。區(qū)域B具有階梯形狀。參考圖9中的圖(b),區(qū)域B中的每個游程長度被擴(kuò)展了一個像素以形成區(qū)域B′,并嵌入象區(qū)域a和b那樣的數(shù)字水印。因此,原始圖像(a)的區(qū)域B的形狀和圖像(b)的區(qū)域B′的形狀相似。因此,圖像質(zhì)量的下降不可能是顯著的。例如,僅僅在區(qū)域a中嵌入數(shù)字水印的情況下,區(qū)域B的形狀(凹狀和凸?fàn)?和區(qū)域B′的形狀是不同的(不相似的),其導(dǎo)致圖像質(zhì)量的下降。
圖10是用于說明根據(jù)第七實(shí)施例的數(shù)字水印嵌入的方框圖。參考圖10,給出了為了防止圖像質(zhì)量下降而在沒有改變要嵌入數(shù)字水印的區(qū)域形狀的情況下嵌入水印的第二種方法的描述。
在圖10中,(a)表示包括行1和行2的游程長度的原始圖像,(b)表示在有效數(shù)字水印嵌入處理之后的圖像,以及(c)表示在無效數(shù)字水印嵌入處理之后的圖像。
參考圖10中的(b),行2的游程長度b被擴(kuò)展一個像素,以及行1的游程長度C被擴(kuò)展一個像素,從而嵌入數(shù)字水印。比較圖像(a)和(b)之間嵌入數(shù)字水印的部分,可以發(fā)現(xiàn)原始圖像(a)的特性(行1和行2之間的等級上的差異(A和a以及B和b))在圖像(b)上被維持。因此處理是有效的。
另一方面,參考圖像(c),存在于原始圖像(a)中的游程長度A和a之間的等級上的差異消失。另外,在原始圖像(a)中不存在的等級上的差異出現(xiàn)在游程長度B和b之間以及游程長度C和c之間。因此原始圖像(a)的特性被丟失,以及處理是無效的。
圖11是顯示根據(jù)本發(fā)明另一實(shí)施例的數(shù)字水印嵌入的方框圖。在圖11中,(a)表示原始圖像,以及(b)表示嵌入數(shù)字水印的圖像。
圖11中的原始圖像(a)的像素排列與圖4A中的原始圖像(a)的像素排列是相同的。因此,游程長度的列表也是相同的(“5奇數(shù)”→“1奇數(shù)”→“5奇數(shù)”→“2偶數(shù)”)。
參考圖11,因?yàn)榍度肓俗鳛閿?shù)字水印的信息“0100”,因此嵌入的數(shù)字水印通過改變第一和第三游程長度來實(shí)現(xiàn),致使游程長度變?yōu)椤?偶數(shù)”→“1奇數(shù)”→“6偶數(shù)”→“2偶數(shù)”,以免刪除或新加入一個游程長度,并不改變同一行中的拓?fù)?。圖4A顯示所有游程長度被改變(從奇數(shù)值到偶數(shù)值,或從偶數(shù)值到奇數(shù)值)的情況,而圖11顯示僅僅游程長度的一部分被改變的情況。
接下來,參考圖2A和2B,給出了當(dāng)拍攝圖像時嵌入數(shù)字水印信息的處理的描述。
在步驟S1中,生成一個鍵輸入以確定選擇功能(由例如鍵盤產(chǎn)生一個輸入),以及為了接下來的處理將輸入保存在存儲器中。
(1)要被嵌入作為數(shù)字水印的信息預(yù)先被密鑰(例如,密碼)加密,由此使其更難讀取嵌入的信息。然而,并不總是需要在加密之后嵌入數(shù)字水印。可以選擇是否加密信息。
(2)用于設(shè)置塊分割方法DevVar的輸入,其用作選擇如下所述處理之一的指令。當(dāng)給出DevVar=0(矩形)的指令時(在步驟S3中的是),要嵌入數(shù)字水印的圖像被分割成矩形塊(步驟S4)。另外,當(dāng)給出DevVar=1(相同色彩的輪廓可以被改變)的指令時(在步驟S3中的否),圖像被分割成由相同色彩的輪廓所環(huán)繞的塊(步驟5)。在這種情況下,在步驟S15之后,處理繼續(xù)進(jìn)行到步驟S16。此外,當(dāng)給出DevVar=2(相同色彩的輪廓不能被改變)的指令時(步驟S3中的否),圖像被分割成由相同色彩的輪廓所環(huán)繞的塊(步驟5)。在這種情況下,在步驟S15之后,不執(zhí)行步驟S16的處理。
(3)用于設(shè)置BdrWM的輸入,其確定是否執(zhí)行依賴于塊邊界部分中的像素間的連續(xù)性的處理,其用作選擇步驟S13后面的處理指令。也就是說,當(dāng)BdrWM=1時(步驟S13中是),數(shù)字水印嵌入處理被執(zhí)行,其依賴于在塊邊界部分中的相同色彩的像素間的連續(xù)性(步驟S14)。同樣,確定是否改變由相同色彩的輪廓所構(gòu)成的塊邊界行。當(dāng)需要時,執(zhí)行改變處理。
(4)用于設(shè)置SynMesh的輸入,其確定嵌入同步方法,用作選擇步驟S8之后的處理指令以及步驟S10之后的處理的指令。
(5)用于設(shè)置HarmWM的輸入,其確定是否執(zhí)行列出游程長度的數(shù)字水印嵌入,用作確定步驟S17之后的處理的指令。
這是是否在下列情況中將水平游程值的改變量(±1或0)設(shè)置為相同值(同步值)是選擇功能即在原始圖像中,在其中具有相同色彩以及其起點(diǎn)或終點(diǎn)具有相同值的水平游程被排列在垂直方向上的部分中嵌入數(shù)字水印。被嵌入到對應(yīng)于要被調(diào)整(同步)一組游程的部分的數(shù)字水印的信息量僅僅是每個部分1比特。用于減少圖像質(zhì)量的下降。
在步驟S2中,拍攝對象被讀取作為多級圖像,其作為要嵌入數(shù)字水印的原始圖像,并存儲在存儲器4中。圖像可以是二進(jìn)制圖像。
在步驟S3中,根據(jù)在步驟S1中設(shè)置的塊分割方法DevVar來確定隨后的處理流程。當(dāng)DevVar=0時(在步驟S3中的是),處理進(jìn)行到步驟S4,把塊分割成矩形塊。另一方面,當(dāng)DevVar≠0時(在步驟S3中的否),處理進(jìn)行到步驟S5,把塊分割成除矩形以外的形狀。
由固定塊大小的塊執(zhí)行把塊分割成矩形塊的步驟S4,其中固定塊的大小不受圖像中像素值的影響。
在步驟S5中,要嵌入數(shù)字水印的圖像被分割成具有相同色彩的輪廓的塊。圖8顯示一個被分割的塊以及在其中嵌入數(shù)字水印的情況。公知的方法可以被用來作為塊分割方法。
在步驟S6中,確定以塊為單元的數(shù)字水印嵌入處理是否已經(jīng)結(jié)束。如果在步驟S4或S5(在步驟S6中的YES)中分割的所有塊上已經(jīng)執(zhí)行了針對每個塊的處理(步驟S8到S19),那么處理進(jìn)行到步驟S7。另一方面,如果在所有塊上的處理沒有執(zhí)行完(在步驟S6中的NO),那么處理進(jìn)行到S8。
步驟S7對應(yīng)于數(shù)字水印嵌入處理完成之后的處理。在步驟S7中,被嵌入數(shù)字水印的圖像被保存為文件。所述圖像被保存在存儲器4中或外部存儲單元3中。
步驟S8是數(shù)字水印嵌入過程的一個處理,該處理將在每個塊上被執(zhí)行。在步驟S8中,基于嵌入同步方法SynMesh,所述方法在步驟S1中被設(shè)置,執(zhí)行關(guān)于在塊內(nèi)嵌入數(shù)字水印方法的第一標(biāo)識。當(dāng)選擇“在每行上獨(dú)立執(zhí)行(SynMesh=0)”作為嵌入同步方法時(在步驟S8中的是),處理進(jìn)行到步驟S9。在另外的情況下(在步驟S8中的否),處理進(jìn)行到步驟S10,其執(zhí)行下一個標(biāo)識處理。
在步驟S9中,基于嵌入同步方法是“在每行上獨(dú)立執(zhí)行(SynMesh=0)”的事實(shí),執(zhí)行數(shù)字水印嵌入處理(參見圖4和11)。另外,通過提出圖10中的限制(在流程圖中其說明被省略),可以減少了圖像質(zhì)量的下降。
給出了嵌入數(shù)字水印過程的處理流程的描述,該處理涉及圖4和11。
對圖像的每行來說,游程長度從左坐標(biāo)到右像素游程順序地被組成數(shù)字水印信息的情況下的處理過程如下。
其中,法則C是為了滿足拓?fù)浔Wo(hù)法則和禁止圖像行寬變化的法則所提出的法則。
A.從最左游程向右方確定游程長度B.當(dāng)嵌入1比特?cái)?shù)字水印信息時,如果在要嵌入數(shù)字水印的目標(biāo)游程中的游程長度由Lt表示,以及右相鄰游程的游程長度由Lr表示,(A)當(dāng)嵌入的1比特信息的值(偶數(shù)值或奇數(shù)值)=Lt的值(偶數(shù)值或奇數(shù)值)時,Lt和Lr未被改變
(B)當(dāng)嵌入的1比特信息的值(偶數(shù)值或奇數(shù)值)≠Lt的值(偶數(shù)值或奇數(shù)值)時,a.如果Lt≤Lr,執(zhí)行Lt+1和Lr-1b.如果Lt>Lr,執(zhí)行Lt-1和Lr+1c.Lt=1不作為數(shù)字水印信息...在下面的情況中,它由1^表示。
給出下述情況下的描述,例如,要嵌入的作為數(shù)字水印的信息(嵌入信息)和原始圖像的游程長度如下(相關(guān)部分用下劃線加重)。
-嵌入信息的比特隊(duì)列101110...以嵌入順序排列-要嵌入數(shù)字水印的原始圖像的游程長度的隊(duì)列413123423i)嵌入信息的第一比特值被嵌入之后的圖像狀態(tài)323123423ii)嵌入信息的第二比特值被嵌入之后的圖像狀態(tài)沒有變化323123423iii)嵌入信息的第三比特值被嵌入之后的圖像狀態(tài)沒有變化323123423iv)嵌入信息的第四比特值被嵌入之后的圖像狀態(tài)3231^32423v)嵌入信息的第五比特值被嵌入之后的圖像狀態(tài)3231^33323vi)嵌入信息的第六比特值被嵌入之后的圖像狀態(tài)3231^33233給出用于嵌入數(shù)字水印的處理方法的描述,該處理方法涉及圖10。
假設(shè)圖像的每行中的像素的隊(duì)列由游程長度來表示,以及如上述圖4和11的描述,目標(biāo)游程長度由Lt表示,而右相鄰游程長度由Lr表示。數(shù)字水印由Lt的值表示(不管它是偶數(shù)值還是奇數(shù)值),以及Lr用于調(diào)節(jié),以便滿足(Lt+Lr)=常數(shù)。
當(dāng)以像素為單元表示的時候,在Lt的值與想要的數(shù)字水印比特值不匹配的情況下,將Lt的最右像素Ite的值改變?yōu)長r的最左像素Irs的值(當(dāng)然,Ite的值≠Irs的值),或者將像素Irs的值改變?yōu)橄袼豂te的值。
靠近像素Ite和Irs的像素被表示如下。
-包括像素Ite和Irs的行(目標(biāo)行)上面的行中的像素隊(duì)列Iu-,Iu0,Iu1,Iu2...每個表示一個像素-目標(biāo)行中的像素的隊(duì)列It-,Ite,Irs,Irs...每個表示一個像素-目標(biāo)行下面行中的像素的隊(duì)列Id-,Id0,Id1,Id2...每個表示一個像素基于上述假設(shè),滿足圖10的條件可以是下面兩種情況的任何一個。
A.在圖像內(nèi)的邊緣部分構(gòu)成垂直線的下面四種情況中,不能做出變化(因?yàn)榭赡軙茐倪吘壊糠值拇怪本€)。
a.當(dāng)Iu1=Irs和Iu0≠Irsb.當(dāng)Id1=Irs和Id0≠Irsc.當(dāng)Iu0=Ite和Iu1≠Ited.當(dāng)Id0=Ite和Id1≠IteB.在圖像內(nèi)的邊緣部分具有階梯形狀的下面八種情況中,可以做出變化(因?yàn)槟芫S持邊緣部分的階梯形狀)。
(A)從右頂端向左下部形成的階梯形狀的情況a.當(dāng)將Ite的值改變?yōu)镮rs的值時(應(yīng)當(dāng)假設(shè)It-=Ite)(a)當(dāng)Ite-=Iu-=Iu0=Iu1以及Ite≠Id-和Ite≠Id0時(b)當(dāng)Irs=Id-=Id0=Id1以及Irs≠Iu0和Irs≠Iu1時b.當(dāng)將Irs的值改變?yōu)镮te的值時(應(yīng)當(dāng)假設(shè)Irs=Ir2)(a)當(dāng)Ite=Iu0=Iu1=Id2以及Ite≠Id0和Ite≠Id1時(b)當(dāng)Irs=Id0=Id1=Id2以及Irs≠Iu1和Irs≠Iu2時(B)從左頂端向右底部形成階梯形狀的情況a.當(dāng)將Ite的值改變?yōu)镮rs的值時(應(yīng)當(dāng)假設(shè)It-=Ite)(a)當(dāng)Ite=Id-=Id0=Id1以及Ite≠Iu-和Ite≠Iu0時(b)當(dāng)Irs=Iu-=Iu0=Iu1以及IrS≠Id0和Irs≠Iu1時b.當(dāng)將Irs的值改變?yōu)镮te的值時(應(yīng)當(dāng)假設(shè)Irs=Ir2)
(a)當(dāng)Ite=Id0=Id1=Id2以及Ite≠Iu0和Ite≠Iu1時(b)當(dāng)Irs=Iu0=Iu1=Iu2以及Irs≠Id1和Irs≠Id2時步驟S10是數(shù)字水印嵌入處理的一個處理,對每個塊執(zhí)行該處理。在步驟S10中,基于在步驟S1中設(shè)置的嵌入同步方法SynMesh,對塊執(zhí)行關(guān)于數(shù)字水印嵌入方法的下列標(biāo)識。當(dāng)為嵌入同步方法而選擇“依賴于相鄰行(目標(biāo)行上面的行和目標(biāo)行下面的行)的像素值狀態(tài)而執(zhí)行(SynMesh=1)”時(步驟S10中的是),處理進(jìn)行到步驟S11。另一方面,在另外的情況中(步驟S10中的否),假設(shè)選擇“依賴于在兩維平面中具有相同色彩的像素之間的連續(xù)性而執(zhí)行(SynMesh=2)”作為嵌入同步方法,處理進(jìn)行到步驟S12。
在步驟S11中,基于嵌入同步方法是“依賴于相鄰行(目標(biāo)行上面的行和目標(biāo)行下面的行)像素值狀態(tài)而執(zhí)行(SynMesh=1)”的事實(shí),執(zhí)行數(shù)字水印嵌入處理(參見圖6)。另外,通過提出圖10中的限制(在流程圖中其說明被省略),有可能減少了圖像質(zhì)量的下降。
給出用于嵌入數(shù)字水印的處理方法的描述,該處理方法涉及圖6。
假設(shè)圖像的每行中的像素的隊(duì)列由游程長度表示,以及如上面步驟S9所描述,目標(biāo)游程長度由Lt表示,而右相鄰游程長度由Lr表示。數(shù)字水印由Lt的值表示(無論它是偶數(shù)值還是奇數(shù)值),以及Lr用于調(diào)節(jié),以便滿足(Lt+Lr)=常數(shù)。
當(dāng)以像素為單元表示時,在Lt的值與想要的數(shù)字水印比特值不匹配的情況中,將Lt的最右像素Ite的值改變?yōu)長r的最左像素Irs的值(當(dāng)然,Ite的值≠Irs的值),或者將像素Irs的值改變?yōu)橄袼豂te的值。
靠近像素Ite和Irs的像素按如下表示。
-在包括像素Ite和Irs的行(目標(biāo)行)上面的行中的像素隊(duì)列Iu-,Iu0,Iu1,Iu2...每個表示一個像素-在目標(biāo)行中的像素隊(duì)列....Ite,Irs,.......每個表示一個像素-在目標(biāo)行下面的行中的像素隊(duì)列Id-,Id0,Id1,Id2...每個表示一個像素滿足圖6的條件可以是基于上述假設(shè)的下面兩種情況的任何一個。
A.對Lt-1和Lt+1是否能被執(zhí)行而言(Ite的值是否能被改變?yōu)镮rs的值),在下面的條件下這都不能被執(zhí)行。
Lt≤1或(Iu0=Ite和Iu-≠Ite)或(Id0=Ite和Id-≠Ite)或(Iu0=Irs和Iu1≠Irs)或(Id0=Irs和Id1≠Irs)B.對Lt+1和Lr-1是否能被執(zhí)行而言(Irs的值是否能被改變?yōu)镮te的值),在下面的條件下這都不能被執(zhí)行。
Lr≤1或(Iu1=Ite和Iu0≠Ite)或(Id1=Ite和Id0≠Ite)或(Iu1=Irs和Iu2≠Irs)或(Id1=Irs和Id2≠Irs)在步驟S12中,基于嵌入同步方法是“依賴于在兩維平面中具有相同色彩的像素之間的連續(xù)性而執(zhí)行(SynMesh=2)”的事實(shí),執(zhí)行數(shù)字水印的嵌入處理(參見圖7)。
給出用于嵌入數(shù)字水印的處理方法的描述,該處理涉及圖7。
假設(shè)圖像每行中的像素隊(duì)列由游程長度表示,以及如上面步驟S9所描述,目標(biāo)游程長度由Lt表示,而右相鄰游程長度由Lr表示。數(shù)字水印由Lt的值表示(無論它是偶數(shù)值還是奇數(shù)值),以及Lr用于調(diào)節(jié),以便滿足(Lt+Lr)=常數(shù)。
當(dāng)以像素為單元表示時,在Lt的值與想要的數(shù)字水印比特值不匹配的情況中,將Lt的最右像素Ite的值改變?yōu)長r的最左像素Irs的值(當(dāng)然,Ite的值≠Irs的值),或者將像素Irs的值改變?yōu)橄袼豂te的值。
靠近像素Ite和Irs的像素按如下表示。
-在包括像素Ite和Irs的行(目標(biāo)行)上面的行中的像素隊(duì)列Iu-,Iu0,Iu1,Iu2...每個表示一個像素-在目標(biāo)行中的像素隊(duì)列It-,Ite,Irs,Ir2...每個表示一個像素-在目標(biāo)行下面的行中的像素隊(duì)列Id-,Id0,Id1,Id2...每個表示一個像素基于上述假設(shè),依賴于Lt-1和Lr+1是否能被執(zhí)行(Ite的值是否能被改變?yōu)镮rs的值)而考慮滿足圖7的那些條件,在下面的五種情況中,確定這樣的改變不能被執(zhí)行。
A.當(dāng)It-≠Ite時,在下面的任何情況中(A)當(dāng)Ite的值不同于四個相鄰像素的值(Iu0,It-,Id0和Irs)時(B)當(dāng)It=Ite=Id0時B.當(dāng)It-=Ite時,在下面的任何情況中(A)Iu0=Ite和Iu-≠Ite(B)Id0=Ite和Id-≠IteC.當(dāng)Iu1≠Irs時,當(dāng)Iu0=Irs時D.當(dāng)Id1≠Irs時,當(dāng)Id0=Irs時E.當(dāng)It-=Irs時,當(dāng)不滿足下面條件的任何一個時(A)Irs=Iu1=Iu0=Iu-(B)Irs=Id1=Id0=Id-在步驟S13中,在上述步驟S9到S12中執(zhí)行的將數(shù)字水印嵌入到塊內(nèi)的處理之后,基于在步驟S1中設(shè)置的BdrWM,確定是否在針對塊邊界部分的數(shù)字水印嵌入處理中,基于在塊邊界部分中的具有相同色彩的像素的連續(xù)性來執(zhí)行數(shù)字水印嵌入處理,其中所述塊邊界部分由相鄰塊構(gòu)成。當(dāng)選擇“是(BdrWM=1)”作為指示是否依賴于塊邊界部分中的像素的連續(xù)性來執(zhí)行的標(biāo)識時(步驟S13中的是),處理進(jìn)行到步驟S14。另一方面,在其它情況中(步驟S13中的否),處理進(jìn)行到步驟S17。
在步驟S14中,基于指示是否依賴于塊邊界部分中的像素的連續(xù)性來執(zhí)行的標(biāo)識是“是(BdrWM=1)”的事實(shí),在塊邊界部分上執(zhí)行數(shù)字水印嵌入處理(參見圖5)。
在步驟S15中,在通過使用相同色彩的輪廓來執(zhí)行塊分割的情況中,基于在步驟S1中設(shè)置的BdrWM來確定是否能改變塊邊界線。當(dāng)針對相同色彩的輪廓是否能改變,選擇“相同色彩的輪廓能被改變(DevVar=1)”時,處理進(jìn)行到步驟S16。另一方面,在其它情況中,處理進(jìn)行到步驟S17中的確定處理。
僅僅當(dāng)使用相同色彩的輪廓來執(zhí)行塊分割方法時,才執(zhí)行步驟S16。由于采用不同于塊內(nèi)部的塊邊界輪廓部分的像素的值的像素值來嵌入數(shù)字水印(游程的擴(kuò)展),而不能由(被塊內(nèi)的具有不同像素值的游程侵入的)相同色彩的輪廓來構(gòu)成塊邊界線的情況中,為了即使在嵌入數(shù)字水印之后也保持相同色彩的輪廓,進(jìn)行將在輪廓部分中的具有相同的像素向塊外部擴(kuò)大(擴(kuò)展)改變(參見圖8)。
在步驟S17中,基于在步驟S1中設(shè)置的HamWM,確定是否執(zhí)行數(shù)字水印嵌入,其中所述數(shù)字水印嵌入是在垂直于行的方向上調(diào)整游程長度(如圖9所示那樣將每個游程長度擴(kuò)展相同的數(shù)量)。當(dāng)針對是否執(zhí)行調(diào)整游程長度的數(shù)字水印嵌入,選擇“是(HamWM=1)”時(步驟S17中的是),處理進(jìn)行到步驟S18。另一方面,在其它情況中(步驟S17中的否),處理進(jìn)行到步驟S19。
在步驟S18中,基于針對是否執(zhí)行調(diào)整游程長度(如圖9所示那樣將每個游程長度擴(kuò)展相同的數(shù)量)的數(shù)字水印嵌入,選擇“是(HamWM=1)”的事實(shí),執(zhí)行數(shù)字水印嵌入處理,所述數(shù)字水印嵌入處理是調(diào)整在垂直于行的方向上排列的連續(xù)水平游程(在原始圖像的水平游程的起點(diǎn)或終點(diǎn)的水平坐標(biāo)具有相同值的情況下,當(dāng)它們是平行位移維持坐標(biāo))(參見圖9)。
在步驟S19中,假設(shè)目標(biāo)塊已經(jīng)被處理,選擇要嵌入數(shù)字水印的下一個目標(biāo)塊,以及處理進(jìn)行到步驟S6中的確定處理。
接下來,參考圖3A和3B,給出在圖像再生時數(shù)字水印信息的提取處理的描述。在圖像再生時執(zhí)行的數(shù)字水印提取處理包括與在圖像拍攝時的數(shù)字水印嵌入處理相同的多個處理。它們在下述方面是不同的。也就是說,在數(shù)字水印嵌入處理中,為了使數(shù)字水印信息有效,原始圖像被修改。另一方面,在數(shù)字水印提取處理中,通過在沒有修改讀取的圖像的情況下分析圖像來提取嵌入的數(shù)字水印信息。因此,在數(shù)字水印嵌入處理中(圖2A和2B),用于DevVar的選項(xiàng)包括作為塊分割功能的“相同色彩的輪廓能被改變”的功能。然而,數(shù)字水印提取處理(圖3A和3B)不包括這樣的功能。
在步驟S31中,進(jìn)行鍵輸入以確定一個選擇功能(例如通過鍵盤進(jìn)行輸入),以及該輸入被保存在存儲器中,用于接下來的處理。
所確定的選擇功能(1)到(5)中的一個功能必須與在數(shù)字水印嵌入時所設(shè)置的功能相同。如果它們不匹配,不可能從要提取數(shù)字水印的圖像中提取嵌入的數(shù)字水印。然而,對在項(xiàng)(2)中說明的“塊分割方法DevVar”而言,在數(shù)字水印嵌入時的設(shè)置是“1相同色彩的輪廓能被改變”或“2相同色彩的輪廓不能被改變”的情況下,通過在提取時設(shè)置“1相同色彩的輪廓”,可以認(rèn)為選擇了相同的功能(兩者匹配)。
(1)當(dāng)從由密鑰(例如,密碼)預(yù)先加密之后再嵌入數(shù)字水印信息的圖像中提取數(shù)字水印信息時,需要密鑰。
(2)用于設(shè)置塊分割方法DevVar的輸入作為選擇如下一個處理的指令。當(dāng)給出DevVar=0(矩形)的指令時,在隨后的步驟S33中,要從中提取數(shù)字水印的圖像被分割成矩形塊(步驟S34)。另外,當(dāng)給出DevVar=1(相同色彩的輪廓)的指令時(步驟S33中的否),要從中提取數(shù)字水印的圖像被分割成由相同色彩的輪廓所環(huán)繞的塊(步驟35)。
(3)用于設(shè)置BdrWM的輸入,作為選擇步驟S43之后的處理的指令,其中BdrWM確定是否根據(jù)塊邊界部分中的像素間的連續(xù)性執(zhí)行處理。也就是說,當(dāng)BdrWM=1(在步驟S13中的是)時,執(zhí)行根據(jù)塊邊界部分中相同色彩的像素間的連續(xù)性的數(shù)字水印提取處理(步驟S44),。同樣,確定是否改變由相同色彩的輪廓所形成的塊邊界行。當(dāng)它需要時,執(zhí)行改變處理。
(4)用于設(shè)置確定嵌入同步方法的SynMesh的輸入,作為選擇步驟S38之后的處理以及步驟S40之后的處理的指令。
(5)用于設(shè)置HarmWM的輸入,作為確定步驟S45之后的處理的指令,其中HarmWM確定是否執(zhí)行列出游程長度的數(shù)字水印嵌入。
這是是否將水平游程長度的改變量(±1或0)設(shè)置為在下述情況中的相同值(同步值)的選擇功能即在數(shù)字水印嵌入處理時的原始圖像中,在具有相同色彩以及其起點(diǎn)或終點(diǎn)具有相同值的水平游程被排列在垂直方向上的部分嵌入數(shù)字水印。
在步驟S32中,讀取圖像作為要從中提取數(shù)字水印的目標(biāo)圖像,并保存在存儲器中。圖像可以是多級圖像或二進(jìn)制圖像。
在步驟S33中,根據(jù)在步驟S31中設(shè)置的塊分割方法DevVar來確定隨后的處理流程。當(dāng)DevVar=0(步驟S33中的是)時,處理進(jìn)行到步驟S34。其執(zhí)行分割成矩形塊的分割。另一方面,當(dāng)DevVar≠0時(在步驟S33中的是),處理進(jìn)行到步驟S35,其執(zhí)行分割成除矩形塊以外其它形狀的分割。
步驟S34,通過具有不受圖像內(nèi)的像素值影響的固定塊大小的塊來執(zhí)行分割成矩形塊的分割。
在步驟S35中,要從中提取數(shù)字水印的圖像被分割成具有相同色彩輪廓的塊。圖8顯示了一個分割的塊,和在其中嵌入數(shù)字水印的情況??梢圆捎霉姆椒ㄗ鳛閴K分割方法。
在步驟S36中,確定以塊為單元的數(shù)字水印提取處理是否已經(jīng)結(jié)束。如果對在步驟S34或S35中所分割的所有塊已經(jīng)執(zhí)行了針對每個塊的處理(步驟S38到S47)(步驟S36中的是),那么處理進(jìn)行到步驟S37。另一方面,如果未對所有塊執(zhí)行完處理(步驟S36中的否),然后處理進(jìn)行到步驟S38。
步驟S37對應(yīng)于數(shù)字水印提取處理完成后的處理。在步驟S37中,保存提取的數(shù)字水印信息。所述信息被保存在存儲器4中或外部存儲單元3中。
步驟S38是數(shù)字水印提取處理的一個過程,該處理將對每個塊執(zhí)行。在步驟S38中,基于在步驟S31中設(shè)置的嵌入同步方法SynMesh,執(zhí)行關(guān)于提取塊內(nèi)的數(shù)字水印的方法的第一標(biāo)識。當(dāng)選擇“在每行上獨(dú)立執(zhí)行(SynMesh=0)”作為嵌入同步方法(步驟S38中的是)時,處理進(jìn)行到步驟S39。在其它情況(步驟S38中的否)中,處理進(jìn)行到步驟S40,其執(zhí)行下一標(biāo)識處理。
在步驟S39中,基于嵌入同步方法是“在每行上獨(dú)立執(zhí)行(SynMesh=0)”的事實(shí),執(zhí)行數(shù)字水印提取處理(參見圖4和11)。另外,如果在數(shù)字水印嵌入時提出圖10所述的限制(在流程圖中省略其說明),同樣在提取時的相同限制下可以提取數(shù)字水印。
步驟S40是數(shù)字水印提取處理的一個過程,對每個塊執(zhí)行該處理。在步驟S40中,基于在步驟S31中設(shè)置的嵌入同步方法SynMesh,執(zhí)行關(guān)于提取塊內(nèi)的數(shù)字水印的方法的下列標(biāo)識。當(dāng)選擇“依賴于相鄰行(目標(biāo)行上面的行和目標(biāo)行下面的行)的像素值狀態(tài)來執(zhí)行(SynMesh=1)”作為嵌入同步方法時(步驟S40的是),處理進(jìn)行到步驟S41。另一方面,在其他情況中(步驟S40中的否),假設(shè)選擇“依賴于在兩維平面中具有相同值的像素間的連續(xù)性而執(zhí)行(SynMesh=2)”作為嵌入同步方法,處理進(jìn)行到步驟S42。
在步驟S41中,基于嵌入同步方法是“依賴于相鄰行(目標(biāo)行上面的行和目標(biāo)行下面的行)中像素值的狀態(tài)來執(zhí)行(SynMesh=1)”,執(zhí)行數(shù)字水印提取處理(參見圖6)。另外,如果在數(shù)字水印嵌入時提出圖10所述的限制(在流程圖中省略其說明),同樣在提取時的相同限制下可以提取數(shù)字水印。
在步驟S42中,基于嵌入同步方法是“依賴于在兩維平面中具有相同值的像素間的連續(xù)性來執(zhí)行(SynMesh=2)”的事實(shí),執(zhí)行數(shù)字水印提取處理(參見圖7)。
在步驟S43中,在上述步驟S39到S42中執(zhí)行的提取塊內(nèi)的數(shù)字水印的處理之后,基于在步驟S31中設(shè)置的BdrWM,確定是否在針對塊邊界部分的數(shù)字水印提取處理中,根據(jù)在塊邊界部分中的具有相同色彩的像素的連續(xù)性來執(zhí)行數(shù)字水印提取處理,其中所述塊邊界部分是由相鄰塊構(gòu)成的。當(dāng)選擇“是(BdrWM=1)”作為表示是否通過依賴于在塊邊界部分內(nèi)的像素的連續(xù)性來執(zhí)行的標(biāo)識(步驟S43中的是)時,處理進(jìn)行到步驟S44。另一方面,在其他情況中(步驟S43中的否),處理進(jìn)行到步驟S45。
在步驟S44中,基于表示指示是否通過依賴于在塊邊界部分內(nèi)的像素的連續(xù)性來執(zhí)行的標(biāo)識是“是(BdrWM=1)”的事實(shí),在塊邊界部分上執(zhí)行數(shù)字水印提取處理(參見圖5)。
在步驟S45中,基于在步驟S1中設(shè)置的HamWM,確定是否假設(shè)已經(jīng)執(zhí)行了在垂直于行方向上列出游程長度(如圖9所示那樣將每個游程長度擴(kuò)展相同量)的數(shù)字水印嵌入處理。當(dāng)針對是否執(zhí)行列出游程長度的數(shù)字水印嵌入處理,選擇“是(HamWM=1)”時(步驟S45中的是),處理進(jìn)行到步驟S46。另一方面,在其他情況中(步驟S45中的否),處理進(jìn)行到步驟S47。
在步驟S46中,基于針對是否執(zhí)行列出游程長度(如圖9所示那樣將每個游程長度擴(kuò)展相同量)的數(shù)字水印嵌入處理而選擇“是(HamWM=1)”的事實(shí),執(zhí)行數(shù)字水印提取處理,其(在原始圖像的水平游程的起點(diǎn)或終點(diǎn)的水平坐標(biāo)具有相同值的情況下,當(dāng)它們是平行位移維持坐標(biāo))列出垂直于行方向上排列的連續(xù)水平游程(嵌入數(shù)字水印以及具有列出的游程長度的一組游程包括僅僅1比特的數(shù)字水印信息)(參見圖9)。
在步驟S47中,假設(shè)已經(jīng)執(zhí)行完目標(biāo)塊,選擇要從中提取數(shù)字水印的下一個目標(biāo)塊,以及處理進(jìn)行到步驟S36中的確定處理。
應(yīng)當(dāng)注意,通過向系統(tǒng)或裝置提供在其上記錄有實(shí)現(xiàn)根據(jù)上述實(shí)施例的功能的軟件的程序代碼的存儲介質(zhì)(記錄介質(zhì)),以及通過系統(tǒng)或裝置的計(jì)算機(jī)(CPU或MPU)來讀取和執(zhí)行存儲在存儲介質(zhì)(記錄介質(zhì))上的程序代碼,來完成本發(fā)明。在這種情況下,從存儲介質(zhì)中讀取的程序代碼實(shí)現(xiàn)根據(jù)上述實(shí)施例的功能。例如,軟盤、硬盤、光盤、磁光盤、磁帶、非易失存儲卡、或ROM可以被用作提供程序代碼的存儲介質(zhì)(記錄介質(zhì))。不是總能夠通過執(zhí)行由計(jì)算機(jī)讀取的程序代碼來實(shí)現(xiàn)根據(jù)上述實(shí)施例的功能。基于程序代碼給出的指令,在計(jì)算機(jī)上運(yùn)行的OS(操作系統(tǒng))可以執(zhí)行部分或全部的實(shí)際處理,以便實(shí)現(xiàn)根據(jù)上述實(shí)施例的功能。進(jìn)一步地,從存儲介質(zhì)中讀取的程序代碼被寫入插在計(jì)算機(jī)中的功能增強(qiáng)板或連接到計(jì)算機(jī)的功能增強(qiáng)板中所提供的存儲器之后,基于程序代碼所給出的指令,功能增強(qiáng)板中提供的CPU或功能增強(qiáng)單元可以執(zhí)行部分或全部的實(shí)際處理,以便實(shí)現(xiàn)根據(jù)上述實(shí)施例的功能。
本發(fā)明不限制在具體公開的實(shí)施例,以及在沒有背離本發(fā)明精神的情況下,可以提出改變和改進(jìn)。
本申請是基于日本在先申請2004年2月18日申請的第2004-041022號以及2005年2月3日申請的第2005-027807號,其全部內(nèi)容在此合并做參考。
權(quán)利要求
1.一種圖像處理方法,包括步驟將數(shù)字內(nèi)容分割成游程長度,其中每個游程長度包括一個或多個具有相同色彩的連續(xù)像素;和在所述游程長度中嵌入數(shù)字水印信息,同時保留拓?fù)?第一拓?fù)浔Wo(hù)法則)。
2.如權(quán)利要求1所述的圖像處理方法,其中第一拓?fù)浔Wo(hù)法則是不允許“通過向游程長度中插入一個或多個具有不同于游程長度的色彩的色彩的像素來進(jìn)行游程長度的分割”以及不能刪除游程長度的法則。
3.如權(quán)利要求1所述的圖像處理方法,進(jìn)一步包括步驟將數(shù)字內(nèi)容分割成塊;和當(dāng)游程長度存在于所分割塊的邊界部分時,在游程長度中嵌入數(shù)字水印信息,同時保留拓?fù)?第二拓?fù)浔Wo(hù)法則)。
4.如權(quán)利要求3所述的圖像處理方法,其中第二拓?fù)浔Wo(hù)法則是當(dāng)游程長度跨過一個或多個所分割塊的邊界部分時,不承認(rèn)所述邊界部分中游程長度間的連續(xù)性的有效性的法則。
5.如權(quán)利要求1所述的圖像處理方法,進(jìn)一步包括步驟將數(shù)字內(nèi)容分割成塊;和當(dāng)游程長度存在于所分割塊的邊界部分時,在游程長度中嵌入數(shù)字水印信息,同時保留拓?fù)?第三拓?fù)浔Wo(hù)法則)。
6.如權(quán)利要求5所述的圖像處理方法,其中第三拓?fù)浔Wo(hù)法則是當(dāng)游程長度跨過一個或多個所分割塊的邊界部分時,承認(rèn)所述邊界部分中游程長度間的連續(xù)性的有效性的法則。
7.如權(quán)利要求1所述的圖像處理方法,進(jìn)一步包括步驟在數(shù)字內(nèi)容的相鄰游程長度中嵌入數(shù)字水印信息,同時保留拓?fù)?第四拓?fù)浔Wo(hù)法則),所述相鄰游程長度彼此堆疊。
8.如權(quán)利要求7所述的圖像處理方法,其中第四拓?fù)浞▌t是不允許“通過在水平方向和垂直方向中的至少一個上最新插入一個或多個具有不同色彩的像素來進(jìn)行游程長度的分割”以及不能刪除游程長度的法則。
9.如權(quán)利要求7所述的圖像處理方法,進(jìn)一步包括步驟當(dāng)在相鄰游程長度中嵌入數(shù)字水印信息的同時保留拓?fù)洌度朐紙D像的特性以便保留特性。
10.如權(quán)利要求9所述的圖像處理方法,其中,在嵌入原始圖像特性的步驟中,保留由相鄰游程長度構(gòu)成的垂直行。
11.如權(quán)利要求9所述的圖像處理方法,其中,在嵌入原始圖像特性的步驟中,保留由相鄰游程長度構(gòu)成的梯形。
12.如權(quán)利要求1所述的圖像處理方法,進(jìn)一步包括步驟從在嵌入步驟中嵌入數(shù)字水印信息的圖像中提取數(shù)字水印信息。
13.如權(quán)利要求1所述的圖像處理方法,其中數(shù)字水印信息是由每個游程長度的奇數(shù)值和偶數(shù)值中的一個來表示。
14.一種信息處理方法,包括步驟將數(shù)字內(nèi)容分割成塊;和在作為要嵌入數(shù)字水印的目標(biāo)并且存在于由相同色彩的一個或多個像素構(gòu)成的分割的塊區(qū)域中的像素區(qū)域中嵌入數(shù)字水印信息而不改變塊區(qū)域的邊界線,同時保留拓?fù)洹?br>
15.如權(quán)利要求14所述的圖像處理方法,進(jìn)一步包括步驟從在嵌入步驟中嵌入了數(shù)字水印信息的圖像中提取數(shù)字水印信息。
16.如權(quán)利要求14所述的圖像處理方法,其中數(shù)字水印信息由每個游程長度的奇數(shù)值和偶數(shù)值中的一個所表示。
17.一種信息處理方法,包括步驟將數(shù)字內(nèi)容分割成塊;和在作為要嵌入數(shù)字水印的目標(biāo)并且存在于由相同色彩的一個或多個像素形成的分割的塊區(qū)域中的像素區(qū)域中,通過允許塊區(qū)域的邊界線的改變來嵌入數(shù)字水印信息,以及同時保留拓?fù)洹?br>
18.如權(quán)利要求17所述的圖像處理方法,進(jìn)一步包括步驟從在嵌入步驟中嵌入數(shù)字水印信息的圖像中提取數(shù)字水印信息。
19.如權(quán)利要求17所述的圖像處理方法,其中數(shù)字水印信息由每個游程長度的奇數(shù)值和偶數(shù)值中的一個所表示。
20.一種信息處理方法,包括步驟將數(shù)字內(nèi)容分割成塊;和當(dāng)在作為要嵌入數(shù)字水印的目標(biāo)且存在于由相同色彩的一個或多個像素形成的分割的塊區(qū)域中的像素區(qū)域中嵌入數(shù)字水印信息并且同時保留拓?fù)鋾r,嵌入數(shù)字水印信息以便使在嵌入之后的區(qū)域形狀與嵌入之前的區(qū)域形狀相似。
21.如權(quán)利要求20所述的圖像處理方法,進(jìn)一步包括步驟從在嵌入步驟中嵌入了數(shù)字水印信息的圖像中提取數(shù)字水印信息。
22.如權(quán)利要求20所述的圖像處理方法,其中數(shù)字水印信息由每個游程長度的奇數(shù)值和偶數(shù)值中的一個所表示。
23.一種圖處理裝置,包括將數(shù)字內(nèi)容分割成游程長度的分割部分,其中每個游程長度包括一個或多個具有相同色彩的連續(xù)像素;和在游程長度中嵌入數(shù)字水印信息且同時保留拓?fù)?第一拓?fù)浔Wo(hù)法則)的數(shù)字水印嵌入部分。
24.如權(quán)利要求23所述的圖像處理裝置,其中第一拓?fù)浔Wo(hù)法則是不允許“通過向游程長度中插入一個或多個具有不同于游程長度的色彩的色彩的像素來進(jìn)行游程長度的分割”以及不能刪除游程長度的法則。
25.如權(quán)利要求23所述的圖像處理裝置,進(jìn)一步包括將數(shù)字內(nèi)容分割成塊的分割部分;和嵌入部分,當(dāng)游程長度存在于所分割塊的邊界部分時,在游程長度中嵌入數(shù)字水印信息且同時保留拓?fù)?第二拓?fù)浔Wo(hù)法則)。
26.如權(quán)利要求25所述的圖像處理裝置,其中第二拓?fù)浔Wo(hù)法則是當(dāng)游程長度跨過一個或多個所分割塊的邊界部分時,不承認(rèn)所述邊界部分中游程長度間的連續(xù)性的有效性的法則。
27.如權(quán)利要求23所述的圖像處理裝置,進(jìn)一步包括將數(shù)字內(nèi)容分割成塊的分割部分;和嵌入部分,當(dāng)游程長度存在于所分割塊的邊界部分時,在游程長度中嵌入數(shù)字水印信息且同時保留拓?fù)?第三拓?fù)浔Wo(hù)法則)。
28.如權(quán)利要求27所述的圖像處理裝置,其中第三拓?fù)浔Wo(hù)法則是當(dāng)游程長度跨過一個或多個所分割塊的邊界部分時,承認(rèn)所述邊界部分中游程長度間的連續(xù)性的有效性的法則。
29.如權(quán)利要求23所述的圖像處理裝置,進(jìn)一步包括在數(shù)字內(nèi)容的相鄰游程長度中嵌入數(shù)字水印信息且同時保留拓?fù)?第四拓?fù)浔Wo(hù)法則)的嵌入部分,所述相鄰游程長度彼此堆疊。
30.如權(quán)利要求29所述的圖像處理裝置,其中第四拓?fù)浞▌t是不允許“通過在水平方向和垂直方向中的至少一個上最新插入一個或多個具有不同色彩的像素來進(jìn)行游程長度的分割”以及不能刪除游程長度的法則。
31.如權(quán)利要求29所述的圖像處理裝置,進(jìn)一步包括嵌入部分,當(dāng)在相鄰游程長度中嵌入數(shù)字水印信息且同時保留拓?fù)?,嵌入原始圖像的特性以便保留特性。
32.如權(quán)利要求31所述的圖像處理裝置,其中嵌入部分嵌入由相鄰游程長度構(gòu)成的垂直行,以便保留所述垂直行。
33.如權(quán)利要求31所述的圖像處理裝置,其中嵌入部分嵌入由相鄰游程長度構(gòu)成的梯形,以便保留所述梯形。
34.如權(quán)利要求23所述的圖像處理裝置,進(jìn)一步包括提取部分,從由嵌入部分嵌入了數(shù)字水印信息的圖像中提取數(shù)字水印信息。
35.如權(quán)利要求23所述的圖像處理裝置,其中數(shù)字水印信息是由每個游程長度的奇數(shù)值和偶數(shù)值中的一個來表示。
36.一種信息處理裝置,包括將數(shù)字內(nèi)容分割成塊的分割部分;和嵌入部分,在作為要嵌入數(shù)字水印的目標(biāo)并且存在于由相同色彩的一個或多個像素構(gòu)成的分割的塊區(qū)域中的像素區(qū)域中嵌入數(shù)字水印信息而不改變塊區(qū)域的邊界線,以及同時保留拓?fù)洹?br>
37.如權(quán)利要求36所述的圖像處理裝置,進(jìn)一步包括提取部分,從由嵌入部分嵌入了數(shù)字水印信息的圖像中提取數(shù)字水印信息。
38.如權(quán)利要求36所述的圖像處理裝置,其中數(shù)字水印信息由每個游程長度的奇數(shù)值和偶數(shù)值中的一個所表示。
39.一種信息處理裝置,包括將數(shù)字內(nèi)容分割成塊的分割部分;和嵌入部分,在作為要嵌入數(shù)字水印的目標(biāo)并且存在于由相同色彩的一個或多個像素形成的分割的塊區(qū)域中的像素區(qū)域中,通過允許塊區(qū)域的邊界線的改變來嵌入數(shù)字水印信息,以及同時保留拓?fù)洹?br>
40.如權(quán)利要求39所述的圖像處理裝置,進(jìn)一步包括提取部分,從由嵌入部分嵌入了數(shù)字水印信息的圖像中提取數(shù)字水印信息。
41.如權(quán)利要求39所述的圖像處理裝置,其中數(shù)字水印信息由每個游程長度的奇數(shù)值和偶數(shù)值中的一個所表示。
42.一種信息處理裝置,包括將數(shù)字內(nèi)容分割成塊的分割部分;和嵌入部分,當(dāng)在作為要嵌入數(shù)字水印的目標(biāo)且存在于由相同色彩的一個或多個像素形成的分割的塊區(qū)域中的像素區(qū)域中嵌入數(shù)字水印信息,以及同時保留拓?fù)鋾r,嵌入數(shù)字水印信息以便使在嵌入之后的區(qū)域形狀與嵌入之前的區(qū)域形狀相似。
43.如權(quán)利要求42所述的圖像處理裝置,進(jìn)一步包括提取部分,從由嵌入部分嵌入了數(shù)字水印信息的圖像中提取數(shù)字水印信息。
44.如權(quán)利要求42所述的圖像處理裝置,其中數(shù)字水印信息由每個游程長度的奇數(shù)值和偶數(shù)值中的一個所表示。
45.一種程序,用于使得計(jì)算機(jī)實(shí)現(xiàn)步驟將數(shù)字內(nèi)容分割成游程長度,每個游程長度包括一個或多個具有相同色彩的連續(xù)像素;和在游程長度中嵌入數(shù)字水印信息,同時保留拓?fù)?第一拓?fù)浔Wo(hù)法則)。46、一種程序,用于使得計(jì)算機(jī)實(shí)現(xiàn)步驟將數(shù)字內(nèi)容分割成塊;和在作為要嵌入數(shù)字水印的目標(biāo)并且存在于由相同色彩的一個或多個像素構(gòu)成的分割的塊區(qū)域中的像素區(qū)域中嵌入數(shù)字水印信息而不改變塊區(qū)域的邊界線,以及同時保留拓?fù)洹?br>
47.一種程序,用于引起計(jì)算機(jī)來實(shí)現(xiàn)每個步驟將數(shù)字內(nèi)容分割成塊;和在作為要嵌入數(shù)字水印的目標(biāo)并且存在于由相同色彩的一個或多個像素形成的分割的塊區(qū)域中的像素區(qū)域中,通過允許塊區(qū)域的邊界線的改變來嵌入數(shù)字水印信息,以及同時保留拓?fù)洹?br>
48.一種程序,用于引起計(jì)算機(jī)來實(shí)現(xiàn)每個步驟將數(shù)字內(nèi)容分割成塊;和當(dāng)在作為要嵌入數(shù)字水印的目標(biāo)且存在于由相同色彩的一個或多個像素形成的分割的塊區(qū)域中的像素區(qū)域中嵌入數(shù)字水印信息,以及同時保留拓?fù)鋾r,嵌入數(shù)字水印信息以便使在嵌入之后的區(qū)域形狀與嵌入之前的區(qū)域形狀相似。
49.一種記錄有程序的計(jì)算機(jī)可讀記錄介質(zhì),其中該程序用于使得計(jì)算機(jī)來實(shí)現(xiàn)步驟將數(shù)字內(nèi)容分割成游程長度,每個游程長度包括一個或多個具有相同色彩的連續(xù)像素;和在游程長度中嵌入數(shù)字水印信息,同時保留拓?fù)?第一拓?fù)浔Wo(hù)法則)。
50.一種記錄有程序的計(jì)算機(jī)可讀記錄介質(zhì),其中該程序用于使得計(jì)算機(jī)來實(shí)現(xiàn)步驟將數(shù)字內(nèi)容分割成塊;和在作為要嵌入數(shù)字水印的目標(biāo)并且存在于由相同色彩的一個或多個像素構(gòu)成的分割的塊區(qū)域中的像素區(qū)域中嵌入數(shù)字水印信息而不改變塊區(qū)域的邊界線,以及同時保留拓?fù)洹?br>
51.一種記錄有程序的計(jì)算機(jī)可讀記錄介質(zhì),其中該程序用于使得計(jì)算機(jī)來實(shí)現(xiàn)步驟將數(shù)字內(nèi)容分割成塊;和在作為要嵌入數(shù)字水印的目標(biāo)并且存在于由相同色彩的一個或多個像素形成的分割的塊區(qū)域中的像素區(qū)域中,通過允許塊區(qū)域的邊界線的改變來嵌入數(shù)字水印信息,以及同時保留拓?fù)洹?br>
52.一種記錄有程序的計(jì)算機(jī)可讀記錄介質(zhì),其中該程序用于使得計(jì)算機(jī)來實(shí)現(xiàn)步驟將數(shù)字內(nèi)容分割成塊;和當(dāng)在作為要嵌入數(shù)字水印的目標(biāo)且存在于由相同色彩的一個或多個像素形成的分割的塊區(qū)域中的像素區(qū)域中嵌入數(shù)字水印信息,以及同時保留拓?fù)鋾r,嵌入數(shù)字水印信息以便使在嵌入之后的區(qū)域形狀與嵌入之前的區(qū)域形狀相似。
全文摘要
一種圖像處理方法,包括步驟將數(shù)字內(nèi)容分割成游程長度,其中每個游程長度包括一個或多個具有相同色彩的連續(xù)像素;和在游程長度中嵌入數(shù)字水印信息,同時保留拓?fù)?第一拓?fù)浔Wo(hù)法則)。
文檔編號G06T1/00GK1658237SQ200510064029
公開日2005年8月24日 申請日期2005年2月18日 優(yōu)先權(quán)日2004年2月18日
發(fā)明者阿部悌, 西村隆之 申請人:株式會社理光