亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種處理圖像的方法和裝置制造方法

文檔序號(hào):6508475閱讀:175來源:國(guó)知局
一種處理圖像的方法和裝置制造方法
【專利摘要】本發(fā)明公開一種處理圖像的方法和裝置。該方法包括以下步驟:a.讀取原始圖像,提取該圖像的LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的初始LSB數(shù)據(jù)流,b.編碼初始LSB數(shù)據(jù)流,得到編碼LSB數(shù)據(jù)流,該編碼LSB數(shù)據(jù)流包括信息嵌入?yún)^(qū),c.在所述信息嵌入?yún)^(qū)中嵌入信息,d.將包含所述信息的編碼LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到嵌入信息的圖像。
【專利說明】一種處理圖像的方法和裝置

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及圖像處理,并且尤其涉及在圖像中嵌入信息以及提取該信息的方法和
>J-U ρ?α裝直。

【背景技術(shù)】
[0002]現(xiàn)有技術(shù)中的24位BMP圖像冗余空間信息隱藏算法不具備普遍適用性,因?yàn)槿绻枰度腚[藏信息的圖像不存在冗余空間,即該圖像每行像素個(gè)數(shù)為4的整數(shù)倍,則該方法無法實(shí)現(xiàn)在圖像數(shù)據(jù)中嵌入隱藏信息。因此,該方法無法利用圖像內(nèi)容本身的冗余特性進(jìn)一步提升嵌入信息的容量,而且嵌入效率低。


【發(fā)明內(nèi)容】

[0003]根據(jù)本發(fā)明的一個(gè)目的,公開一種處理圖像的方法,包括以下步驟:a.讀取原始圖像,提取該圖像的LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的初始LSB數(shù)據(jù)流,b.編碼初始LSB數(shù)據(jù)流,得到編碼LSB數(shù)據(jù)流,該編碼LSB數(shù)據(jù)流包括信息嵌入?yún)^(qū),c.在所述信息嵌入?yún)^(qū)中嵌入信息,d.將包含所述信息的編碼LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到嵌入信息的圖像。
[0004]根據(jù)本發(fā)明的另一個(gè)目的,公開一種處理圖像的裝置,包括圖形數(shù)據(jù)接口模塊和數(shù)據(jù)編碼模塊,其中,圖形數(shù)據(jù)接口模塊配置為讀取原始圖像,提取該圖像的LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的初始LSB數(shù)據(jù)流,數(shù)據(jù)編碼模塊配置為編碼初始LSB數(shù)據(jù)流,得到編碼LSB數(shù)據(jù)流,該編碼LSB數(shù)據(jù)流包括信息嵌入?yún)^(qū),圖形數(shù)據(jù)接口模塊進(jìn)一步配置為在所述信息嵌入?yún)^(qū)中嵌入信息,圖形數(shù)據(jù)接口模塊進(jìn)一步配置為將包含所述信息的編碼LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到嵌入信息的圖像。
[0005]本發(fā)明提出的無損信息嵌入、提取方案通用性強(qiáng)、成本低、無硬件依賴性。尤其是,針對(duì)背景復(fù)雜的電子票據(jù)圖片,采用傳統(tǒng)壓縮、編碼技術(shù)對(duì)其LSB數(shù)據(jù)壓縮時(shí)壓縮效率極低,導(dǎo)致無法嵌入水印數(shù)據(jù)。本發(fā)明提出的改進(jìn)的LSB編碼、解碼方法,充分利用了圖像游程冗余信息,大大提高了 LSB數(shù)據(jù)的冗余利用率,提高了信息嵌入容量,因此即使在背景復(fù)雜的電子票據(jù)圖片中也能夠?qū)崿F(xiàn)水印數(shù)據(jù)的嵌入。

【專利附圖】

【附圖說明】
[0006]在參照附圖閱讀了本發(fā)明的【具體實(shí)施方式】以后,本領(lǐng)域技術(shù)人員將會(huì)更清楚地了解本發(fā)明的各個(gè)方面。本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解的是,這些附圖僅僅用于配合【具體實(shí)施方式】說明本發(fā)明的技術(shù)方案,而并非意在對(duì)本發(fā)明的保護(hù)范圍構(gòu)成限制。
[0007]圖1是根據(jù)本發(fā)明實(shí)施例的在圖像中嵌入信息的方法的流程圖。
[0008]圖2是根據(jù)本發(fā)明實(shí)施例的在圖像中嵌入信息的方法的示意圖。
[0009]圖3是編碼LSB數(shù)據(jù)流的格式示意圖。
[0010]圖4是根據(jù)本發(fā)明實(shí)施例的從圖像中提取信息的方法的流程圖。
[0011]圖5是用于實(shí)現(xiàn)本發(fā)明的方法的處理圖像的裝置示意圖。

