最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【圖像隱藏】基于 DCT的圖像隱寫matlab源碼

2021-08-17 10:55 作者:Matlab工程師  | 我要投稿

一、簡介

在圖像隱寫分析中,這幾個(gè)特征是比較經(jīng)典的
圖像隱寫分析中DCT特征與Markov特征展現(xiàn)出了極大的潛力,小波變換的奇異值分解(Wavelet Singular Value Decomposition , WSVD)特征也有奇效,本文實(shí)現(xiàn)前人論文的特征提取編程代碼。
先說說理論知識
1 擴(kuò)展DCT統(tǒng)計(jì)特征提取
大多數(shù)的隱密算法都是對JPEG圖像的DCT系數(shù)進(jìn)行操作,以此來嵌入秘密信息。DCT系數(shù)統(tǒng)計(jì)特征,旨在捕捉DCT系數(shù)的統(tǒng)計(jì)量的特征,以此來區(qū)分載體圖像和隱密圖像。
DCT系數(shù)統(tǒng)計(jì)算法由Fridrich【1】提出,其中包含了DCT系數(shù)直方圖,共生矩陣,空域塊間相關(guān)性等部分。首先用DCT系數(shù)替換相同位置的原始圖像像素,使用dij(k) 來表示DCT系數(shù)矩陣,其中i,j=1, … ,8,k=1, … ,nB。而dij(k)則代表的是在第k個(gè)8×8 DCT塊中處于(i,j)位置的DCT系數(shù),而DCT塊一共有nB 塊。為了減少計(jì)算量和特征維度,在計(jì)算特征之前需要進(jìn)行預(yù)處理,將所有DCT系數(shù)值范圍限定在[-5,5]之間,大于和小于該范圍內(nèi)的值全部變換為-5到+5之間。


其中,Ir和Ic表示圖像DCT系數(shù)塊的兩種排列方式,分別是行掃描順序和列掃描順序。
接下來的兩個(gè)特征Bα是從解壓的JPEG圖像中計(jì)算,也是一種塊間相關(guān)性的特征:


在DCT系數(shù)統(tǒng)計(jì)的隱密分析中,F(xiàn)ridrich首次提出了用于隱密分析的“校準(zhǔn)”概念和計(jì)算原理:特征計(jì)算函數(shù)F,訓(xùn)練或測試圖像J1,將圖像J1解壓到空域并沿各個(gè)方向裁剪四個(gè)像素,然后使用同J1相同的量化表壓縮得到的圖像J2。f表示最終獲取的特征,而最后的特征由f=F(J1)-F(J2)計(jì)算得到。

采用如此計(jì)算方式的原理如下:裁剪之后的圖像和原始圖像內(nèi)容上大體上完全一致,雖然裁剪之后的圖像失去了原來的DCT分塊,但是其統(tǒng)計(jì)特征應(yīng)與原來相差不多。而這個(gè)過程會對嵌入的信息十分敏感,使裁剪前后的特征差別較大。經(jīng)過實(shí)驗(yàn)證明,如此提取特征的方法非常有效果。

總結(jié)來說,DCT系數(shù)統(tǒng)計(jì)特征對DCT系數(shù)全局和局部進(jìn)行了統(tǒng)計(jì)分析,并且捕獲DCT系數(shù)的塊間相關(guān)性和空域像素的相關(guān)性等特征。對于JPEG圖像來說,所有隱密算法都是針對DCT系數(shù)進(jìn)行修改,該算法確實(shí)是有一定的效果。實(shí)驗(yàn)中,該特征集展現(xiàn)了不錯(cuò)的分析效果,在0.2的嵌入率情況下可以達(dá)到平均95%的準(zhǔn)確率,但是對MB算法的效果一般,尤其是MB2。

原始DCT統(tǒng)計(jì)特征已經(jīng)有一定的檢測效果,本文先對其進(jìn)行擴(kuò)展,加強(qiáng)特征的檢測效果。對于全局直方圖函數(shù)H,可以得到范圍在[-5,+ 5]中的元素個(gè)數(shù)的差異,包括全局直方圖和局部直方圖,局部直方圖選擇的位置為{(1, 2),(2, 1),(3, 1),(2, 2),(1, 3)}。 因此,直方圖特征是:


如此的DCT擴(kuò)展特征共有193維,其特征組成見下表。

二、源代碼

clc; clear; msgfid=fopen('hidden.txt','r');%%打開秘密文件,讀入秘密信息 [msg,count]=fread(msgfid); count=count*8; alpha=0.02; fclose(msgfid); msg=str2bit(msg)'; [len col]=size(msg); io=imread('lena.bmp');%讀取載體圖像 io=double(io)/255; output=io; i1=io(:,:,1);%取圖像的一層來隱藏 T=dctmtx(8);%對圖像進(jìn)行分塊 DCTrgb=blkproc(i1,[8 8],'P1*x*P2',T,T');%對圖像分塊進(jìn)行DCT變換 [row,col]=size(DCTrgb); row=floor(row/8); col=floor(col/8); % 順序信息嵌入 temp=0; for i=1:count; ? ?if msg(i,1)==0 ? ? ? ?if DCTrgb(i+4,i+1)<DCTrgb(i+3,i+2) %選擇(5,2)和(4,3)這一對系數(shù) ? ? ? ? ? ?temp=DCTrgb(i+4,i+1); ? ? ? ? ? ?DCTrgb(i+4,i+1)=DCTrgb(i+3,i+2); ? ? ? ? ? ?DCTrgb(i+3,i+2)=temp; ? ? ? ?end ? ?else ? ? ? ? if ?DCTrgb(i+4,i+1)>DCTrgb(i+3,i+2) ? ? ? ? ? ?temp=DCTrgb(i+4,i+1); ? ? ? ? ? ?DCTrgb(i+4,i+1)=DCTrgb(i+3,i+2); ? ? ? ? ? ?DCTrgb(i+3,i+2)=temp; ? ? ? ?end ? ?end ? ?if DCTrgb(i+4,i+1)<DCTrgb(i+3,i+2) ? ? ? ?DCTrgb(i+4,i+1)=DCTrgb(i+4,i+1)-alpha;%將原本小的系數(shù)調(diào)整更小,使得系數(shù)差別變大 ? ?else ? ? ? ?DCTrgb(i+3,i+2)=DCTrgb(i+3,i+2)-alpha; ? ?end end

三、運(yùn)行結(jié)果

?


【圖像隱藏】基于 DCT的圖像隱寫matlab源碼的評論 (共 條)

分享到微博請遵守國家法律
社旗县| 抚顺县| 大安市| 封开县| 任丘市| 汝阳县| 永兴县| 陆河县| 双峰县| 木兰县| 革吉县| 手游| 澎湖县| 永兴县| 浦城县| 邮箱| 铜山县| 民丰县| 上林县| 临海市| 酉阳| 伊吾县| 滕州市| 五台县| 贡觉县| 东至县| 远安县| 永定县| 千阳县| 抚顺市| 林甸县| 五大连池市| 左云县| 嘉鱼县| 陕西省| 汤原县| 聊城市| 桂东县| 于都县| 宾川县| 青河县|