亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于QR碼和算術(shù)編碼的圖像加密無損恢復(fù)方法

        2020-09-29 06:07:34
        應(yīng)用光學(xué) 2020年5期
        關(guān)鍵詞:二進制解密灰度

        (四川大學(xué) 電子信息學(xué)院,四川 成都 610065)

        引言

        近年來,隨著互聯(lián)網(wǎng)技術(shù)和數(shù)字通訊技術(shù)的快速發(fā)展,信息安全問題越來越得到人們的關(guān)注。由于具有容量大、加密速度快、可多路并行傳輸、密匙維度多等固有的優(yōu)勢,光學(xué)圖像加密技術(shù)迅速成為了一個熱門的研究方向。這一技術(shù)最早可被追溯到1995年,Refregier和Javidi 提出的基于雙隨機相位編碼(double random phase code,DRPE)的圖像加密方法[1]。即在4-f系統(tǒng)的空間輸入平面和傅里葉變換域平面放置隨機相位板,對原加密圖像的空間域信息和頻域信息分別置亂,得到一個平穩(wěn)隨機分布的白噪聲密文圖案。隨后,由該方法衍生出的其他光學(xué)加密方法逐漸被提出,如菲涅爾域DRPE的圖像加密方法[2-3]、分?jǐn)?shù)傅里葉域

        DRPE的圖像加密方法[4-5]、基于光學(xué)聯(lián)合變換器的加密方法[6-7]、基于干涉原理的加密方法[8]等。這些方法豐富和發(fā)展了光學(xué)圖像加密技術(shù),但一些制約其進一步實用化的問題依然存在。例如,由于隨機相位板的引入和實驗中其他不可控因素,基于光學(xué)系統(tǒng)的解密圖像往往包含有大量的散斑噪聲,這些噪聲嚴(yán)重影響了解密后圖像的質(zhì)量。雖然目前提出了許多減弱或者抑制散斑噪聲的方法[9-13],但效果都不是很理想。

        為了解決這一問題,2013年Barrera 等人首次將QR碼(quick response code)作為數(shù)據(jù)容器引入到光學(xué)圖像加密系統(tǒng)中[14]。由于QR碼具有較強的糾錯能力,當(dāng)部分碼字被污染或者發(fā)生錯誤時,依然可以識別出來,使得存儲在里面的信息可以無損恢復(fù),因此是一種非常理想的去除光學(xué)加密系統(tǒng)中散斑噪聲的容器??捎捎赒R碼存儲容量有限,存儲內(nèi)容只能為數(shù)字、字母,漢字、日文等信息[15],要將一幅灰度圖像存入到QR碼中,必須要進行數(shù)據(jù)的轉(zhuǎn)換與壓縮。目前主要有兩種方法,即將二值圖像利用行程編碼壓縮方法存入QR碼[16],以及利用數(shù)字之間轉(zhuǎn)換壓縮方法將灰度圖像存入QR碼[17]。由于前者只適合于非常簡單的二值圖像,而后者只能將一幅32×32像素大小的灰度圖像存入到QR碼中,因此在實際圖像加密的應(yīng)用中,尋求一種既能有效進行數(shù)據(jù)壓縮,又能處理較大灰度圖像的方法仍顯得極為重要。

        本文提出了一種基于算術(shù)編碼圖像壓縮方法,成功地將一幅64×64像素大小的灰度圖像存入QR碼中進行加密和解密。該方法首先把灰度圖像讀取為二進制數(shù)據(jù),并轉(zhuǎn)換為十進制數(shù),然后利用算術(shù)編碼的方法壓縮十進制數(shù)序列得到新的二進制序列,把壓縮后的二進制數(shù)據(jù)再次轉(zhuǎn)換成十進制數(shù)據(jù)存儲到QR碼中,最后利用雙隨機相位編碼的方法進行加密和解密。

        1 理論基礎(chǔ)

        1.1 基于算術(shù)編碼的壓縮方法

        算術(shù)編碼[18-20]是一種變字長無損編碼方法,將編碼數(shù)據(jù)看作由多個符號組成的序列,直接對該序列進行編碼,編碼后輸出的碼字對應(yīng)于整個符號序列,而每個碼字本身確定了0和1之間的一個實數(shù)區(qū)間。編碼原理為:根據(jù)信源符號中各個符號所占的概率不同,把[0,1]區(qū)間劃分為若干個互不重疊的子區(qū)間,每個區(qū)間的長度為每個信源符號的概率。這樣,每個信源符號都可以用其所對應(yīng)區(qū)間內(nèi)的任何一個實數(shù)來表示,在對信源符號進行編碼時,便可用相應(yīng)的區(qū)間來表示。例如,要編碼的是一個來自4個信源符號{1234}并由5個信源符號組成的符號序列:41312。通過計算得到各信源符號的概率分別為:P(1)=0.4,P(2)=0.2,P(3)=0.2,P(4)=0.2。編碼時,首先根據(jù)各個信源符號的概率將區(qū)間[0,1]分成4個子區(qū)間:符號1對應(yīng)[0,0.4),符號2對應(yīng)[0.4,0.6),符號3對應(yīng)[0.6,0.8),符號4對應(yīng)[0.8,1.0)。符號序列中第1個符號是4,其對應(yīng)的子區(qū)間為[0.8,1.0),因為它是被編碼的第1個符號,所以原始信源符號就被縮窄到了區(qū)間[0.8,1.0),接下來將這個區(qū)間擴展為整個高度,其端點值不變,然后,這個縮窄的區(qū)間根據(jù)原始信源符號的概率進行細(xì)分,并繼續(xù)對下一個信源符號進行處理。例如,第2個符號是1,1 在初始區(qū)間內(nèi)是占整個區(qū)間的前40%,對應(yīng)的也要占區(qū)間[0.8,1.0)的前40%,因此第2個符號的新編碼區(qū)間變?yōu)閇0.8,0.88),然后,第3個符號3 占初始區(qū)間的60%到80%,則第3個符號的新編碼區(qū)間為[0.848,0.864),依此類推,第4個符號的新編碼區(qū)間為[0.848,0.8544),第5個符號的新編碼區(qū)間為[0.85056,0.85184),這樣該區(qū)間內(nèi)的任何一個實數(shù)就可以表示整個符號序列。把該十進制區(qū)間用二進制表示為[0.11011001101111100101,0.11011010000100100011),忽視小數(shù)點,不考慮“0.”,取該區(qū)間內(nèi)碼長為最短的碼字作為最后實際的編碼碼字輸出,所以對字符串[41312]進行算術(shù)編碼的輸出碼字為1101101。

        對于一幅灰度圖像,對其進行算術(shù)編碼壓縮的具體步驟為:

        Ⅰ) 將灰度圖利用Matlab 軟件讀取文件的形式讀取為一串二進制序列數(shù)據(jù);

        Ⅱ) 將Ⅰ)中的二進制數(shù)據(jù)利用利用文獻[17]中的方法轉(zhuǎn)換為相應(yīng)的十進制數(shù)據(jù)。具體規(guī)則為:步驟1,取4位二進制數(shù);步驟2,如果4位數(shù)字是1000 或1001,則將其轉(zhuǎn)換為8 或9,并在4位數(shù)字后再次從下一位開始步驟1。如果這4位數(shù)字既不是1000 也不是1001,取前3位數(shù)字,并將其轉(zhuǎn)換為0到7之間的一個數(shù)字。在3位數(shù)之后從下一位開始步驟1;

        Ⅲ) 把Ⅱ)中的十進制數(shù)分為若干小段,對每一小段進行算術(shù)編碼,將編碼得到的二進制字符串組合在一起;

        Ⅳ) 將Ⅲ)得到的二進制字符串用Ⅱ)中的方法轉(zhuǎn)換成十進制數(shù),編碼完成,整個過程如圖1所示。

        圖1 基于算術(shù)編碼的數(shù)據(jù)壓縮過程Fig.1 Data compression process based on arithmetic coding

        1.2 QR碼

        QR碼是二維碼的一種,有40個版本和L、M、Q、H 4個糾錯等級,不同的版本和糾錯等級存儲的數(shù)據(jù)大小也不同,版本越大,糾錯等級越低,存儲的數(shù)據(jù)越多。例如,31版的QR碼最多可存儲4 417個十進制數(shù)字、2677個字母數(shù)字組合、1 840個8位字節(jié)、1132個中國漢字。各個版本和糾錯等級QR碼的存儲容量如表1所示。

        表1 各個版本和糾錯等級QR碼的存儲容量Table1 Storage capacity of QR code with each version and each error correction level

        2 實驗?zāi)M

        為了驗證本文所提方法的有效性,利用Matlab軟件對實驗進行模擬。所選的加密系統(tǒng)為雙隨機相位編碼(DRPE)平行加密系統(tǒng)[1],如圖2所示。

        圖2 DRPE 加密系統(tǒng)(f(x,y)和g(x,y)為明文圖像和密文圖像,θ(x,y)和φ(u,v)為隨機相位板,L1和L2為傅里葉透鏡)Fig.2 DRPE encryption system(f(x,y) and g(x,y) are plaintext images and ciphertext images,θ(x,y) andφ(u,v) are random phase masks,L1and L2are Fourier lenses)

        加密和解密過程可以表示為

        式中:f(x,y)和g(x,y)分別為明文圖像和密文圖像;FT和FT?1為傅里葉正、逆變換;θ(x,y)和φ(u,v)是兩塊隨機分布在0到2π 區(qū)間的相位板;* 代表共軛。

        對于一幅灰度圖像,最常見的格式是BMP和JPEG,BMP格式的圖像每一個像素值由8位二進制組成,JPEG格式圖像是BMP格式的壓縮形式,它的數(shù)據(jù)量要遠(yuǎn)小于BMP格式的數(shù)據(jù)量。無論是BMP 還是JPEG格式的圖像,都可以以文件形式讀取為一串二進制序列數(shù)據(jù)。以圖3(a)灰度值較豐富的Lena 圖為例,大小為64×64像素BMP格式的圖像二進制文件大小為5.05 kB,可以讀取為41376個二進制數(shù)字序列,在本文中我們采用的是壓縮后的JPEG 文件(見表3),二進制文件大小為3.06 kB,讀取為二進制數(shù)字序列為25088個,用文獻[17]的方法轉(zhuǎn)化的十進制數(shù)為8043個,使用算術(shù)編碼后的二進制數(shù)字為19266個,最后再次轉(zhuǎn)化為十進制數(shù)字有4395個,將這些十進制數(shù)存入31版糾錯等級為L的QR碼中,結(jié)果如圖3(b)。然后利用DRPE 光學(xué)系統(tǒng)對3(b)進行加密和解密,加密后的密文圖像的實部和解密后的QR碼圖像如圖3(c)和3(d)。31版糾錯等級為L的QR碼[15],錯誤糾正碼字?jǐn)?shù)480個,最少可糾正240個錯誤碼字,解密后的QR碼所包含的噪聲導(dǎo)致的錯誤碼字?jǐn)?shù)遠(yuǎn)小于240,所以解密后的QR碼可被輕松識別,圖3(e)為最后恢復(fù)的原始圖像。

        圖3 實驗?zāi)M結(jié)果Fig.3 Experimental simulation results

        為了更好地說明本文所提方法的特點,對表示圖像數(shù)據(jù)量的十進制數(shù)字壓縮效率采用以下公式:

        式中:P代表壓縮效率;M代表壓縮后的十進制數(shù)字個數(shù);N代表原始圖像所有灰度值十進制數(shù)字個數(shù)的總和。以圖3(a)中的Lena 圖為例,分別計算文獻[16]中行程編碼的壓縮方法、文獻[17]中的壓縮方法和本文所提出方法的壓縮率,結(jié)果如表2所示。

        表2 不同方法的壓縮率Table2 Compression ratios of different methods

        由表2可以看出,本文所提出的壓縮方法的壓縮率要優(yōu)于文獻[16]和文獻[17]中的方法,如果要將一幅大圖像存入QR碼中,本文提出的方法效果更佳。

        3 討論

        對于一幅灰度層次較飽滿的圖像,例如Lena圖,采用本文所提出的壓縮方法,最多可以將一幅64×64像素大小的圖像存入到QR碼中,對于一張128×128像素或者256×256像素大小的灰度圖像,則要采用多張QR碼。表3為不同灰度圖的壓縮信息,對灰度層次較少的圖像,由于圖像冗余度大,壓縮率高,采用本文的方法可以將一幅128×128像素的JPEG圖像壓縮后存入到QR碼中,通過光學(xué)加密系統(tǒng)可以得到無損解密的圖像。而對于一張灰度值只有0和255的二值圖像,則可以將256×256像素或者更大的JPEG圖像存入QR碼,如圖4所示,為了視覺效果更好,我們對128×128像素的圖像做了放大處理。此外,由于QR碼有4個糾錯等級,不同的糾錯等級數(shù)據(jù)容量不同,在實際的光學(xué)加密系統(tǒng)中,往往會引入其他噪聲,所以在可選擇的糾錯等級和版本中,我們一般選擇版本低和糾錯等級高的QR碼進行加密和解密。

        本文所提出的基于算術(shù)編碼的壓縮方法,理論上可以多次使用,重復(fù)壓縮,但由于每次壓縮都需要記錄每個灰度值的概率,以便在解壓時使用,在實際的圖像加密應(yīng)用中,這就會增加密鑰數(shù)據(jù)的傳輸量,并不利于加密技術(shù)的實際應(yīng)用。

        表3 不同灰度圖的壓縮信息Table3 Compression information for different grayscale images

        圖4 不同類型圖像加密結(jié)果對比Fig.4 Comparison of encryption results for different types of images

        4 結(jié)論

        QR碼作為數(shù)據(jù)容器在光學(xué)圖像加密中起著非常重要的作用,但由于實際圖像通常數(shù)據(jù)量較大,超出了QR碼的存儲容量,因此目前只是將一些簡短的表達(dá)或者32×32像素的灰度圖像存儲到QR碼中,遠(yuǎn)不能滿足實際加密的需求。本文提出了一種基于算術(shù)編碼的圖像壓縮方法,將灰度圖像首先讀取為二進制數(shù)據(jù)并轉(zhuǎn)換為十進制數(shù),再將十進制數(shù)利用算術(shù)編碼的方法壓縮為二進制數(shù),最后再轉(zhuǎn)換成十進制數(shù),使得原始圖像的壓縮率極大提高,成功地將一幅64×64像素的灰度圖像壓縮到QR碼中,并利用DRPE系統(tǒng)加密和解密,得到無損恢復(fù)的解密圖像。此方法在未來有望用于視頻及其他多媒體信號的加密。

        猜你喜歡
        二進制解密灰度
        解密“熱脹冷縮”
        采用改進導(dǎo)重法的拓?fù)浣Y(jié)構(gòu)灰度單元過濾技術(shù)
        用二進制解一道高中數(shù)學(xué)聯(lián)賽數(shù)論題
        基于灰度拉伸的圖像水位識別方法研究
        解密“一包三改”
        少先隊活動(2020年9期)2020-12-17 06:17:31
        炫詞解密
        有趣的進度
        二進制在競賽題中的應(yīng)用
        基于最大加權(quán)投影求解的彩色圖像灰度化對比度保留算法
        基于灰度線性建模的亞像素圖像抖動量計算
        国产免费av片在线观看| 亚洲一区二区综合精品| 国产精品女主播福利在线| 免费无码又黄又爽又刺激| 91九色免费视频网站| 97无码免费人妻超级碰碰夜夜| 亚洲av无码一区二区二三区下载| 区无码字幕中文色| 国产精品一区二区三区四区亚洲 | 亚洲成av人片不卡无码| 熟妇人妻无乱码中文字幕 | 女女同性av一区二区三区免费看| 亚洲国产中文字幕一区| 亚洲国产精品无码久久| 偷拍一区二区三区高清视频| 亚洲乱码中文字幕一线区 | 亚洲精品午夜无码专区| 国产精品三级在线观看| 热门精品一区二区三区| 色哟哟亚洲色精一区二区 | 国产精品半夜| 亚洲香蕉av一区二区蜜桃| 亚洲精品一品区二品区三区| 中文亚洲欧美日韩无线码| 亚洲Va中文字幕久久无码一区| 亚洲一级天堂作爱av| 男女肉粗暴进来动态图| 失禁大喷潮在线播放| 丁香九月综合激情| 亚洲中文字幕九色日本| 色综合色狠狠天天综合色| 男人添女人下部高潮全视频| 中文AV怡红院| 日本一区二区三区综合视频| 人成午夜免费视频无码| 亚洲av日韩精品久久久久久 | 狠狠色噜噜狠狠狠97影音先锋| 午夜一区二区在线视频| 欧美亚洲精品suv| 国产内射性高湖| 无码伊人久久大杳蕉中文无码 |