【具體實(shí)施方式】
[0012]下面參照附圖,對(duì)本發(fā)明的【具體實(shí)施方式】作進(jìn)一步的詳細(xì)描述。在下面的描述中,為了解釋的目的,陳述許多具體細(xì)節(jié)以便提供對(duì)實(shí)施例的一個(gè)或多個(gè)方面的透徹理解。然而,對(duì)于本領(lǐng)域技術(shù)人員可以顯而易見的是,可以這些具體細(xì)節(jié)的較少程度來實(shí)踐各實(shí)施例的一個(gè)或多個(gè)方面。因此下面的描述不被視為局限性的,而是通過所附權(quán)利要求來限定保護(hù)范圍。
[0013]圖1是根據(jù)本發(fā)明實(shí)施例的在圖像中嵌入信息的方法的流程圖。圖2是根據(jù)本發(fā)明實(shí)施例的在圖像中嵌入信息的方法的示意圖。如圖1所示,根據(jù)本發(fā)明實(shí)施例的在圖像中嵌入信息的方法,大體可以包括以下4個(gè)步驟:
a.讀取原始圖像,提取該圖像的LSB (Least Significant Bit,最低有效位)數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的初始LSB數(shù)據(jù)流。
[0014]b.編碼初始LSB數(shù)據(jù)流,得到編碼LSB數(shù)據(jù)流,該編碼LSB數(shù)據(jù)流包括信息嵌入?yún)^(qū)。如下將要描述的,通過壓縮初始LSB數(shù)據(jù)流使得產(chǎn)生多余的位作為信息嵌入?yún)^(qū)。
[0015]c.在所述信息嵌入?yún)^(qū)中嵌入信息。信息可以是附加信息,例如水印。本發(fā)明的一個(gè)應(yīng)用可以在電子票據(jù)中加入水印。
[0016]d.將包含所述信息的編碼LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到嵌入信息的圖像。
[0017]在本發(fā)明的一個(gè)實(shí)施例中,在步驟b中,對(duì)于所述初始LSB數(shù)據(jù)流中游程長(zhǎng)度為η并且η > 2的數(shù)據(jù)進(jìn)行壓縮得到壓縮碼,從而產(chǎn)生由初始LSB數(shù)據(jù)流中的非壓縮碼和壓縮碼組成的編碼數(shù)據(jù),以及所述信息嵌入?yún)^(qū),其中,壓縮碼由3位8進(jìn)制符號(hào)組成,其中前2位由兩個(gè)相同的8進(jìn)制數(shù)組成前導(dǎo)符,第3位是碼長(zhǎng)度,其中,前導(dǎo)符用于指示壓縮碼的符號(hào),碼長(zhǎng)度用于指示壓縮碼的長(zhǎng)度,當(dāng)η ( 7時(shí)碼長(zhǎng)度為游程長(zhǎng)度,當(dāng)η > 7時(shí),由于第3位8進(jìn)制數(shù)最多能夠表示的長(zhǎng)度為,因而設(shè)定碼長(zhǎng)度為7,這里η是自然數(shù)。
[0018]這里,游程長(zhǎng)度是指LSB數(shù)據(jù)流中值相同并且連續(xù)的符號(hào)的最大長(zhǎng)度,例如,8進(jìn)制初始數(shù)據(jù)流0002222277中,符號(hào)O的游程長(zhǎng)度是3,對(duì)應(yīng)于該游程長(zhǎng)度的數(shù)據(jù)是000,符號(hào)2的游程長(zhǎng)度是5,對(duì)應(yīng)于該游程長(zhǎng)度的數(shù)據(jù)是22222。對(duì)于游程長(zhǎng)度大于2的數(shù)據(jù)進(jìn)行游程編碼,從而壓縮初始LSB數(shù)據(jù)流0002222277中的連續(xù)并且相同的符號(hào),得到編碼LSB數(shù)據(jù)流00322577,這里003和225是壓縮碼,003由前導(dǎo)符00和碼長(zhǎng)度3組成,225由前導(dǎo)符22和碼長(zhǎng)度5組成;77是非壓縮碼,即初始LSB數(shù)據(jù)流的一部分。
[0019]在本發(fā)明的一個(gè)實(shí)施例中,在步驟b中,還產(chǎn)生編碼位圖,用于識(shí)別編碼數(shù)據(jù)中的由3位8進(jìn)制符號(hào)組成的數(shù)據(jù)段是非壓縮碼還是壓縮碼,其中該數(shù)據(jù)段前2位是兩個(gè)相同的數(shù),第3位是> 3的數(shù)。如前文所述,編碼數(shù)據(jù)包括非壓縮碼和壓縮碼,因此需要在解碼的時(shí)候識(shí)別非壓縮碼和壓縮碼。由于本發(fā)明對(duì)游程長(zhǎng)度大于等于3的數(shù)據(jù)進(jìn)行壓縮,因此對(duì)于編碼數(shù)據(jù)中游程為I的數(shù)據(jù)或者游程為2但是該游程為2的數(shù)據(jù)的后一符號(hào)小于3的情況,可以確定為非壓縮碼。但是對(duì)于以下一種情況需要進(jìn)行進(jìn)一步判斷,即非壓縮碼和壓縮碼在編碼數(shù)據(jù)中具有相同的格式。例如,對(duì)于8進(jìn)制數(shù)據(jù)流00116111111中游程長(zhǎng)度大于2的游程數(shù)據(jù)進(jìn)行游程編碼的結(jié)果是00116116。可知,編碼數(shù)據(jù)00116116中第一次出現(xiàn)的116是非壓縮碼,第二次出現(xiàn)的116是壓縮碼。編碼位圖可以是2進(jìn)制位流,其中O標(biāo)識(shí)非壓縮碼的數(shù)據(jù)段,I標(biāo)識(shí)壓縮碼的數(shù)據(jù)段。
[0020]以下描述一個(gè)實(shí)例,例如數(shù)據(jù)流12344200500000111111,其中符號(hào)O和I的游程長(zhǎng)度大于等于3,那么編碼數(shù)據(jù)為123442005005116,其中123442005為非壓縮碼,005116為壓縮碼。如上所述,僅將游程長(zhǎng)度為2并且該游程數(shù)據(jù)的后一個(gè)符號(hào)大于等于3的游程數(shù)據(jù)標(biāo)識(shí)為非壓縮碼,以及將游程長(zhǎng)度大于等于3的游程數(shù)據(jù)標(biāo)記為非壓縮碼,那么產(chǎn)生的編碼位圖為011。對(duì)照該位圖解碼上述編碼數(shù)據(jù)時(shí),對(duì)于游程長(zhǎng)度為I的符號(hào)“123”直接判定為非壓縮碼,對(duì)于游程長(zhǎng)度為2并且該游程數(shù)據(jù)的后一個(gè)的符號(hào)小于3的游程數(shù)據(jù)“442”也直接判定為非壓縮碼,對(duì)于游程長(zhǎng)度為2并且該游程數(shù)據(jù)的后一個(gè)符號(hào)大于等于3的游程數(shù)據(jù)“005”則通過讀取編碼位圖來確定其為非壓縮碼,對(duì)于“005116”則通過讀取編碼位圖來確定其為壓縮碼從而將其解碼為“00000111111”。
[0021]圖3是編碼LSB數(shù)據(jù)流的格式示意圖。如圖所示,編碼LSB數(shù)據(jù)流可以由4個(gè)部分組成,編碼位圖長(zhǎng)度,編碼位圖、編碼數(shù)據(jù)、信息嵌入?yún)^(qū)。
[0022]以下一個(gè)實(shí)施例具體地描述進(jìn)行編碼得到上述格式的編碼LSB數(shù)據(jù)流采用的步驟。步驟b具體包括以下步驟:
(1)將8進(jìn)制初始LSB數(shù)據(jù)流的第I個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),設(shè)定編碼位圖為空,設(shè)定編碼數(shù)據(jù)為空;
(2)若當(dāng)前符號(hào)為空則執(zhí)行步驟(7),否則執(zhí)行步驟(3);
(3)計(jì)算當(dāng)前符號(hào)的游程長(zhǎng)度,
若游程長(zhǎng)度為I則執(zhí)行步驟(4),
若游程長(zhǎng)度為2則執(zhí)行步驟(5),
若游程長(zhǎng)度大于2并且小于8,則設(shè)定碼長(zhǎng)度為游程長(zhǎng)度,若游程長(zhǎng)度大于7,則設(shè)定碼長(zhǎng)度為游程長(zhǎng)度,并且執(zhí)行步驟(6);
(4)將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,若存在下一符號(hào),則設(shè)定該下一符號(hào)位當(dāng)前符號(hào),否則設(shè)定當(dāng)前符號(hào)為空,執(zhí)行步驟(2);
(5)若與當(dāng)前符號(hào)不同的下一符號(hào)大于等于3,則在編碼位圖部分寫入0,將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,設(shè)定該下一符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2),否則將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,設(shè)定該下一符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2);
(6)保留當(dāng)前符號(hào)的數(shù)據(jù)的前2位作為前導(dǎo)符,將前導(dǎo)符和碼長(zhǎng)度按序?qū)懭刖幋a數(shù)據(jù)部分,并在編碼位圖部分寫入1,若存在未編碼數(shù)據(jù),則將當(dāng)前未編碼數(shù)據(jù)的第一個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),否則將當(dāng)前符號(hào)設(shè)置為空,執(zhí)行步驟(2);
(7)計(jì)算編碼位圖長(zhǎng)度,按照編碼位圖長(zhǎng)度、編碼位圖、編碼數(shù)據(jù)、信息嵌入?yún)^(qū)的格式進(jìn)行重組得到編碼LSB數(shù)據(jù)流,編碼結(jié)束。
[0023]本領(lǐng)域的技術(shù)人員可以理解,還可以采用其它方式來實(shí)施本發(fā)明。
[0024]本發(fā)明的另一個(gè)方面涉及通嵌入信息的圖像中提取該信息以及將該圖像還原為初始圖像。如圖4所示,本發(fā)明的一個(gè)提取該信息的實(shí)施例包括以下步驟:e.對(duì)嵌入信息的圖像提取LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的編碼LSB數(shù)據(jù)流。f.提取編碼LSB數(shù)據(jù)流中嵌入的信息,并且解碼編碼LSB數(shù)據(jù)流得到初始LSB數(shù)據(jù)流。g.將初始LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到原始圖像。
[0025]在一個(gè)實(shí)施例中,步驟f包括根據(jù)編碼位圖解碼編碼LSB數(shù)據(jù)流。
[0026]在一個(gè)實(shí)施例中,解碼編碼LSB數(shù)據(jù)流的步驟包括:
(O讀取編碼LSB數(shù)據(jù)流,將第一個(gè)8進(jìn)制數(shù)設(shè)定為當(dāng)前符號(hào);
(2)若當(dāng)前符號(hào)為空則執(zhí)行步驟(7),否則執(zhí)行步驟(3);
(3)統(tǒng)計(jì)當(dāng)前符號(hào)的游程長(zhǎng)度,若游程長(zhǎng)度為I則執(zhí)行步驟(4);否則當(dāng)前符號(hào)與其下一位符號(hào)構(gòu)成前導(dǎo)符,執(zhí)行步驟(5);
(4)將當(dāng)前符號(hào)插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定當(dāng)前符號(hào)后一位符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟
(2)。
[0027](5)若前導(dǎo)符后一位符號(hào)小于等于2,則將前導(dǎo)符插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定前導(dǎo)符后一位符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2),否則執(zhí)行步驟(6);
(6)讀取并刪除編碼位圖的第I位,
若該位為0,則將前導(dǎo)符插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定前導(dǎo)符后一位符號(hào)為當(dāng)前符號(hào);
若該位為1,則判斷前導(dǎo)符后I位為碼長(zhǎng)度,根據(jù)該長(zhǎng)度在解碼數(shù)據(jù)區(qū)末尾補(bǔ)齊解碼數(shù)據(jù),將當(dāng)前符號(hào)后第三個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),執(zhí)行步驟(2);
(7)解碼結(jié)束。
[0028]下面描述用于實(shí)現(xiàn)本發(fā)明的上述方法的處理圖像的裝置。如圖5所示,根據(jù)本發(fā)明實(shí)施例的處理圖像的裝置包括數(shù)據(jù)編碼模塊和圖形數(shù)據(jù)接口模塊。圖形數(shù)據(jù)接口模塊配置為讀取圖片數(shù)據(jù),將LSB位數(shù)據(jù)轉(zhuǎn)換8進(jìn)制流,傳遞給數(shù)據(jù)編碼模塊,以及將嵌入信息與數(shù)據(jù)編碼模塊生成的編碼LSB數(shù)據(jù)流合并,并將生成新的LSB數(shù)據(jù)流嵌入圖像的最低有效位中。數(shù)據(jù)編碼模塊配置為獲取圖形數(shù)據(jù)接口模塊提供的數(shù)據(jù),進(jìn)行編(解)碼操作,將結(jié)果傳遞給圖形數(shù)據(jù)接口模塊。
[0029]根據(jù)本發(fā)明實(shí)施例的一種處理圖像的裝置,包括圖形數(shù)據(jù)接口模塊和數(shù)據(jù)編碼模塊,其中,
圖形數(shù)據(jù)接口模塊配置為讀取原始圖像,提取該圖像的LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的初始LSB數(shù)據(jù)流,
數(shù)據(jù)編碼模塊配置為編碼初始LSB數(shù)據(jù)流,得到編碼LSB數(shù)據(jù)流,該編碼LSB數(shù)據(jù)流包括信息嵌入?yún)^(qū),
圖形數(shù)據(jù)接口模塊進(jìn)一步配置為在所述信息嵌入?yún)^(qū)中嵌入信息,
圖形數(shù)據(jù)接口模塊進(jìn)一步配置為將包含所述信息的編碼LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到嵌入信息的圖像。
[0030]在一個(gè)實(shí)施例中,數(shù)據(jù)編碼模塊配置成:
對(duì)于所述初始LSB數(shù)據(jù)流中游程長(zhǎng)度為η并且η > 2的數(shù)據(jù)進(jìn)行壓縮得到壓縮碼,從而產(chǎn)生由初始LSB數(shù)據(jù)流中的非壓縮碼和壓縮碼組成的編碼數(shù)據(jù),以及所述信息嵌入?yún)^(qū),其中,
壓縮碼由3位8進(jìn)制符號(hào)組成,其中前2位由兩個(gè)相同的8進(jìn)制數(shù)組成前導(dǎo)符,第3位是碼長(zhǎng)度,其中,
前導(dǎo)符用于指示壓縮碼的符號(hào),碼長(zhǎng)度用于指示壓縮碼的長(zhǎng)度,
當(dāng)η < 7時(shí)碼長(zhǎng)度為游程長(zhǎng)度,當(dāng)η > 7時(shí),碼長(zhǎng)度為7。
[0031 ] 在一個(gè)實(shí)施例中,數(shù)據(jù)編碼模塊配置成: 還產(chǎn)生編碼位圖,用于識(shí)別編碼數(shù)據(jù)中的由3位8進(jìn)制符號(hào)組成的數(shù)據(jù)段是非壓縮碼還是壓縮碼,其中該數(shù)據(jù)段前2位是兩個(gè)相同的數(shù),第3位是> 3的數(shù)。
[0032]在一個(gè)實(shí)施例中,數(shù)據(jù)編碼模塊配置成:
(1)將8進(jìn)制初始LSB數(shù)據(jù)流的第I個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),設(shè)定編碼位圖為空,設(shè)定編碼數(shù)據(jù)為空;
(2)若當(dāng)前符號(hào)為空則執(zhí)行步驟(7),否則執(zhí)行步驟(3);
(3)計(jì)算當(dāng)前符號(hào)的游程長(zhǎng)度,
若游程長(zhǎng)度為I則執(zhí)行步驟(4),
若游程長(zhǎng)度為2則執(zhí)行步驟(5),
若游程長(zhǎng)度大于2并且小于8,則設(shè)定碼長(zhǎng)度為游程長(zhǎng)度,若游程長(zhǎng)度大于7,則設(shè)定碼長(zhǎng)度為游程長(zhǎng)度,并且執(zhí)行步驟(6);
(4)將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,若存在下一符號(hào),則設(shè)定該下一符號(hào)位當(dāng)前符號(hào),否則設(shè)定當(dāng)前符號(hào)為空,執(zhí)行步驟(2);
(5)若與當(dāng)前符號(hào)不同的下一符號(hào)大于等于3,則在編碼位圖部分寫入0,將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,設(shè)定該下一符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2),否則將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,設(shè)定該下一符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2);
(6)保留當(dāng)前符號(hào)的數(shù)據(jù)的前2位作為前導(dǎo)符,將前導(dǎo)符和碼長(zhǎng)度按序?qū)懭刖幋a數(shù)據(jù)部分,并在編碼位圖部分寫入1,若存在未編碼數(shù)據(jù),則將當(dāng)前未編碼數(shù)據(jù)的第一個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),否則將當(dāng)前符號(hào)設(shè)置為空,執(zhí)行步驟(2);
(7)計(jì)算編碼位圖長(zhǎng)度,按照編碼位圖長(zhǎng)度、編碼位圖、編碼數(shù)據(jù)、信息嵌入?yún)^(qū)的的格式進(jìn)行重組得到編碼LSB數(shù)據(jù)流,編碼結(jié)束。
[0033]在一個(gè)實(shí)施例中,數(shù)據(jù)編碼模塊配置成:
e.對(duì)嵌入信息的圖像提取LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的編碼LSB數(shù)據(jù)流,
f.提取編碼LSB數(shù)據(jù)流中嵌入的信息,并且解碼編碼LSB數(shù)據(jù)流得到初始LSB數(shù)據(jù)流,
g.將初始LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到原始圖像。
[0034]在一個(gè)實(shí)施例中,數(shù)據(jù)編碼模塊配置成:
(O讀取編碼LSB數(shù)據(jù)流,將第一個(gè)8進(jìn)制數(shù)設(shè)定為當(dāng)前符號(hào);
(2)若當(dāng)前符號(hào)為空則執(zhí)行步驟(7),否則執(zhí)行步驟(3);
(3)統(tǒng)計(jì)當(dāng)前符號(hào)的游程長(zhǎng)度,若游程長(zhǎng)度為I則執(zhí)行步驟(4);否則當(dāng)前符號(hào)與其下一位符號(hào)構(gòu)成前導(dǎo)符,執(zhí)行步驟(5);
(4)將當(dāng)前符號(hào)插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定當(dāng)前符號(hào)后一位符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟
(2)。
[0035](5)若前導(dǎo)符后一位符號(hào)小于等于2,則將前導(dǎo)符插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定前導(dǎo)符后一位符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2),否則執(zhí)行步驟(6);
(6)讀取并刪除編碼位圖的第I位,
若該位為0,則將前導(dǎo)符插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定前導(dǎo)符后一位符號(hào)為當(dāng)前符號(hào);
若該位為1,則判斷前導(dǎo)符后I位為碼長(zhǎng)度,根據(jù)該長(zhǎng)度在解碼數(shù)據(jù)區(qū)末尾補(bǔ)齊解碼數(shù)據(jù),將當(dāng)前符號(hào)后第三個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),執(zhí)行步驟(2); (7)解碼結(jié)束。
[0036]通過以上實(shí)施方式的描述,本領(lǐng)域中的普通技術(shù)人員能夠理解,在不偏離本發(fā)明的精神和范圍的情況下,還可以對(duì)本發(fā)明的【具體實(shí)施方式】作各種變更和替換。這些變更和替換都落在本發(fā)明權(quán)利要求書所限定的范圍內(nèi)。
【權(quán)利要求】
1.一種處理圖像的方法,其特征在于,包括以下步驟: a.讀取原始圖像,提取該圖像的LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的初始LSB數(shù)據(jù)流, b.編碼初始LSB數(shù)據(jù)流,得到編碼LSB數(shù)據(jù)流,該編碼LSB數(shù)據(jù)流包括信息嵌入?yún)^(qū), c.在所述信息嵌入?yún)^(qū)中嵌入信息, d.將包含所述信息的編碼LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到嵌入信息的圖像。
2.如權(quán)利要求1所述的方法,其特征在于, 在步驟b中,對(duì)于所述初始LSB數(shù)據(jù)流中游程長(zhǎng)度為η并且η > 2的數(shù)據(jù)進(jìn)行壓縮得到壓縮碼,從而產(chǎn)生由初始LSB數(shù)據(jù)流中的非壓縮碼和壓縮碼組成的編碼數(shù)據(jù),以及所述信息嵌入?yún)^(qū),其中, 壓縮碼由3位8進(jìn)制符號(hào)組成,其中前2位由兩個(gè)相同的8進(jìn)制數(shù)組成前導(dǎo)符,第3位是碼長(zhǎng)度,其中, 前導(dǎo)符用于指示壓縮碼的符號(hào),碼長(zhǎng)度用于指示壓縮碼的長(zhǎng)度, 當(dāng)η < 7時(shí)碼長(zhǎng)度為游程長(zhǎng)度,當(dāng)η > 7時(shí),碼長(zhǎng)度為7。
3.如權(quán)利要求2所述的方法,其特征在于, 在步驟b中,還產(chǎn)生編碼位圖,用于識(shí)別編碼數(shù)據(jù)中的由3位8進(jìn)制符號(hào)組成的數(shù)據(jù)段是非壓縮碼還是壓縮碼,其中該數(shù)據(jù)段前2位是兩個(gè)相同的數(shù),第3位是> 3的數(shù)。
4.如權(quán)利要求3所述的方法,其特征在于, 編碼位圖是2進(jìn)制位流,其中O標(biāo)識(shí)非壓縮碼的數(shù)據(jù)段,I標(biāo)識(shí)壓縮碼的數(shù)據(jù)段。
5.如權(quán)利要求4所述的方法,其特征在于, 步驟b具體包括以下步驟: (1)將8進(jìn)制初始LSB數(shù)據(jù)流的第I個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),設(shè)定編碼位圖為空,設(shè)定編碼數(shù)據(jù)為空; (2)若當(dāng)前符號(hào)為空則執(zhí)行步驟(7),否則執(zhí)行步驟(3); (3)計(jì)算當(dāng)前符號(hào)的游程長(zhǎng)度, 若游程長(zhǎng)度為I則執(zhí)行步驟(4), 若游程長(zhǎng)度為2則執(zhí)行步驟(5), 若游程長(zhǎng)度大于2并且小于8,則設(shè)定碼長(zhǎng)度為游程長(zhǎng)度,若游程長(zhǎng)度大于7,則設(shè)定碼長(zhǎng)度為游程長(zhǎng)度,并且執(zhí)行步驟(6); (4)將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,若存在下一符號(hào),則設(shè)定該下一符號(hào)位當(dāng)前符號(hào),否則設(shè)定當(dāng)前符號(hào)為空,執(zhí)行步驟(2); (5)若與當(dāng)前符號(hào)不同的下一符號(hào)大于等于3,則在編碼位圖部分寫入O,將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,設(shè)定該下一符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2),否則將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,設(shè)定該下一符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2); (6)保留當(dāng)前符號(hào)的數(shù)據(jù)的前2位作為前導(dǎo)符,將前導(dǎo)符和碼長(zhǎng)度按序?qū)懭刖幋a數(shù)據(jù)部分,并在編碼位圖部分寫入1,若存在未編碼數(shù)據(jù),則將當(dāng)前未編碼數(shù)據(jù)的第一個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),否則將當(dāng)前符號(hào)設(shè)置為空,執(zhí)行步驟(2); (7)計(jì)算編碼位圖長(zhǎng)度,按照編碼位圖長(zhǎng)度、編碼位圖、編碼數(shù)據(jù)、信息嵌入?yún)^(qū)的的格式進(jìn)行重組得到編碼LSB數(shù)據(jù)流,編碼結(jié)束。
6.如權(quán)利要求5所述的方法,其特征在于,還包括以下步驟: e.對(duì)嵌入信息的圖像提取LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的編碼LSB數(shù)據(jù)流, f.提取編碼LSB數(shù)據(jù)流中嵌入的信息,并且解碼編碼LSB數(shù)據(jù)流得到初始LSB數(shù)據(jù)流, g.將初始LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到原始圖像。
7.如權(quán)利要求6所述的方法,其特征在于, 步驟f包括根據(jù)編碼位圖解碼編碼LSB數(shù)據(jù)流。
8.如權(quán)利要求7所述的方法,其特征在于, 解碼編碼LSB數(shù)據(jù)流的步驟包括: (1)讀取編碼LSB數(shù)據(jù)流,將第一個(gè)8進(jìn)制數(shù)設(shè)定為當(dāng)前符號(hào); (2)若當(dāng)前符號(hào)為空則執(zhí)行步驟(7),否則執(zhí)行步驟(3); (3)統(tǒng)計(jì)當(dāng)前符號(hào)的游程長(zhǎng)度,若游程長(zhǎng)度為I則執(zhí)行步驟(4);否則當(dāng)前符號(hào)與其下一位符號(hào)構(gòu)成前導(dǎo)符,執(zhí)行步驟(5); (4)將當(dāng)前符號(hào)插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定當(dāng)前符號(hào)后一位符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2); (5)若前導(dǎo)符后一位符號(hào)小于等于2,則將前導(dǎo)符插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定前導(dǎo)符后一位符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2),否則執(zhí)行步驟(6); (6)讀取并刪除編碼位圖的第I位, 若該位為O,則將前導(dǎo)符插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定前導(dǎo)符后一位符號(hào)為當(dāng)前符號(hào); 若該位為1,則判斷前導(dǎo)符后I位為碼長(zhǎng)度,根據(jù)該長(zhǎng)度在解碼數(shù)據(jù)區(qū)末尾補(bǔ)齊解碼數(shù)據(jù),將當(dāng)前符號(hào)后第三個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),執(zhí)行步驟(2); (7)解碼結(jié)束。
9.一種處理圖像的裝置,包括圖形數(shù)據(jù)接口模塊和數(shù)據(jù)編碼模塊,其中, 圖形數(shù)據(jù)接口模塊配置為讀取原始圖像,提取該圖像的LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的初始LSB數(shù)據(jù)流, 數(shù)據(jù)編碼模塊配置為編碼初始LSB數(shù)據(jù)流,得到編碼LSB數(shù)據(jù)流,該編碼LSB數(shù)據(jù)流包括信息嵌入?yún)^(qū), 圖形數(shù)據(jù)接口模塊進(jìn)一步配置為在所述信息嵌入?yún)^(qū)中嵌入信息, 圖形數(shù)據(jù)接口模塊進(jìn)一步配置為將包含所述信息的編碼LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到嵌入信息的圖像。
10.如權(quán)利要求9所述的裝置,其特征在于,數(shù)據(jù)編碼模塊進(jìn)一步配置成: 對(duì)于所述初始LSB數(shù)據(jù)流中游程長(zhǎng)度為η并且η > 2的數(shù)據(jù)進(jìn)行壓縮得到壓縮碼,從而產(chǎn)生由初始LSB數(shù)據(jù)流中的非壓縮碼和壓縮碼組成的編碼數(shù)據(jù),以及所述信息嵌入?yún)^(qū),其中, 壓縮碼由3位8進(jìn)制符號(hào)組成,其中前2位由兩個(gè)相同的8進(jìn)制數(shù)組成前導(dǎo)符,第3位是碼長(zhǎng)度,其中, 前導(dǎo)符用于指示壓縮碼的符號(hào),碼長(zhǎng)度用于指示壓縮碼的長(zhǎng)度, 當(dāng)η < 7時(shí)碼長(zhǎng)度為游程長(zhǎng)度,當(dāng)η > 7時(shí),碼長(zhǎng)度為7。
11.如權(quán)利要求10所述的裝置,其特征在于,數(shù)據(jù)編碼模塊配置成: 還產(chǎn)生編碼位圖,用于識(shí)別編碼數(shù)據(jù)中的由3位8進(jìn)制符號(hào)組成的數(shù)據(jù)段是非壓縮碼還是壓縮碼,其中該數(shù)據(jù)段前2位是兩個(gè)相同的數(shù),第3位是> 3的數(shù)。
12.如權(quán)利要求11所述的裝置,其特征在于,數(shù)據(jù)編碼模塊進(jìn)一步配置成: (1)將8進(jìn)制初始LSB數(shù)據(jù)流的第I個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),設(shè)定編碼位圖為空,設(shè)定編碼數(shù)據(jù)為空; (2)若當(dāng)前符號(hào)為空則執(zhí)行步驟(7),否則執(zhí)行步驟(3); (3)計(jì)算當(dāng)前符號(hào)的游程長(zhǎng)度, 若游程長(zhǎng)度為I則執(zhí)行步驟(4), 若游程長(zhǎng)度為2則執(zhí)行步驟(5), 若游程長(zhǎng)度大于2并且小于8,則設(shè)定碼長(zhǎng)度為游程長(zhǎng)度,若游程長(zhǎng)度大于7,則設(shè)定碼長(zhǎng)度為游程長(zhǎng)度,并且執(zhí)行步驟(6); (4)將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,若存在下一符號(hào),則設(shè)定該下一符號(hào)位當(dāng)前符號(hào),否則設(shè)定當(dāng)前符號(hào)為空,執(zhí)行步驟(2); (5)若與當(dāng)前符號(hào)不同的下一符號(hào)大于等于3,則在編碼位圖部分寫入0,將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,設(shè)定該下一符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2),否則將當(dāng)前符號(hào)的數(shù)據(jù)寫入編碼數(shù)據(jù)部分,設(shè)定該下一符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2); (6)保留當(dāng)前符號(hào)的數(shù)據(jù)的前2位作為前導(dǎo)符,將前導(dǎo)符和碼長(zhǎng)度按序?qū)懭刖幋a數(shù)據(jù)部分,并在編碼位圖部分寫入1,若存在未編碼數(shù)據(jù),則將當(dāng)前未編碼數(shù)據(jù)的第一個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),否則將當(dāng)前符號(hào)設(shè)置為空,執(zhí)行步驟(2); (7)計(jì)算編碼位圖長(zhǎng)度,按照編碼位圖長(zhǎng)度、編碼位圖、編碼數(shù)據(jù)、信息嵌入?yún)^(qū)的的格式進(jìn)行重組得到編碼LSB數(shù)據(jù)流,編碼結(jié)束。
13.如權(quán)利要求12所述的裝置,其特征在于,數(shù)據(jù)編碼模塊進(jìn)一步配置成: e.對(duì)嵌入信息的圖像提取LSB數(shù)據(jù),并轉(zhuǎn)化成8進(jìn)制符號(hào)的編碼LSB數(shù)據(jù)流, f.提取編碼LSB數(shù)據(jù)流中嵌入的信息,并且解碼編碼LSB數(shù)據(jù)流得到初始LSB數(shù)據(jù)流, g.將初始LSB數(shù)據(jù)流轉(zhuǎn)化成2進(jìn)制符號(hào)嵌入到圖像的LSB,得到原始圖像。
14.如權(quán)利要求13所述的裝置,其特征在于,數(shù)據(jù)編碼模塊進(jìn)一步配置成: (O讀取編碼LSB數(shù)據(jù)流,將第一個(gè)8進(jìn)制數(shù)設(shè)定為當(dāng)前符號(hào); (2)若當(dāng)前符號(hào)為空則執(zhí)行步驟(7),否則執(zhí)行步驟(3); (3)統(tǒng)計(jì)當(dāng)前符號(hào)的游程長(zhǎng)度,若游程長(zhǎng)度為I則執(zhí)行步驟(4);否則當(dāng)前符號(hào)與其下一位符號(hào)構(gòu)成前導(dǎo)符,執(zhí)行步驟(5); (4)將當(dāng)前符號(hào)插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定當(dāng)前符號(hào)后一位符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2); (5)若前導(dǎo)符后一位符號(hào)小于等于2,則將前導(dǎo)符插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定前導(dǎo)符后一位符號(hào)為當(dāng)前符號(hào),執(zhí)行步驟(2),否則執(zhí)行步驟(6); (6)讀取并刪除編碼位圖的第I位, 若該位為0,則將前導(dǎo)符插入解碼數(shù)據(jù)區(qū)末尾,設(shè)定前導(dǎo)符后一位符號(hào)為當(dāng)前符號(hào); 若該位為1,則判斷前導(dǎo)符后I位為碼長(zhǎng)度,根據(jù)該長(zhǎng)度在解碼數(shù)據(jù)區(qū)末尾補(bǔ)齊解碼數(shù)據(jù),將當(dāng)前符號(hào)后第三個(gè)符號(hào)設(shè)定為當(dāng)前符號(hào),執(zhí)行步驟(2); (7)解碼結(jié)束。
【文檔編號(hào)】G06T1/00GK104424617SQ201310366296
【公開日】2015年3月18日 申請(qǐng)日期:2013年8月21日 優(yōu)先權(quán)日:2013年8月21日
【發(fā)明者】費(fèi)志軍, 尹亞偉, 魯志軍 申請(qǐng)人:中國(guó)銀聯(lián)股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1