本發(fā)明屬于通用圖像數(shù)據(jù)處理,具體涉及一種基于可逆神經(jīng)網(wǎng)絡的圖像隱藏方法及裝置。
背景技術:
1、數(shù)字圖像水印是一種重要的圖像隱藏應用,用于保護圖像版權及信息安全。在數(shù)字圖像中嵌入水印可以有效防止圖像被未經(jīng)授權的復制、修改和分發(fā)。同時,水印技術在認證和數(shù)據(jù)完整性檢測方面也發(fā)揮著重要作用。
2、普通的圖像水印方法,包括最不重要比特(lsb)替換和基于變換域的方法。雖然這些方法實現(xiàn)簡單,但生成的圖像質量通常較低,難以適用于對生成圖像質量有較高要求的數(shù)字圖像版權領域。最不重要比特替換方法是最常用的圖像隱藏技術之一,其基本思想是在圖像的每個像素中,替換掉最低有效位(lsb)來隱藏信息。這種方法的優(yōu)點是實現(xiàn)簡單、速度快,但由于直接修改了圖像的像素值,容易導致圖像質量下降;特別是在較大數(shù)據(jù)量的情況下,圖像的視覺效果會顯著變差,且隱藏的信息容易被檢測和移除,安全性較低?;谧儞Q域的方法,如dct和dwt,是在圖像的頻域中嵌入信息,雖然比直接修改像素值的方法具有更好的隱蔽性,但由于需要進行復雜的數(shù)學變換,計算復雜度較高,且在嵌入大量信息時也會導致圖像質量下降。
3、此外,現(xiàn)有的使用深度學習的圖像隱藏方法雖然可以生成質量較高的stego圖像(經(jīng)過隱寫技術處理后,含有隱藏信息的圖像),但是其參數(shù)量普遍較大,占用顯存大,對硬件需求很高,實際應用能力不足。鑒于此,如何生成安全且高質量的帶水印數(shù)字圖像以保護其版權,是一個亟待解決的重要問題。
技術實現(xiàn)思路
1、根據(jù)以上現(xiàn)有技術中的不足,本發(fā)明的目的在于提供一種基于可逆神經(jīng)網(wǎng)絡的圖像隱藏方法及裝置,能夠隱藏大量的信息,同時保持較低的參數(shù)量和較高的圖像質量,可以良好的適用于數(shù)字圖像版權保護等領域。
2、為達到以上目的,本發(fā)明采用的技術方案是,一種基于可逆神經(jīng)網(wǎng)絡的圖像隱藏方法,包括以下步驟:
3、s1、基于公共數(shù)據(jù)集,獲取訓練圖像,并對訓練圖像進行預處理;
4、s2、獲取需要加入水印的數(shù)字圖像,利用qrcode庫和pillow庫生成與數(shù)字圖像大小相同的二維碼圖像;
5、s3、構建lmfi網(wǎng)絡模型框架,lmfi網(wǎng)絡模型框架包括若干個參數(shù)共享的可逆交互塊inv-block;
6、s4、利用預處理后的訓練圖像對lmfi網(wǎng)絡模型框架進行訓練;
7、s5、利用訓練后的lmfi網(wǎng)絡模型框架對需要加入水印的數(shù)字圖像(如數(shù)字藝術品圖像、大模型生成的圖像等)進行處理,即為將二維碼圖像作為水印信息嵌入到數(shù)字圖像中,生成含有隱藏水印的圖像;
8、s6、當需要對隱藏水印后的圖像進行水印提取時,利用訓練后的lmfi網(wǎng)絡模型框架進行水印提取,即可獲得恢復的水印圖像。
9、作為本發(fā)明的優(yōu)選方案,所述的s1中,預處理過程為,將訓練圖像隨機剪裁為224×224大小,并進行水平隨機旋轉和垂直隨機旋轉,增加數(shù)據(jù)的多樣性。
10、作為本發(fā)明的優(yōu)選方案,所述的s2中,qrcode庫是一個用于生成二維碼的python庫,pillow庫是一個圖像處理庫(可對生成的二維碼圖像進行圖像處理,主要用于調(diào)整大?。?,利用qrcode庫和pillow庫生成與數(shù)字圖像大小相同的二維碼圖像的具體過程為:
11、s21、在python代碼中導入qrcode庫和pillow庫,定義二維碼中包含的數(shù)據(jù)內(nèi)容,數(shù)據(jù)內(nèi)容包括url鏈接、文本字符串、聯(lián)系信息、wifi配置、地理位置坐標、電話號碼、短信內(nèi)容和自定義數(shù)據(jù)中的一種或多種;
12、s22、創(chuàng)建一個qrcode對象,并設置參數(shù)以控制二維碼的生成屬性,參數(shù)包括版本、錯誤糾正等級、盒子大小以及邊框大??;
13、s23、將定義的數(shù)據(jù)內(nèi)容添加到qrcode對象中,生成二維碼圖像,并利用pillow庫調(diào)整生成的二維碼圖像大?。礊樯膳c數(shù)字圖像大小相同的二維碼圖像),隨后將二維碼圖像保存為文件。
14、作為本發(fā)明的優(yōu)選方案,所述的s3中,lmfi網(wǎng)絡模型框架包括五個參數(shù)共享的可逆交互塊,其中每個可逆交互塊中又包含了三次交互,信息在三次交互過程中通過多尺度融合塊、殘差稠密塊、exp函數(shù)以及sigmoid函數(shù)處理。
15、作為本發(fā)明的優(yōu)選方案,所述的s1中,公共數(shù)據(jù)集采用div2k和coco,s4中,訓練時,訓練過程所用的數(shù)據(jù)集為div2k中的訓練集,并設置測試集,測試集中包括了div2k、coco、imagenet中的測試集以及s2中引入的數(shù)字圖像和生成的二維碼圖像。
16、作為本發(fā)明的優(yōu)選方案,所述的s4中,訓練過程包括以下步驟:
17、s31、從訓練集中交替選擇圖像,其中一張作為封面圖像cover(稱為cover圖像,其余同理),另一張作為秘密圖像secret,秘密圖像即為被隱藏的圖像;
18、s32、在正向隱藏過程中,首先將cover圖像與secret圖像作為初始輸入,在經(jīng)過五個可逆交互塊處理后,得到隱藏好的圖像stego(含有隱藏水印的圖像)與丟失的信息l;其中,在可逆交互塊中,cover圖像與secret圖像的信息交互過程表示為:
19、;
20、;
21、式中,、分別為經(jīng)過第k個、第k+1個可逆交互塊處理后,cover圖像的特征表示;、分別為經(jīng)過第k個、第k+1個可逆交互塊處理后,secret圖像的特征表示,k=1,2,3,4;表示sigmoid函數(shù);cat表示連接操作;d1、d2分別表示殘差稠密塊、多尺度融合塊;⊙表示矩陣中的點乘操作;exp表示指數(shù)函數(shù);表示一個3×3的卷積;1表示一個全為1的向量或矩陣,用于在連接操作中作為偏置項;
22、s33、在反向揭示過程中,信息的流向與正向隱藏過程相反,即信息從最后一個可逆交互塊輸入,從第一個可逆交互塊輸出;以stego圖像以及從與丟失信息l相同的高斯分布中抽取的輔助變量w為輸入,在經(jīng)過五個可逆交互塊處理后,即可獲得恢復圖像secret-rev(恢復的水印圖像),反向揭示過程中的公式表示為:
23、;
24、;
25、式中,、分別表示在第k個、第k+1個可逆交互塊中使用的輔助變量;、分別為經(jīng)過第k個、第k+1個可逆交互塊處理后,stego圖像的特征表示。
26、作為本發(fā)明的優(yōu)選方案,所述的s4中,訓練過程中采用的損失函數(shù)包括隱藏損失和恢復損失,隱藏損失的公式為:
27、;
28、式中,表示總隱藏損失;n表示訓練樣本數(shù)量,i代表第i個訓練樣本;表示第i個訓練樣本對應的cover圖像;表示第i個訓練樣本對應的stego圖像;為平均絕對誤差損失函數(shù)mae,用來衡量與之間的差異程度;
29、恢復損失的公式為:
30、;
31、式中,表示總恢復損失;表示對隨機變量z進行期望值的計算,其中z是從概率分布函數(shù)中采樣得到的;
32、訓練過程中的總損失為隱藏損失和恢復損失的線性和,表示為:
33、;
34、式中,、分別為隱藏損失、恢復損失的權重。
35、作為本發(fā)明的優(yōu)選方案,所述的s4中,訓練過程中,訓練的批大小為4,初始學習率為1×10?3.9,訓練5輪后,降低學習率到1×10?4.4,此后每260輪迭代學習率減半,總迭代次數(shù)為2000輪,并采用adam優(yōu)化器,設定訓練過程中的其他超參數(shù);、的初始值分別設為5.0、3.0。
36、作為本發(fā)明的優(yōu)選方案,殘差稠密塊為五層結構,多尺度融合塊由兩個3×3大小的卷積以及一個上采樣塊構成,每個可逆交互塊中包含的三次交互具體為,在cover圖像與secret圖像間有三個交互分支,在第一個交互分支中,secret圖像的信息經(jīng)過殘差稠密塊與多尺度融合塊處理,在通道維度連接后再經(jīng)過一個3×3大小的卷積塊處理后與cover圖像的信息相加;在第二個交互分支中,cover圖像的信息經(jīng)過一個殘差稠密塊及sigmoid函數(shù)和exp函數(shù)處理后與secret圖像的信息相乘;在第三個交互分支中,輸入可逆交互塊的信息經(jīng)過殘差稠密塊與多尺度融合塊處理,在通道維度連接后再經(jīng)過一個3×3大小的卷積塊處理后與secret圖像的信息相加。
37、s5和s6中,利用訓練后的lmfi網(wǎng)絡模型框架對需要加入水印的數(shù)字圖像進行處理的過程,參照上述的訓練過程即可,最終輸出stego圖像;利用訓練后的lmfi網(wǎng)絡模型框架進行水印提取同理,最終輸出secret-rev圖像。
38、一種基于可逆神經(jīng)網(wǎng)絡的圖像隱藏裝置,包括:
39、存儲器,其上存儲有計算機處理程序;
40、處理器,用于執(zhí)行存儲器中的計算機處理程序,以實現(xiàn)上述的一種基于可逆神經(jīng)網(wǎng)絡的圖像隱藏方法。
41、本發(fā)明所具有的有益效果是:
42、本發(fā)明能夠隱藏大量的信息,同時保持較低的參數(shù)量和較高的圖像質量,在將信息隱藏在圖像中后,肉眼將無法察覺圖像變化,可以良好的適用于數(shù)字圖像版權保護等領域。
43、本發(fā)明采用了一種端到端的神經(jīng)網(wǎng)絡框架,無需大量人工輔助,節(jié)約了人工成本;只需將需要嵌入水印的數(shù)字圖像與水印圖像輸入訓練后的lmfi網(wǎng)絡模型框架,即可生成嵌入水印的高質量圖像,起到保護圖像版權的作用;在需要驗證版權時,只需將嵌入水印的圖像與嵌入水印過程中生成的輔助信息輸入網(wǎng)絡,即可將水印恢復確認數(shù)字圖像版權。
44、本發(fā)明生成的隱藏圖像質量很高,遠超使用lsb隱寫術等普通隱藏方法生成的隱藏圖像,同時,網(wǎng)絡框架的參數(shù)量低,在一次訓練后,即可直接讀取模型進行圖像隱藏,隱藏與恢復速度塊,占用顯存小,可大幅節(jié)約時間成本與硬件成本。