国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種文本文檔中的信息隱藏方法和裝置與流程

      文檔序號:11324338閱讀:255來源:國知局
      一種文本文檔中的信息隱藏方法和裝置與流程

      本發(fā)明涉及一種文本文檔中的信息隱藏方法和裝置,具體涉及一種在黑白二值文本圖像文檔中的信息隱藏方法和裝置。



      背景技術:

      隨著信息時代的到來,特別是互聯(lián)網(wǎng)技術的快速普及,信息安全的保護問題日益突出。目前的信息安全技術基本上都是基于密碼學理論的,無論是采用傳統(tǒng)的密鑰系統(tǒng),還是公鑰系統(tǒng),其保護方式都是控制文件的存取,即將文件加密成密文,使得非法用戶不能解讀。但是隨著計算機能力的不斷提高,這種通過增加密鑰長度來提高系統(tǒng)安全性的方法越來越不可靠,而且密文容易引起攻擊者注意。因此,具有偽裝特點的新興的信息安全技術—信息隱藏(informationhiding)應運而生,并成為隱藏通信和版權保護的有效手段,迅速成為國際上的研究熱點。

      目前,就信息隱藏技術而言,利用圖像、聲音和視頻載體的研究較為廣泛和深入,而基于文本方面的研究相對較少。由于文本文件是直接對文字數(shù)據(jù)進行編碼,因而不存在數(shù)據(jù)冗余,就不能通過修改文件的有效數(shù)據(jù)進行信息隱藏。事實上,大多數(shù)的創(chuàng)意都是以文本的方式存儲和傳輸,文本作為信息傳遞的一種手段,其應用大大地超過了圖像、視頻和音頻的范圍,再加上文本數(shù)據(jù)對互聯(lián)網(wǎng)時代的政府辦公和電子商務具有非常重要的作用,因此,研究基于文本的信息隱藏,對于互聯(lián)網(wǎng)時代的隱藏通信是一個極具潛力的方向。

      文本文檔中的信息隱藏主要從以下三個方面來進行:

      (1)矢量文件格式,即文本文檔中主要包含文字編碼信息。

      該類格式文件的信息隱藏方法主要有:a)基于文檔排版格式和屬性信息的數(shù)字水印算法,比如利用字符行距/間距、字符大小縮放、字符顏色、不易見字符和全/半角標點等屬性信息,但是此類方法的水印信息容量十分有限;b)基于自然語言處理技術的文本水印方法,即在不改變文本原意的情況下通過等價信息替換、語態(tài)轉(zhuǎn)換等辦法來實現(xiàn)水印嵌入。該類方法具有較好的不可見性,隱藏信息量相對大,但不適用于文本內(nèi)容不宜更改的情況,從而不具有普適性。

      (2)二值文本圖像格式,即將電子格式的文本文件轉(zhuǎn)換為黑白二值文本圖像數(shù)據(jù)。

      文本文檔圖像可以看作是二值的數(shù)字圖像,與灰度圖像具有豐富的灰度級不同,二值圖像只有黑白兩種顏色的像素,這個特點決定了對像素的任意修改都會造成視覺上的明顯變化。例如在全黑或全白的區(qū)域翻轉(zhuǎn)任意像素,在視覺上造成的影響的都是不可接受的。對于二值圖像來說,所能利用的視覺冗余都是黑白區(qū)域的交接處,即圖像的邊界點。所以二值圖像的水印方法都集中在對邊界點的修改,不能孤立考慮一個像素,而應該考慮像素點的領域狀況。

      在現(xiàn)有的方法中,二值圖像水印方法可以分為整體圖像特征修改法和局部圖像特征修改法兩類。其中整體圖像特征修改法是利用大塊圖像或大塊圖像之間的幾何特征來隱藏信息,常見的方法包括文本行間距平移、文本字間距平移和字符結構微調(diào)等方法。但是這種方法藏入的信息量較少,并且嵌入的方式比較復雜;局部圖像特征修改法是對分塊圖像的統(tǒng)計特征進行修改來隱藏信息,通常有奇偶嵌入法、步長奇偶法、比例修改法、游程修改法、邊界修改法和字符特征修改法等。它們的共同特征都是通過對邊界像素的修改,改變局部圖像的統(tǒng)計特征,以達到信息隱藏的目的。但是目前的局部圖像特征修改法的不足在于:水印信息容量明顯不足。另外在選擇像數(shù)點改變時還需要將某區(qū)域內(nèi)的圖像進行置亂處理,然后分塊統(tǒng)計黑點個數(shù),并根據(jù)一定的規(guī)則和待嵌入的位串信息,對圖像的特定象素點進行修改,修改方式相對比較復雜。但是對于一般的文本文檔來說,排版格式的差異使得無法準確定位區(qū)域,信息提取的困難較大。

      (3)疊加額外底紋圖像數(shù)據(jù)。即將電子文本文檔頁面數(shù)據(jù)下,疊加額外的底紋圖像數(shù)據(jù),信息不是隱藏在文本文檔本身,而是隱藏在底紋圖像數(shù)據(jù)中。一般實現(xiàn)時也有兩種方法:a)在正常打印文件的同時額外疊加一層紋圖像數(shù)據(jù),采用不同的網(wǎng)點模式代表了不同的水印信息。這類方法的優(yōu)點是水印信息容量大,并可以抵抗若干次復印;缺點是浪費油墨,從而使得打印成本升高;b)將所有的電子格式文件轉(zhuǎn)換為電子的pdf文件,其中將待嵌入的水印信息嵌入到動態(tài)生成的背景底紋圖像數(shù)據(jù)中,并作為一個頁面對象插入到pdf文件頁面的底部。雖然信息容量相對較大,但是文件體積也會變的很大,由于背景底紋圖像數(shù)據(jù)的存在,文件的壓縮比例相對較低。另外,這兩類處理方式都是在文本文檔底部疊加了額外的底紋圖像數(shù)據(jù),該數(shù)據(jù)是人眼可見的,在一定程度上還會影響文檔的正常閱讀效果。

      綜上所述,現(xiàn)有的文本水印方法并不能同時在保持理想視覺效果,不明顯增加文件體積大小的前提下,實現(xiàn)文本文件中的大容量信息的嵌入和提取。針對上述缺陷,本發(fā)明提出一種用于文本文件的信息隱藏方法,該算法實現(xiàn)簡單,將電子格式文本文檔中所有的文字對象轉(zhuǎn)換為二值文本圖像,稱之為字符圖像,通過修改字符圖像邊緣嵌入水印信息,嵌入水印信息后的文本圖像視覺效果良好,并且信息嵌入容量可以得到大幅度提高。



      技術實現(xiàn)要素:

      本發(fā)明提供一種文本文檔中的信息隱藏方法,用以解決現(xiàn)有技術中存在的文本文檔中嵌入的水印信息量較少,視覺效果較差的問題,進一步的用于解決水印信息安全性低,嵌入和提取過程計算復雜度高以及檢測準確率低的問題。

      本發(fā)明的構思在于:首先將電子格式的文本文件轉(zhuǎn)換為黑白二值文本圖像文件;提取每個字符圖像字塊,并進行字符圖像邊緣檢測;確定字符圖像字塊的邊緣像素點的翻轉(zhuǎn)規(guī)則,通過邊緣像素點值的翻轉(zhuǎn)來嵌入水印信息;水印信息提取識別時,首先通過ocr(opticalcharacterrecognition,光學字符識別)來獲取每個字符的編碼信息和字符圖像子塊數(shù)據(jù)a;根據(jù)字符編碼信息和文字排版屬性信息重新生成操作系統(tǒng)字模圖像的點陣數(shù)據(jù)b;通過比對圖像塊a和b的邊緣的異同來提取水印信息。進而得到了一種文本文檔中信息隱藏方法和裝置。

      本發(fā)明提供了一種文本文檔中的信息隱藏方法,包括如下步驟:

      步驟一,讀取電子格式的文本文件中所有字符編碼信息和文字排版屬性信息;

      步驟二,根據(jù)字符編碼信息和文字排版屬性信息將電子格式的文本文件轉(zhuǎn)換為黑白二值文本圖像文件;

      步驟三,在黑白二值文本圖像文件中提取每個字符圖像子塊,并進行字符圖像邊緣像素點檢測,獲取邊緣象素點集合u;

      步驟四,確定字符圖像子塊的邊緣像素點的翻轉(zhuǎn)規(guī)則,通過u中的邊緣像素點值的翻轉(zhuǎn)來嵌入水印信息,從而實現(xiàn)文本文檔中的信息隱藏。

      進一步地,上述方法還包括以下步驟:

      步驟五,將嵌入水印信息后的二值文本圖像文件再進行文件數(shù)據(jù)壓縮處理,以獲得較小的文件體積。

      進一步地,上述方法還包括以下步驟,以實現(xiàn)水印信息的提取識別:

      步驟六,水印信息提取識別時,首先對壓縮文件進行解壓縮操作,然后通過ocr獲取黑白二值文本圖像文件中每個字符的編碼信息和切分后的字符圖像子塊a;

      步驟七,根據(jù)步驟六中獲取的字符編碼信息,以及步驟一中相同的文字排版屬性信息,根據(jù)操作系統(tǒng)中預裝的標準字模圖像重新生成字符圖像子塊b;

      步驟八,通過比對字符圖像子塊a和b的邊緣點的像素值的異同來提取水印信息。

      較佳地,所述的字符編碼信息是指字符unicode編碼;所述的文字排版屬性信息包括:字體名稱、字體大小、字體方向、字體樣式(偏斜體、斜體和正常)和字體粗細(粗體、細體和正常)信息。

      較佳地,所述的文本文件轉(zhuǎn)換為黑白二值文本圖像文件時,圖像分辨率為200dpi、300pdi、600dpi或1200dpi。

      較佳地,所述的字符圖像邊緣像素點檢測,遍歷收集字符圖像邊緣的白色像素點或者黑色像素點,其中:

      假設黑白二值文本圖像中,前景圖像(字符筆畫所占區(qū)域)區(qū)域中像素點的像素值為1,背景圖像像素點的像素值為0.位于字符圖像中第i行第j列的圖像邊緣像素點的像素值為p(i,j)。

      黑色像素點的判斷法則為:

      ①像素點p(i,j)的像素值g(p(i,j))=1;

      ②g(p(i-1,j))-g(p(i+1,j))|=1,

      g(p(i,j-1))-g(p(i,j+1))|=1。

      白色像素點的判斷法則為:

      ①像素點p(i,j)的像素值g(p(i,j))=0;

      ②|g(p(i-1,j))-g(p(i+1,j))|=1,

      |g(p(i,j-1))-g(p(i,j+1))|=1。

      較佳地,所述的字符圖像子塊的邊緣像素點的翻轉(zhuǎn)規(guī)則,根據(jù)水印信息位串將白色的像素點翻轉(zhuǎn)為黑色像素點或者將黑色像素點翻轉(zhuǎn)為白色像素點,具體操作為:

      翻轉(zhuǎn)黑色象素點,當嵌入的水印信息位串為0時,保持當前的黑色像素點不變,像素值為1;當嵌入的水印信息位串為1時,將當前的黑色像素點翻轉(zhuǎn)為白色像素點,像素值變?yōu)?。

      翻轉(zhuǎn)白色象素點,當嵌入的水印信息位串為0時,保持當前的白色像素點不變,像素值為0;當嵌入的水印信息位串為1時,將當前的白色像素點翻轉(zhuǎn)為黑色像素點,像素值變?yōu)?。

      較佳地,所述的翻轉(zhuǎn)集合u中的像素點,通過調(diào)節(jié)集合u中的嵌入密度參數(shù)k來進行翻轉(zhuǎn)點的重采樣,其中k為1≤k≤20的整數(shù)。即不是將集合中所有的像素點都用來翻轉(zhuǎn),而是僅對第k*n個象素點翻轉(zhuǎn),n=1,2,3...,k*n<n,其中n為集合u中所有象素點的個數(shù)。k越大時,用來翻轉(zhuǎn)的像素點個數(shù)越少,字符圖像的失真就越小,相應地,嵌入的水印信息容量越?。幌喾吹?,k越小時,用來翻轉(zhuǎn)的像素點個數(shù)越多,字符圖像的失真就越大,相應地,嵌入的水印信息容量越大。

      較佳地,所述的文件數(shù)據(jù)壓縮處理,將嵌入的水印后的二值文本圖像文件進行數(shù)據(jù)壓縮處理以獲得較小的文件體積,壓縮圖像編碼方法為:游程長度編碼(run-lengthcoding,rlc)、跳白塊編碼、方塊編碼、識別編碼、jbig(jointbi-levelimageexpertgroup)編碼。

      較佳地,所述的字符圖像子塊b,是指通過步驟六中獲取的字符編碼信息、步驟二中相同的圖像分辨率設置以及步驟一中相同的文字排版屬性信息,調(diào)用createfontindirect()函數(shù)生成hfont字體對象;然后調(diào)用getglyphoutline()函數(shù)生成標準的字符圖像子塊b。

      較佳地,所述的比對字符圖像子塊a和b,將字符圖像子塊b按照步驟三中的方法進行圖像邊緣檢測,得到像素點集合u;接著將圖像塊a和圖像塊b作對齊操作;然后按照u中記錄的像素點的位置依次比較a和b中相同位置處的圖像像素值,若相同,則嵌入的水印信息位串為0;否則為1。

      本發(fā)明提供了一種文本文檔中的信息隱藏裝置,包括如下部分:

      圖像轉(zhuǎn)換模塊,用于讀取電子格式的文本文件中所有字符編碼信息和文字排版屬性信息,將電子格式的文本文件轉(zhuǎn)換為黑白二值文本圖像文件;

      邊緣像素點檢測模塊,用于在黑白二值文本圖像文件中提取每個字符圖像子塊,并進行字符圖像邊緣像素點檢測,獲取邊緣象素點集合;

      水印信息嵌入模塊,用于確定字符圖像子塊的邊緣像素點的翻轉(zhuǎn)規(guī)則,通過邊緣象素點集合中的邊緣像素點值的翻轉(zhuǎn)來嵌入水印信息,從而實現(xiàn)文本文檔中的信息隱藏。

      進一步地,還包括文件數(shù)據(jù)壓縮模塊,用于對嵌入水印信息后的二值文本圖像文件進行文件數(shù)據(jù)壓縮處理。

      進一步地,還包括水印信息提取識別模塊,用于采用上面所述的方法實現(xiàn)水印信息的提取識別。

      本發(fā)明的有益效果如下:

      由于本發(fā)明中,水印信息的提取識別需要原始的字符圖像數(shù)據(jù)作為參照標準,沒有精確的原始字符圖像數(shù)據(jù)不能正確提取水印信息。而原始的字符圖像數(shù)據(jù)的生成需要多方面的信息:1)文字的字符編碼信息和排版屬性信息,比如字體名稱、字體大小、字體方向、字體樣式、字體的粗細;2)圖像分辨率;3)象素的采樣密度參數(shù)k。上述任何一個參數(shù)信息不一致,生成的字符圖像b都不正確,水印信息無法正確提取。尤其對于字體大小和字體方向的些許變化,字符圖像b都會差異很大;另外參數(shù)k的選擇方式越復雜,水印信息為0的翻轉(zhuǎn)的象素點的位置越隱蔽。因此,本發(fā)明所述方法的水印信息安全性較高。

      由于本發(fā)明中,將字符圖像塊b作為參考圖像,每個象素的修改可以代表1bit的信息,而每個字符圖像含有大量可以翻轉(zhuǎn)的邊緣點,比如字體字號為四號,字體名稱為仿宋的最簡單的漢字字符“一”,最大可以嵌入24bits信息,而結構更加復雜的漢字字符嵌入的信息容量更大。因此,本發(fā)明所述方法的水印信息容量較高。

      由于,本發(fā)明所述的通過字符圖像邊緣像素點翻轉(zhuǎn)嵌入水印信息的方法,每1bit信息的嵌入只翻轉(zhuǎn)了一個像素點,并且是字符圖像邊緣不易覺察的點,因此,嵌入水印信息后的二值文本圖像視覺效果好。

      由于本發(fā)明中,水印信息的嵌入只是通過象素值得比對和像素值的翻轉(zhuǎn)運算,沒有其他復雜運算,因此,水印信息嵌入和提取的算法實現(xiàn)簡單,計算速度快,效率較高。

      附圖說明

      圖1為本發(fā)明文本文檔中水印信息嵌入和提取的主流程圖;

      圖2為本發(fā)明中字體名稱為仿宋的漢字字符“一”的字符圖像邊緣可翻轉(zhuǎn)點集合示意圖;

      圖3為圖2所示的字符圖像塊,水印信息嵌入前后的效果對比示意圖,(a)為水印信息嵌入前,(b)為水印信息嵌入后;

      圖4為二值文本圖像中水印信息嵌入前后的整體效果示意圖,其中(a)水印信息嵌入前效果,(b)為水印信息嵌入后的效果;

      圖5為本發(fā)明中針對仿宋字體,漢字字符“大”,不同字體大小水印信息嵌入效果對比示意圖,其中(a)為小三號字體,(b)為小四號字體;

      圖6為本發(fā)明中針對楷體,漢字字符“大”,小三號字體,水印信息嵌入效果示意圖;

      圖7為本發(fā)明文本水印信息嵌入和提取的裝置結構圖。

      具體實施方式

      本下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,可以理解的是,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

      如圖1所示,是文本文檔中水印信息嵌入和提取方案的主流程圖,包括以下步驟:

      s101、首先讀取電子格式的文本文件中所有字符編碼信息和文字排版屬性信息。

      在本發(fā)明中,我們將電子格式的文本文件轉(zhuǎn)化為黑白二值文本圖像格式,然后切分出每一個獨立的字符圖像子塊,通過字符圖像邊緣像素點的修改進行水印信息嵌入。因此,將黑白文字轉(zhuǎn)為點陣圖像時,需要事先界定文字排版屬性信息,主要包括:字體名稱、字體大小、字體方向、字體樣式(偏斜體、斜體和正常)和字體粗細(粗體、細體和正常)信息。

      s102、將電子格式的文本文件轉(zhuǎn)換為黑白二值文本圖像文件。

      根據(jù)每個字符的編碼信息以及上述的文字排版屬性信息,就可以創(chuàng)建字體對象。獲取新創(chuàng)建的字體對象的點陣圖像數(shù)據(jù)時,還需要圖像分辨率信息,不同的圖像分辨率得到的點陣圖像數(shù)據(jù)大小不同。通常情況下,文本文件轉(zhuǎn)換為黑白二值文本圖像文件時,圖像分辨率為200dpi、300pdi、600dpi和1200dpi,當然原則上可以得到任何分辨率下的黑白二值文本圖像數(shù)據(jù)。

      s103、接著提取每個字符圖像子塊,并進行字符圖像邊緣像素點檢測,獲取邊緣象素點集合u。

      本發(fā)明所述方法,主要是通過修改每個單獨的字符圖像塊的筆畫邊緣像素點來嵌入水印信息,因此,在s102步驟得到黑白二值文本圖像文件后,通過字符切分來獲取每個字符圖像子塊。切分的方法主要有:標準切分法、基于識別的切分法、整體切分法以及前三種組合而成。標準切分方法通過對圖像本身分析尋找字符之間較為合理的切分點,主要是采用靜態(tài)的投影分析方法,該方法對于圖像質(zhì)量好、字與字之間有固定間距的文檔處理效果好,而對于字符粘連情況處理的很不理想;基于識別的方法提供了多個切分假設,然后對切分結構進行選擇得到最優(yōu)的切分結果,這種方法效果好,但是相對比較復雜、耗時,在實際中應用得很少;整體切分法則是把一個單詞作為一個整體來進行識別,這種方法雖然避免了單詞內(nèi)部切分的問題,但它依賴于現(xiàn)有的定義好的詞典,這大大限制了該方法的應用范圍。由于在本發(fā)明中,待切分的二值文本圖像是直接從電子格式文件轉(zhuǎn)換過來的,圖像質(zhì)量非常好,因此,優(yōu)選采用了標準切分方法。

      獲取每個字符圖像子塊數(shù)據(jù)后,需要進行字符圖像邊緣檢測。常用的圖像邊緣檢測的方法有:1)簡單邊緣模型;2)roberts邊緣檢測算子;3)sobel邊緣檢測算子;4)prewitt邊緣檢測算子;5)laplacianofguassian(log)算子;6)canny算子;7)形態(tài)學邊緣檢測。在本方法中,形態(tài)學邊緣檢測更適合,因為能使用膨脹粘合單個漢字成為文字段落塊,且算法簡單,效果較好。為此,我們選擇了形態(tài)學邊緣檢測方法,并對形態(tài)學的開閉運算做了如下改進:

      基于數(shù)學形態(tài)學里的膨脹與腐蝕理論,我們就可以先將文字膨脹,因為文字段落里,文字間存在一定的間隔,但此間隔相對文字的寬度和高度是很細小的。因此先使用膨脹方法,將段落內(nèi)的同行字橫向連接起來,再腐蝕恢復到原始尺寸,這時由于間隔部分已經(jīng)成為字符內(nèi)的區(qū)域了,所以腐蝕方法不會將恢復原始間隔。

      為了實現(xiàn)文字行間的融合,可以采用非正比的膨脹與腐蝕方法,多次膨脹后將不同行的文字融合成文字段落塊,形成文字區(qū)域的整體,再適當相同次數(shù)的腐蝕,恢復文字段落的原始尺寸。

      此外,在分離過程中的剔除圖像內(nèi)非文字圖片區(qū)域的時候,圖像識別敏感度大小的權衡也是個問題,如果敏感度太低,很多圖片區(qū)域也可能被誤認為文字區(qū)域,從而會進行接下來的區(qū)域檢測,那么結果就是這部分圖片區(qū)域也會被檢測標示出來。如果敏感度太高,那么檢測的效率又降低了,因此會就失去了很多應用的領域。

      進行字符圖像邊緣像素點檢測后,遍歷收集字符圖像邊緣的白色像素點或者黑色像素點,其中:

      假設黑白二值文本圖像中,前景圖像(字符筆畫所占區(qū)域)區(qū)域中像素點的像素值為1,背景圖像像素點的像素值為0.位于字符圖像中第i行第j列的圖像邊緣像素點的像素值為p(i,j)。

      黑色像素點的判斷法則為:

      ①像素點p(i,j)的像素值g(p(i,j))=1;

      ②|g(p(i-1,j))-g(p(i+1,j))|=1,

      |g(p(i,j-1))-g(p(i,j+1))|=1。

      白色像素點的判斷法則為:

      ①像素點p(i,j)的像素值g(p(i,j))=0;

      ②|g(p(i-1,j))-g(p(i+1,j))|=1,

      |g(p(i,j-1))-g(p(i,j+1))|=1。

      圖2為字體名稱為仿宋的漢字字符“一”的字符圖像邊緣黑色可翻轉(zhuǎn)點集合u示意圖。

      s104、確定字符圖像子塊的邊緣像素點的翻轉(zhuǎn)規(guī)則,通過u中的邊緣像素點值的翻轉(zhuǎn)來嵌入水印信息。

      所述的字符圖像子塊的邊緣像素點的翻轉(zhuǎn)規(guī)則,根據(jù)水印信息位串將白色的像素點翻轉(zhuǎn)為黑色像素點或者將黑色像素點翻轉(zhuǎn)為白色像素點,具體操作為:

      翻轉(zhuǎn)黑色象素點,當嵌入的水印信息位串為0時,保持當前的黑色像素點不變,像素值為1;當嵌入的水印信息位串為1時,將當前的黑色像素點翻轉(zhuǎn)為白色像素點,像素值變?yōu)?。

      翻轉(zhuǎn)白色象素點,當嵌入的水印信息位串為0時,保持當前的白色像素點不變,像素值為0;當嵌入的水印信息位串為1時,將當前的白色像素點翻轉(zhuǎn)為黑色像素點,像素值變?yōu)?。

      所述的翻轉(zhuǎn)集合u中的像素點,通過調(diào)節(jié)集合u中的嵌入密度參數(shù)k來進行翻轉(zhuǎn)點的重采樣,其中k為1≤k≤20的整數(shù)。即不是將集合中所有的邊緣像素點都用來翻轉(zhuǎn),而是僅對第k*n個象素點翻轉(zhuǎn),n=1,2,3...,k*n<n,其中n為集合u中所有象素點的個數(shù)。k越大時,用來翻轉(zhuǎn)的像素點個數(shù)越少,字符圖像的失真就越小,相應地,嵌入的水印信息容量越小;相反地,k越小時,用來翻轉(zhuǎn)的像素點個數(shù)越多,字符圖像的失真就越大,相應地,嵌入的水印信息容量越大。

      經(jīng)過k值的選擇,字符圖像的失真程度降低,同時也提高了水印信息的安全性,因為保持不變的像素值中有一部分是廢棄掉的,不代表水印信息位串“0”。當然k值的選擇函數(shù)越復雜,水印信息的安全性越高。

      由于本發(fā)明中,有標準字符圖像塊作為參照,只需要翻轉(zhuǎn)單個象素點嵌入水印信息,因此圖像失真小,視覺效果良好。比如圖3為圖2所示的字符圖像塊,水印信息嵌入前后的效果對比示意圖,(a)為水印信息嵌入前,(b)為水印信息嵌入后。

      圖4為整幅面的二值文本圖像中水印信息嵌入前后的整體效果示意圖,其中(a)為水印信息嵌入前的效果,(b)為水印信息嵌入后的效果。

      圖5為本發(fā)明中針對仿宋字體,漢字字符“大”,不同字體大小水印信息嵌入效果對比示意圖,其中(a)為小三號字體,可嵌入的水印信息容量上限為41bits;(b)為小四號字體,可嵌入的水印信息容量上限為33bits。

      圖6為本發(fā)明中針對楷體,漢字字符“大”,小三號字體,水印信息嵌入效果示意圖,可嵌入的水印信息容量上限為39bits。

      圖5和圖6中每一個子圖的左邊都為原始的字符圖像子塊顯示效果,右邊為翻轉(zhuǎn)象素點嵌入水印信息后的字符圖像字塊顯示效果。同時,該兩圖也再次說明文字排版屬性信息不同,生成的字符圖像子塊是不同的,可修改的邊緣點的集合也不同,進而水印信息容量也不同。

      s105、將嵌入水印信息后的二值文本圖像文件再進行文件數(shù)據(jù)壓縮處理。

      由于電子格式的文本文檔經(jīng)過了圖像化處理,文件體積相對變大很多。為了衡量水印信息嵌入效率(水印信息容量除以文件體積大小),需要對嵌入水印信息后的二值文本圖像文件進行數(shù)據(jù)壓縮處理,以獲得較小的文件體積。相應的壓縮圖像編碼方法為:游程長度編碼(run-lengthcoding,rlc)、跳白塊編碼、方塊編碼、識別編碼、jbig(jointbi-levelimageexpertgroup)編碼。由于jbig編碼對于文字圖像壓縮比例最高,本發(fā)明中選擇了jbig編碼方法進行圖像壓縮。

      s106、水印信息提取識別時,首先對壓縮文件進行解壓縮操作,然后通過ocr獲取黑白二值文本圖像文件中每個字符的編碼信息和切分后的字符圖像子塊a。

      s107、根據(jù)步驟六中獲取的字符編碼信息,以及步驟一中相同的文字排版屬性信息,根據(jù)操作系統(tǒng)中預裝的標準字模圖像重新生成字符圖像子塊b。

      所述的字符圖像子塊b,是指通過步驟s106中獲取的字符編碼信息、步驟s102中相同的圖像分辨率設置以及步驟一中相同的文字排版屬性信息,調(diào)用createfontindirect()函數(shù)生成hfont字體對象;然后調(diào)用getglyphoutline()函數(shù)從系統(tǒng)安裝的turetype字庫中提取字符的位圖數(shù)據(jù),從而生成標準的字符圖像塊b。該函數(shù)的原型如下:

      dwordgetglyphoutline(hdchdc,uintuchar,uintuformat,lpglyphmetricslpgm,dwordcbbuffer,lpvoidlpvbuffer,constmat2*lpmat2)。

      其中uchar:指定被返回其數(shù)據(jù)的字符,即步驟六中獲取的字符編碼信息。

      s108、通過比對字符圖像塊a和b的邊緣點的像素值的異同來提取水印信息。

      所述的比對字符圖像塊a和b,將字符圖像塊b按照步驟s103中的方法進行圖像邊緣檢測,得到邊緣像素點集合u;接著將圖像塊a和圖像塊b作對齊操作;然后按照u中記錄的像素點的位置依次比較a和b中相同位置處的圖像像素值,若相同,則嵌入的水印信息位串為0;否則為1。無論是黑點翻轉(zhuǎn)和白點翻轉(zhuǎn),都是嵌入水印信息位串為“1”時,才進行翻轉(zhuǎn)操作;嵌入水印信息位串為“0”時,保持像素值不變,所以水印信息提取時,只需要比較圖像a和圖b中相同位置處的像素值異同即可。

      圖7為本發(fā)明文本水印信息嵌入和提取的裝置結構圖。該裝置包括:

      圖像轉(zhuǎn)換模塊201,用于讀取電子格式的文本文件中所有字符編碼信息和文字排版屬性信息,將電子格式的文本文件轉(zhuǎn)換為黑白二值文本圖像文件;

      邊緣像素點檢測模塊202,用于在黑白二值文本圖像文件中提取每個字符圖像子塊,并進行字符圖像邊緣像素點檢測,獲取邊緣象素點集合;

      水印信息嵌入模塊203,用于確定字符圖像子塊的邊緣像素點的翻轉(zhuǎn)規(guī)則,通過邊緣象素點集合中的邊緣像素點值的翻轉(zhuǎn)來嵌入水印信息,從而實現(xiàn)文本文檔中的信息隱藏;

      文件數(shù)據(jù)壓縮模塊204,用于對嵌入水印信息后的二值文本圖像文件進行文件數(shù)據(jù)壓縮處理;

      水印信息提取識別模塊205,用于采用上面所述的方法實現(xiàn)水印信息的提取識別。

      顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。

      當前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1