• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      面向防偽認(rèn)證的PDF417二維碼水印技術(shù)的實(shí)現(xiàn)

      2017-06-30 00:28:56李永強(qiáng)馬雪嬌楊邁王家峰
      軟件工程 2017年5期
      關(guān)鍵詞:數(shù)字水印容量

      李永強(qiáng)++馬雪嬌++楊邁++王家峰

      摘 要:利用PDF417二維條碼以模組為原子的特點(diǎn),提出一種基于模組的PDF417條碼水印的方法。該方法首先將水印轉(zhuǎn)換成二進(jìn)制數(shù)據(jù),再選取PDF417二維條碼中符合特定條件的區(qū)域作為水印信息的嵌入點(diǎn),根據(jù)待嵌入的水印信息值修改二維碼圖像的像素值,實(shí)現(xiàn)水印信息的嵌入和提取。實(shí)驗(yàn)結(jié)果表明,相比同類算法,根據(jù)本文提出的方法嵌入水印后的圖像具有更高的質(zhì)量和更大的水印容量。同時,該方法具有較好的抗JPEG壓縮和抗打印掃描的魯棒性,但是對設(shè)備分辨率要求較高。

      關(guān)鍵詞:二維條碼;PDF417;數(shù)字水印;容量;頑健性

      中圖分類號:TP391 文獻(xiàn)標(biāo)識碼:A

      1 引言(Introduction)

      二維條碼本質(zhì)上是一種特殊的二值圖像,像素點(diǎn)集中只有0和1,即黑和白。結(jié)構(gòu)簡單,易于生成和讀取,在商品識別、票證識別等方面有廣泛運(yùn)用。向二維條碼中添加水印可以達(dá)到證件防偽和信息隱藏的目的。最常見的二維條碼有QR(Quick Response)碼和PDF417,本文重點(diǎn)研究的是PDF417(Portable Data File 417)碼。

      文獻(xiàn)[1]提出了基于QR碼的盲數(shù)字圖像水印技術(shù),使用密鑰和抗攻擊嵌入域提高的魯棒性和視覺不可見性。文獻(xiàn)[2]使用密鑰技術(shù)對水印信息進(jìn)行加密處理,提升了水印信息的安全性。文獻(xiàn)[3]提出了基于DWT和SVD的防偽QR碼水印算法,防偽性能和水印質(zhì)量高。文獻(xiàn)[4]提出了一種先用freeman鏈碼和B樣條曲線誤差預(yù)處理后再將水印信息內(nèi)容的散列值嵌入到圖像中的方法,容量有所提高,但其算法實(shí)現(xiàn)復(fù)雜,信息受限。文獻(xiàn)[5]使用小波變換在QR碼中實(shí)現(xiàn)了水印嵌入。文獻(xiàn)[6]利用變形技術(shù),適當(dāng)?shù)母淖冊袌D像的寬度已達(dá)到嵌入水印的目的,但水印容量較低。文獻(xiàn)[7]在DCT(Discrete Cosine Transform)的基礎(chǔ)上實(shí)現(xiàn)了一種利用了PDF417編碼方法的水印嵌入算法,其水印信息的容量和穩(wěn)健性有較大提高。文獻(xiàn)[8]提出了一種了基于PDF417條碼自身結(jié)構(gòu)特點(diǎn)的水印信息隱藏方法,將條空結(jié)構(gòu)進(jìn)行適量的微調(diào),在保證條碼信息不丟失不畸變的前提下,將信息隱藏到條碼中,但其抗水平畸變性能差。文獻(xiàn)[9]在文獻(xiàn)[8]的基礎(chǔ)上修改了識別方法,犧牲容量換取了較好的魯棒性。本文提出了一種基于文獻(xiàn)[8]的豎直方向微調(diào)條空結(jié)構(gòu)的水印明隱藏方法。

      2 相關(guān)工作(Related work)

      2.1 PDF417二維條碼的基本原理

      PDF417二維條碼是由王寅君博士發(fā)明的,其識別的原子單位是模組,數(shù)字圖像中每個模組可有若干個像素構(gòu)成,每個PDF417的碼字包含了長度不等的4個黑條與4個白條,單條寬度不超過6個模組寬,總數(shù)為17個模組寬度,故得名417。如圖1所示,完整的PDF417條碼由起始區(qū)、左層指示器、數(shù)據(jù)區(qū)、右層指示區(qū)、結(jié)束區(qū)組成。起始區(qū)和結(jié)束區(qū)標(biāo)記了條碼的開始和結(jié)束位置,左右層指示區(qū)表明了解碼所需的,數(shù)據(jù)區(qū)存放條碼所攜帶的信息。

      2.2 相關(guān)文獻(xiàn)方法

      面向防偽認(rèn)證的PDF417水印技術(shù)主要包含嵌入和提取兩個步驟。嵌入階段需要計(jì)算容量和水印長度并進(jìn)行一定的預(yù)處理,如添加校驗(yàn)信息、加密和編碼壓縮,將水印信息按一定的算法嵌入條碼中。而提取階段則要提取水印信息并進(jìn)行相對應(yīng)的解壓、解密和校驗(yàn)。

      文獻(xiàn)[8]提出了一種基于條空的PDF417碼的水印方法,其本質(zhì)是在PDF417碼允許誤差范圍內(nèi)調(diào)整每個模塊的寬度,其與標(biāo)準(zhǔn)值的差表明是否為1,連起來即為比特流形式的水印信息。其原理圖如所示。這種方法可以順利嵌入水印,并且暗隱藏模式下在視覺上不易被發(fā)現(xiàn)。但是由于利用了PDF417碼允許誤差的特點(diǎn),導(dǎo)致實(shí)際圖像發(fā)生誤差允許內(nèi)變形后水印信息誤讀,數(shù)據(jù)讀取異常,魯棒性較差。

      圖2 基于條空的水印方法

      Fig.2 The watermark method based on bar blanks

      文獻(xiàn)[9]在文獻(xiàn)[8]的基礎(chǔ)下提出了一種新的基于碼字條空誤差的水印判斷方法,根據(jù)一個碼字中嵌入水印導(dǎo)致誤差的正負(fù)來判斷1和0,其原理圖如圖3所示。這種方法大大提升了水印信息的魯棒性,但是容量也大打折扣。

      3 本文提出的算法(The algorithm proposed in this

      paper)

      本文提出了一種基于文獻(xiàn)[8]的改進(jìn)算法,在豎直方向上微調(diào)條空結(jié)構(gòu),幾乎不影響水平方向的條空結(jié)構(gòu)。使用本方法可以增加魯棒性又不會缺失大量的容量。

      3.1 預(yù)處理

      3.1.1 圖像二值化

      圖像在傳播的過程中經(jīng)常會被統(tǒng)一轉(zhuǎn)換成彩色圖像,如在安卓系統(tǒng)中圖片在顯示時會統(tǒng)一轉(zhuǎn)換成bitmap位圖,其色彩方案是ARGB。為了降低程序運(yùn)行的難度和處理的數(shù)據(jù)量,需要先將其二值化處理。

      首先分別讀取R、G、B的數(shù)值,然后根據(jù)式(1)將圖像轉(zhuǎn)換成灰度圖像,再根據(jù)式(2)的閾值將其二值化,其中A參數(shù)不影響結(jié)果,因此忽略。

      (1)

      (2)

      另外一種獲得二值化圖像的方法是將像素與0x00808080按位與(80H=1000000B=128D),獲得的值與0進(jìn)行比較從而快速判斷像素的黑白值。由于二維碼圖像的直方圖會有明顯且較寬的分界,此方法不會有太大的誤差,處理速度更快。

      3.1.2 角度矯正

      二維碼在掃描后的圖片會產(chǎn)生不同程度空間的傾斜,因此在處理前需要先將其矯正。利用Hough變換求出其邊界再將其旋轉(zhuǎn)到水平位置[4]。

      3.1.3 水印預(yù)處理

      若對水印本身有加密需要,可以再進(jìn)行一定的加密算法。為了防止水印被篡改,還可以添加校驗(yàn)位,校驗(yàn)失敗即認(rèn)為水印是偽造的。如使用BASE64進(jìn)行預(yù)編碼。

      3.1.4 圖像定位和碼字檢測

      圖像經(jīng)過預(yù)處理后可認(rèn)為是理想情況,可以進(jìn)行水印操作。首先確定二維碼的四個頂點(diǎn)位置和模塊大小。從頭和尾進(jìn)行定位兩個對角點(diǎn)即可得到二維碼有效區(qū)域。PDF417碼擁有固定的起始區(qū)和結(jié)束區(qū),因此可以快速得到模塊寬度。對于未加工過的模塊,其模塊高度和條碼高度必然滿足式(3)的關(guān)系:

      (3)

      因此可以遍歷數(shù)據(jù)區(qū)每個模塊的高度,排除不滿足式(3)后選取最小的值即為模塊高度。由于PDF417碼中的每個碼字都有4個黑條和4個白條,數(shù)據(jù)區(qū)的每一行都不會出現(xiàn)全白或全黑的情況,此法具有較高的可靠性。

      3.1.5 色塊識別

      以一個16*4的模塊為例,讀取其中一個色塊即可獲得模塊的顏色信息,但是如果在這個色塊出現(xiàn)嚴(yán)重噪聲將會導(dǎo)致識別錯誤,因此可以讀取3—5個點(diǎn)以排除誤差。16*4模塊如果進(jìn)行邊緣取反處理,那么其高度應(yīng)為2即其水印部分只有2*4,選擇3—5個點(diǎn)即可可靠獲得模塊顏色信息。

      3.1.6 可用空間判斷

      本文提出的算法對嵌入空間有一定要求,上下同色的邊界處改變色塊會造成視覺顯著變化,不適合隱藏,因此需要找出所有上下模組顏色不同的區(qū)域作為水印空間。這些水印空間有兩種情況,即上黑下白和上白下黑。嵌入水印信息1時在邊界白色區(qū)域添加一定高度黑條。

      改變色塊的高度影響分辨能力,越高越容易被發(fā)現(xiàn),甚至影響PDF417碼本身的識別,越低越容易導(dǎo)致程序本身無法識別。因此,本文中改變色塊區(qū)域的高度均采用式(4),其中為碼字高,[]表示取整數(shù)部分。

      (4)

      3.2 本文提出的水印嵌入算法

      具體嵌入步驟如下:

      (1)生成原始二維碼和水印信息的比特流。

      (2)對原始二維碼進(jìn)行定位。

      (3)遍歷可用空間。

      (4)讀取一位水印信息,為0不修改,為1添加黑條。

      (5)判斷可用空間是否用完,或水印是否全嵌入完畢。若空間有剩余,水印未嵌入完畢,重復(fù)步驟(3)。

      (6)輸出嵌入水印后的二維碼圖像。

      程序流程圖如圖4所示。

      3.3 水印的提取

      水印的提取算法與嵌入類似,具體步驟如下:

      (1)圖像預(yù)處理。

      (2)對二維碼圖像進(jìn)行定位。

      (3)遍歷可用空間。

      (4)判斷是否嵌入水印,嵌入水印比特流添加1,否則添加0。

      (5)可用空間仍有空間則重復(fù)步驟(3)。

      (6)輸出比特流。

      算法流程圖如圖5所示。

      4 實(shí)驗(yàn)結(jié)果及性能分析(Experimental results and

      performance analysis)

      4.1 魯棒性分析

      JPEG是一種對圖像的有損壓縮,量化質(zhì)量因子Q為1—100,Q越高,信息損失越少。本文對一個嵌入水印的PDF417碼進(jìn)行了Q=10、Q=40、Q=70的壓縮攻擊,均順利得到正確的條碼信息和水印信息。

      表2 不同Q下二維碼讀取結(jié)果

      Tab.2 The results of reading two-dimensional code

      in different values of Q

      質(zhì)量因子 (a)原始 (b)Q=70 (c)Q=40 (d)Q=10

      PDF417碼圖像

      條碼信息 華東理工大學(xué) 華東理工大學(xué) 華東理工大學(xué) 華東理工大學(xué)

      水印信息 信息學(xué)院 信息學(xué)院 信息學(xué)院 信息學(xué)院

      通過放大表2中d的PDF417碼圖像,可以發(fā)現(xiàn)圖像已經(jīng)有很大程度的失真。

      打印掃描會使圖像損失信息、圖形失真,在打印精度低的打印機(jī)和掃描機(jī)上尤為顯著。

      從圖7(a)可以看出打印掃描后圖像有明顯噪點(diǎn),從圖7(b)可以看出有些區(qū)域的噪點(diǎn)明顯泛白,尤其是邊緣的噪點(diǎn)會導(dǎo)致識別錯誤。但是圖像本身的信息還很好的保留著。通過預(yù)處理可以將其轉(zhuǎn)換成適合提取信息的理想圖形。

      從圖7(c)可以看到預(yù)處理后圖形銳利了許多,但仍然有少量毛刺存在。毛刺所占比例很小,通過3.1.5中介紹的色塊識別規(guī)則可以避免此毛刺影響。通過圖8可以發(fā)現(xiàn)水印信息成功無損提取。

      4.2 水印容量

      水印容量是根據(jù)圖像本身的可利用空間計(jì)算的,其只能在二維碼生成之后再計(jì)算空間并嵌入,不同的二維碼可利用空間不同,可能有較大差異,但是可用通過一系列觀測值推測其容量期望和水印內(nèi)容大小的關(guān)系。例如6個漢字的“華東理工大學(xué)”生成的二維碼水印容量為296bit,6個漢字的“信息科學(xué)技術(shù)”生成的二維碼水印容量為315bit。

      在常用漢字表中抽取880組含有6個漢字的組合進(jìn)行生成容量的測算,其容量平均值為313.0057bit,方差273.1329,最大值379bit,最小值238bit,極差141bit,散點(diǎn)圖如圖9所示。相同情況下文獻(xiàn)[8]的平均容量為192bit,文獻(xiàn)[9]的容量為48bit。

      圖9 不同的6個漢字組合下水印容量散點(diǎn)圖

      Fig.9 The scatter plot of watermark capacity in different

      combinations of 6 Chinese characters

      4.3 基于PDF417二維碼水印的APP實(shí)現(xiàn)

      在安卓環(huán)境下,使用開源項(xiàng)目zxing的二維碼框架用于生成普通的PDF417條碼,開發(fā)了一款能夠讀取、生成PDF417碼,根據(jù)本文算法添加讀取水印的安卓APP程序。如圖10所示,該程序基本完成了展示成果的功能。

      (a)PDF417碼生成器

      (a)The generator for PDF417 code

      (b)條碼生成結(jié)果

      (b)The result of barcode generation

      (c)(b)中條碼的掃描結(jié)果

      (c)The result of scanning the bar code of (b)

      圖10 APP主要演示界面

      Fig.10 The main presentation interface of APP

      5 結(jié)論(Conclusion)

      本文提出了以一種豎直方向上的微調(diào)條空的水印方法。該水印方法實(shí)現(xiàn)了預(yù)期性能指標(biāo),由于其為明隱藏,放大后可能會引起視覺上的明顯異常。要消除此異常,可以使用暗隱藏,即將水印空間集中去除左右兩排碼字與本身相同的子集,但是會減少水印容量。此方法對設(shè)備分辨率和圖像矯正結(jié)果要求較高,否則會導(dǎo)致結(jié)果出錯。

      參考文獻(xiàn)(References)

      [1] Thulasidharan P P,Nair M S.QR code based blind digital image watermarking with attack detection code[J].AEU-International Journal of Electronics and Communications,

      2015,69(7):1074-1084.

      [2] Lin P Y,Chen Y H.High payload secret hiding technology for QR codes[J].Eurasip Journal on Image & Video Processing,2017(1):14.

      [3] Qin J H,et al.Anti-fake Digital Watermarking Algorithm Based on QR Codes and DWT[J].International Journal of Network Security,2016,18(6):1102-1108.

      [4] 吳桐樹.基于二維條碼的數(shù)字水印技術(shù)研究[D].浙江理工大學(xué),2015.

      [5] 李智偉.基于小波變換域的雙重?cái)?shù)字水印算法研究[D].安徽理工大學(xué),2016.

      [6] 牛夏牧,等.基于二維條碼的信息隱藏技術(shù)[J].中山大學(xué)學(xué)報(bào)(自然科學(xué)版),2004,43(s2):21-25.

      [7] 張基宏,肖薇薇.基于二維條碼PDF417的數(shù)字圖像水印算法[J].深圳大學(xué)學(xué)報(bào)(理工版),2002,19(1):1-6.

      [8] 趙博.二維條碼研究[D].西安電子科技大學(xué),2007.

      [9] 何利軍.基于信息隱藏技術(shù)的防偽系統(tǒng)研究與實(shí)現(xiàn)[D].華中科技大學(xué),2008.

      作者簡介:

      李永強(qiáng)(1995-),男,本科生.研究領(lǐng)域:圖像處理.

      馬雪嬌(1995-),女,本科生.研究領(lǐng)域:軟件開發(fā).

      楊 邁(1997-),女,本科生.研究領(lǐng)域:軟件開發(fā).

      王家峰(1995-),男,本科生.研究領(lǐng)域:軟件開發(fā).

      猜你喜歡
      數(shù)字水印容量
      基于網(wǎng)屏編碼的數(shù)字水印技術(shù)
      電子制作(2019年20期)2019-12-04 03:51:30
      IQ下午茶,給腦容量加點(diǎn)料
      SnO2納米片容量異常行為的新解釋
      基于數(shù)字水印的人臉與聲紋融合識別算法
      2015年上半年我國風(fēng)電新增并網(wǎng)容量916萬千瓦
      風(fēng)能(2015年8期)2015-02-27 10:15:12
      2015年一季度我國風(fēng)電新增并網(wǎng)容量470萬千瓦
      風(fēng)能(2015年5期)2015-02-27 10:14:46
      改進(jìn)等效容量法在含風(fēng)電配網(wǎng)線損計(jì)算中的應(yīng)用
      電測與儀表(2014年1期)2014-04-04 12:00:30
      一種多傳感器圖像融合與數(shù)字水印技術(shù)
      液晶與顯示(2014年2期)2014-02-28 21:12:30
      基于圖像紋理復(fù)雜度的小波域數(shù)字水印算法
      焊管(2013年11期)2013-04-09 07:16:58
      旺苍县| 丰县| 鱼台县| 邻水| 甘谷县| 志丹县| 新河县| 城步| 二手房| 凌海市| 民县| 大丰市| 新余市| 罗山县| 濮阳市| 诸城市| 驻马店市| 京山县| 文登市| 晋江市| 汝州市| 奉贤区| 逊克县| 孝义市| 吴忠市| 大邑县| 遂川县| 芦溪县| 昔阳县| 东乌| 安溪县| 晋宁县| 唐河县| 墨玉县| 诏安县| 喀喇| 左权县| 宁津县| 玉龙| 克山县| 勐海县|