版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、<p> 課 程 設 計 說 明 書</p><p> 題目: 圖像置亂的設計與實現(xiàn) </p><p> 學院(系): 電氣工程學院 </p><p> 年級專業(yè): 12級精儀一班 </p><p> 電氣工程學院《課程設計》任務書</p><p> 課程名稱: 計算機視覺
2、 </p><p> 說明:1、此表一式四份,系、指導教師、學生各一份,報送院教務科一份。</p><p> 2、學生那份任務書要求裝訂到課程設計報告前面。</p><p> 電氣工程學院 教務科</p><p><b> 摘 要</b></p>&l
3、t;p> 隨著多媒體技術、信息存儲技術的飛速發(fā)展,以及網(wǎng)絡帶寬限制的放松,越來越多的圖像得以在網(wǎng)絡上傳輸,并逐步成為人們獲取信息的主要手段。網(wǎng)絡上傳輸?shù)膱D像有些無關緊要,有些卻至關重要,這其中有可能涉及到個人隱私、公司利益、軍事機密、國家安全,其價值無法衡量。另一方面,Internet網(wǎng)絡的日益普及使得任何人都有可能接觸并搜集到網(wǎng)絡中的圖像信息,而不管它是善意的還是惡意的、合法的還是非法的,從而使得在網(wǎng)絡上傳輸?shù)膱D像安全倍受關注
4、,字圖像的安全已經(jīng)成為信息安全領域中重要的研究分支,而置亂技術在圖像加密技術中起著不可忽視的作用。</p><p> 一般從客觀景物得到的圖像是二維的。一幅圖像可以用二維函數(shù)f(x,y)來表示,也可看作是一個二維數(shù)組,x和y表示二維空間XY中一個坐標點的位置,而f則代表圖像在點(x,y)的某種性質(zhì)F的數(shù)值。例如常用的圖像一般是灰度圖像,此時f表示灰度值,它常對應客觀景物被觀察到的亮度。需要指出,一般是根據(jù)圖像內(nèi)
5、不同位置的不同性質(zhì)來利用圖像的。</p><p> 本文為你重點介紹了圖像置亂的原理,并介紹了兩種基本的置換方法,分別是:基于變換矩陣的圖像置亂法、基于Arnold變換的圖像置亂方法,教你如何對你的圖像進行加密,并對數(shù)字圖像置亂程度進行測評,同時對未來可能的研究方向進行了展望。選擇了MATLAB作為軟件工具,所給出的程序代碼均在其上測試通過。</p><p> 關鍵詞: MATLAB、
6、圖像置亂技術、二維坐標變換、Arnold變換、置亂度</p><p><b> 目錄</b></p><p><b> 摘 要I</b></p><p><b> 第一章 引言1</b></p><p> 第二章 基于變換矩陣的圖像置亂2</p>
7、<p> 2.1 二維坐標置亂2</p><p> 2.1.1 加密原理2</p><p> 2.1.2 解密原理3</p><p> 2.2 二維坐標置亂的分析4</p><p> 第三章 基于Arnold變換基礎上的置亂5</p><p> 3.1 變換原理5</p>
8、<p> 3.2 Arnold變換的周期性7</p><p> 3.2.1 Arnold變換式周期性定理7</p><p> 3.3 基于Arnold變換的圖像恢復9</p><p> 3.4 基于Arnold變換的分析10</p><p> 第四章 本文總結(jié)與展望11</p><p>
9、<b> 參考文獻12</b></p><p><b> 第一章 引言</b></p><p> 圖像置亂技術屬于圖像加密技術,它通過對圖像像素矩陣的重排,破壞了圖像矩陣的相關性,以此實現(xiàn)信息的加密,達到安全傳輸圖像的目的。</p><p> 圖像置亂的實質(zhì)是破壞相鄰像素點間的相關性,使圖像“面目全非”,看上去
10、如同一幅沒有意義的噪聲圖像。單純使用位置空間的變換來置亂圖像,像素的灰度值不會改變,直方圖不變,只是幾何位置發(fā)生了變換。置亂算法的實現(xiàn)過程可以看做是構(gòu)造映射的過程,該映射是原圖的置亂圖像的一一映射,如果重復使用此映射,就構(gòu)成了多次迭代置亂。</p><p> 目前研究使用較多的置亂變換主要有:Arnold變換、Fibonacci與Fibonacci-Q變換、幻方變換、正交拉丁方變換、Hilbert曲線變換、Gr
11、ay碼變換、仿射變換、混沌置亂變換等。 Arnold變換是俄國數(shù)學家Vladimir I.Arnold在研究遍歷理論時提出的一種置亂變換,鄒建成等人對Arnold變換進行了深入的研究,給出了多種改進的置亂算法,得出一系列有用的結(jié)論,主要在于:討論了平面上Arnold變換的周期性,計算了不同階數(shù)N下Arnold變換的周期 ;把Arnold變換應用于數(shù)字圖像置亂,對位置空間和彩色空間做了實驗測試:把二維Arnold變換推廣到了三維空間嘲:給
12、出了一般的非線性模變換有周期性的充分必要條件,討論了平面上Arnold變換的周期性問題,給出了判別周期的一組必要條件,從理論上對Arnold變換的周期性有了更深的認識;將Arnold變換推廣到高維,給出了高維變換具有周期性的充分必要條件,并討論了該變換的置亂效果。</p><p> Gray碼變換是一種數(shù)論變換,它可以用于二進制數(shù)據(jù)的糾錯與校驗。丁偉等討論如何給出Gray碼的矩陣定義形式并將之推廣并討論如何利用
13、Gray碼變換進行數(shù)字圖像置亂。</p><p> 本文為你重點介紹了圖像置亂的原理,并介紹了兩種基本的置換方法,分別是:基于變換矩陣的圖像置亂、基于Arnold變換的圖像置亂,教你如何對你的圖像進行加密,并對數(shù)字圖像置亂程度進行測評,同時對未來可能的研究方向進行了展望。選擇了MATLAB作為軟件工具,所給出的程序代碼均在其上測試通過。</p><p> 第二章 基于變換矩陣的圖像置亂
14、</p><p> 2.1 二維坐標置亂</p><p> 我們一般處理的圖片都是平面圖片,即所謂的二維圖片。二維數(shù)字圖像可以看作是平面區(qū)域上的二元函數(shù)。在絕大多數(shù)情況下區(qū)域D是一個矩形,對D中任意的點表示其像素點的位置,而代表圖像的信息(灰度圖像是灰度值,彩色圖像是RGB分量值等)。當圖像數(shù)字化之后,圖像則對應于數(shù)學中的一個矩陣,其元素所在的行與列對應于自變量取值,數(shù)字圖像離散化后是
15、相應于元素之間有相關性的一類特別的矩陣。</p><p> 通過數(shù)學中矩陣的初等變換可以將圖像轉(zhuǎn)換為另一幅圖像,從而達到置亂的目的,但其置亂作用較差,因為初等變換是整行或整列進行變換,并不是對矩陣中每個點進行變換。而一些非線性變換則有可能對圖像置亂起到較好的作用?,F(xiàn)介紹目前幾種常見的圖像置亂方法。</p><p> 2.1.1 加密原理</p><p> 將圖
16、形分解成二維坐標上的一個個點的組合,用G(i,j)(i=1,2,...M,j=1,2...,N)表示各個點,然后通過一個方程將有序的點置亂,置亂的點組合起來的圖便是加密后的圖。</p><p> G(i,j)為原圖各點,G1(i,j)為加密圖各點,用方程G1(i,j)=0.1*G(i,j)+0.9*Gadd(i,j)(對原來的點進行加權(quán)求和)得到G1(i,j),再將其按順序輸出,記得到置亂后的圖像。</p
17、><p> 用MATLAB實現(xiàn)圖像置亂的程序如下:</p><p> G=imread('D:\Miss256G.bmp');</p><p> subplot(1,3,1)</p><p><b> imshow(G)</b></p><p> title('原圖&
18、#39;)</p><p> Gadd=fix(256*rand(256,256,3));</p><p> for i=1:256</p><p> for j=1:256</p><p> G(i,j)=0.1*G(i,j)+0.9*Gadd(i,j); %進行加權(quán)求和</p><p><b>
19、 end</b></p><p><b> end</b></p><p> subplot(1,3,2)</p><p> imshow(G); %顯示圖像</p><p> title('置亂后的圖像')</p><
20、;p><b> 結(jié)果如下:</b></p><p> 2.1.2 解密原理</p><p> 將置亂后的點G1(i,j)通過與原來方程的逆運算,得到G2(i,j),并將其組合起來,即得到恢復后的圖像。</p><p><b> 恢復圖像程序如下:</b></p><p> G=imr
21、ead('D:\Miss256G.bmp');</p><p> subplot(1,3,1)</p><p><b> imshow(G)</b></p><p> title('原圖')</p><p> Gadd=fix(256*rand(256,256,3));</p
22、><p> for i=1:256</p><p> for j=1:256</p><p> G1(i,j)=0.1*G(i,j)+0.9*Gadd(i,j); %進行加權(quán)求和</p><p><b> end</b></p><p><b> end</b><
23、;/p><p> subplot(1,3,2)</p><p> imshow(G1); %顯示圖像</p><p> title('置亂后的圖像')</p><p> for i=1:256</p><p> for j=1:256</
24、p><p> G2(i,j)=(G1(i,j)-0.9*Gadd(i,j))./0.1; %進行加權(quán)求和</p><p><b> end</b></p><p><b> end</b></p><p> subplot(1,3,3)</p><p> imshow(
25、G2); %顯示圖像</p><p> title('復原后的圖像')</p><p><b> 結(jié)果如下:</b></p><p><b> 結(jié)果分析:</b></p><p> 經(jīng)過逆運算,置亂的圖像又恢復到跟原圖一樣。事
26、實上我們也可以理解為G2(i,j)=G(i,j),所以恢復后的圖像跟原圖一樣</p><p> 2.2 二維坐標置亂的分析</p><p> 此方法方法原理簡單,容易實現(xiàn),運算量小,但同時存在以下部分不足:</p><p> 置亂后的圖像不夠加密,置亂度不夠高; </p><p> 方程變換過于簡單,容易找到逆運算,安全性不高;<
27、;/p><p> 第三章 基于Arnold變換基礎上的置亂</p><p><b> 3.1 變換原理</b></p><p> Arnold變換又稱貓臉變換,設想在平面單位正方形內(nèi)繪制一個貓臉圖像,通過下述變換,貓臉圖像將由清晰變的模糊。矩陣表示即為:</p><p><b> (3.1.1)</b
28、></p><p> 是圖像中的像素變換后的新的位置。反復進行此變換,即可得到置亂的圖像。</p><p> 圖像的二維Arnold變換,實現(xiàn)像素位置的置亂,所以經(jīng)過Arnold變換處理的圖像,其灰度直方圖與原圖一樣。下面以256×256的圖像進行1次、192次置亂之后的圖像,在192次置亂后,又回到原始圖像</p><p> 圖3.1 置換次
29、數(shù)不同的圖</p><p> 用MATLAB實現(xiàn)Arnold變換的程序如下:</p><p> G=imread('D:\Miss256G.bmp');</p><p> w0 = double (G) / 255 ;</p><p> [m,n]=size(w0);</p><p><b
30、> w1 =w0 ;</b></p><p> subplot(1,3,1)</p><p> imshow(w1 ,[ ]) ;</p><p> title('原圖')</p><p> for k = 1:1 % 置換1次</p&g
31、t;<p> for x = 1:m</p><p> for y = 1 :n</p><p> x1 = x + y ;</p><p> y1 = x + 2*y ;</p><p><b> if x1 > m</b></p><p> x1 = mod(x
32、1 ,m) ;</p><p><b> end</b></p><p><b> if y1 > n</b></p><p> y1 = mod(y1 ,n) ;</p><p><b> end</b></p><p><b>
33、; if x1== 0</b></p><p><b> x1 = m ;</b></p><p><b> end </b></p><p> if y1 == 0</p><p><b> y1 = n ;</b></p><p&g
34、t;<b> end </b></p><p> w1 (x1 ,y1) =w0 (x ,y) ;</p><p><b> end </b></p><p><b> end </b></p><p><b> w0 =w1;</b></
35、p><p><b> end </b></p><p> subplot(1,3,2)</p><p> imshow(w1 ,[ ]);</p><p> title('置換1次')</p><p> w0 = double (G) / 255 ;</p>&
36、lt;p> [m,n]=size(w0);</p><p><b> w2=w0 ;</b></p><p> for k = 1:192 %置換192次</p><p> for x = 1:m</p><p> for y = 1 :n</p
37、><p> x1 = x + y ;</p><p> y1 = x + 2*y ;</p><p><b> if x1 > m</b></p><p> x1 = mod(x1 ,m) ;</p><p><b> end</b></p><
38、;p><b> if y1 > n</b></p><p> y1 = mod(y1 ,n) ;</p><p><b> end</b></p><p><b> if x1== 0</b></p><p><b> x1 = m ;</
39、b></p><p><b> end </b></p><p> if y1 == 0</p><p><b> y1 = n ;</b></p><p><b> end </b></p><p> w1 (x1 ,y1) =w0 (
40、x ,y) ;</p><p><b> end </b></p><p><b> end </b></p><p><b> w0 =w1;</b></p><p><b> end </b></p><p> sub
41、plot(1,3,3)</p><p> imshow(w2 ,[ ]);</p><p> title('置換192次')</p><p> 3.2 Arnold變換的周期性</p><p> 對于數(shù)字圖像來說,可以將其看成是一個函數(shù)在離散網(wǎng)格點處的采樣值,這樣我們就得到了一個表示圖像的矩陣.矩陣中元素的值是對應點處
42、的灰度值。對于正方形數(shù)字圖像,我們的離散化的Arnold變換式(3.1.1),其中N為圖像的寬度和高度,即圖像矩陣的階數(shù)。</p><p> 數(shù)字圖像經(jīng)過Arnold變換后,變得混亂不堪,繼續(xù)使用Arnold變換若干次后,會呈現(xiàn)與原圖一樣的圖片,說明Arnold變換具有周期性。置亂變換的周期性變換性質(zhì),對于研究圖像的恢復有積極的作用。</p><p> 3.2.1 Arnold變換式周
43、期性定理</p><p> 給定自然數(shù),Arnold變換式的周期,是使式(3.2.1)成立的最小自然數(shù):</p><p> ?。?.2.1) </p><p> 此定理的證明此處不再詳細描述。由定理3.2.1可以得出以下推論:給定自然數(shù),Arnold變換式(3.1.1)的周期,是使式(3.2.2)成立的最小自然數(shù):</p><p>
44、;<b> ?。?.2.2)</b></p><p> 其中 ,N是圖像矩陣的階數(shù)。</p><p> 由于Arnold變換具有周期性,不同大小的圖像經(jīng)過一定的迭代變換就可以恢復到原始圖像。</p><p> Arnold變換之所以成為一種得到廣泛應用的置亂算法,是因為Arnold變換具有周期性,如果重復的進行Arnold變換,經(jīng)過一定的
45、次數(shù)之后必然會還原出原始圖像。Arnold變換的周期性與圖像的大小有關系,但是不成正比。如大小為128 ×128的圖像的Arnold變換的周期為96,大小為240 ×240的圖像的Arnold變換的周期為60。下圖為Arnold變換周期和圖像尺寸關系圖</p><p> 圖3.2 Arnold變換周期和圖像尺寸關系圖</p><p> 表3.2.1是不同階數(shù)下的圖像
46、迭代恢復到原始圖像的周期。</p><p> 表3.2.1 各種大小為的圖像的二維Arnold變換周期</p><p> 3.3 基于Arnold變換的圖像恢復</p><p> Arnold變換具有周期性,當?shù)侥骋徊綍r,將重復得到原始圖像。傳統(tǒng)的Arnold變換的圖像恢復是利用Arnold變換的周期性。由圖3.3可使256×256的renwu圖
47、像進行置亂與恢復(表3.2.1可得圖像大小為256×256的周期為192)。</p><p> 圖3.3 Arnold置亂的圖像恢復</p><p> 觀察表3.2.1,Arnold變換的周期與圖像大小相關,但并不成正比關系。例如,對于128×128的數(shù)字圖像,它的置亂周期為96,即原圖要經(jīng)過96次Arnold變換之后才能恢復原圖。如果原圖已經(jīng)經(jīng)過了30次Arnol
48、d置亂,那么,只需再進行(96-30)次即66次Arnold變換,便可恢復原圖;對于已經(jīng)置亂了200次的圖像,要想恢復原圖,需要變換的次數(shù)為96 - (200 mod 96)=88。利用周期性進行置亂恢復,方法簡單、便于理解和實現(xiàn)。</p><p> 但是必須知道圖像的大小,才能計算出Arnold變換的周期。</p><p> 用MATLAB實現(xiàn)Arnold變換圖像的復原程序如下:&l
49、t;/p><p> G=imread('D:\Miss256G.bmp');</p><p> w0 = double (G) / 255 ;</p><p> [m,n]=size(w0);</p><p><b> w1 =w0 ;</b></p><p> subplo
50、t(1,2,1)</p><p> imshow(w1 ,[ ]) ;</p><p> title('原圖')</p><p> for k = 1:192 %置換192次</p><p> for x = 1:m</p><p> f
51、or y = 1 :n</p><p> x1 = x + y ;</p><p> y1 = x + 2*y ;</p><p><b> if x1 > m</b></p><p> x1 = mod(x1 ,m) ;</p><p><b> end</b&g
52、t;</p><p><b> if y1 > n</b></p><p> y1 = mod(y1 ,n) ;</p><p><b> end</b></p><p><b> if x1== 0</b></p><p><b&g
53、t; x1 = m ;</b></p><p><b> end </b></p><p> if y1 == 0</p><p><b> y1 = n ;</b></p><p><b> end </b></p><p>
54、w1 (x1 ,y1) =w0 (x ,y) ;</p><p><b> end </b></p><p><b> end </b></p><p><b> w0 =w1;</b></p><p><b> end </b></p>
55、;<p> subplot(1,2,2)</p><p> imshow(w1 ,[ ]);</p><p> title('置換192次')</p><p> 3.4 基于Arnold變換的分析</p><p> 從結(jié)果上看,Arnold方法簡單、容易實現(xiàn),在不同迭代次數(shù)下,圖像相似度較小,置亂效果較
56、好,圖形已經(jīng)被置亂得面目全非,無法看出原始圖像的端倪,且用corr2()函數(shù)來檢測矩陣的相似程度;發(fā)現(xiàn)置亂后的圖像相似,經(jīng)192次置換后的圖像。</p><p> 但該方法具有周期性,變換次數(shù)在一定的范圍內(nèi)與置亂程度成正比,但到一個周期結(jié)束時會恢復出原始圖像。所以有以下缺點:</p><p> (1)在圖像置亂過程中使用的矩陣形式是固定的、復雜度不夠,容易被破解。</p>
57、<p> (2)圖像的隱秘性只能依賴于置亂的次數(shù),安全性仍需加強。</p><p> (3)運算量大而且求逆變換困難。</p><p> 第四章 本文總結(jié)與展望</p><p> 其中二維坐標置亂法,原理簡單,容易實現(xiàn),但加密過于簡單,容易被解密,卻置亂效果不是很好;Arnold置亂方式實現(xiàn)容易,置亂效果較好,但由于在圖像置亂過程中使用的矩陣形式
58、是固定的,圖像的隱秘性只能依賴于置亂的次數(shù),安全性仍需加強;但是問題仍然存在,如果非法破譯者不在乎恢復運算可能要花費的巨大計算時間,那么他就可以恢復出原始圖像。所以我們還必須考慮,在置亂過程的每一步都通過添加其它操作,來增加非法破譯的復雜度。因此,本文在實用性方面還有許多需要改善的地方,從而進一步提高置亂算法在各方面的性能。今后數(shù)字圖像置亂技術的研究方向?qū)?cè)重于完善圖像置亂理論,提高置亂算</p><p> 法
59、的安全性、穩(wěn)健性,研究其在實際網(wǎng)絡中的應用,建立相關標準等。</p><p><b> 參考文獻</b></p><p> [1] 韓明、王家寶、李林,數(shù)學實驗,上海:同濟大學出版社,2012.1</p><p> [2] 何正風,Matlab在數(shù)學方面的應用,北京:清華大學出版社,2012.1</p><p>
60、 [3] 王薇等,MATLAB從基礎到精通,北京:電子工業(yè)出版社,2012.5</p><p> [5] .丁瑋,囝偉齊,齊東旭 基于置亂與融合的數(shù)字圖像隱藏技術及應用 中國圖像圖形學報 2000。</p><p> [6] 丁瑋,固偉齊,齊東旭 基于Arnold變換的數(shù)字圖像置亂技術 計算機輔助設計與圖形學學報 2001。</p>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設計---遠程登錄的計算機實現(xiàn)
- 計算機組成原理課程設計-- 模型計算機的設計與實現(xiàn)
- 計算機組成原理課程設計——模型計算機的設計與實現(xiàn)
- 課程設計----點對點通信計算機的實現(xiàn)
- 計算機原理課程設計
- 計算機課程設計
- 計算機組成原理課程設計--簡單計算機的設計
- 計算機組成原理課程設計---簡單計算機系統(tǒng)設計與實現(xiàn)
- 計算機組成原理課程設計--簡單計算機系統(tǒng)設計與實現(xiàn)
- 計算機硬件課程設計報告---簡單計算機的設計
- 計算機組成原理課程設計---簡單計算機的設計
- 計算機組成原理課程設計---簡單計算機系統(tǒng)設計與實現(xiàn)
- 《計算機原理》網(wǎng)絡課程設計與實現(xiàn).pdf
- 潮流計算的計算機算法課程設計
- 潮流計算的計算機算法課程設計
- 計算機組成原理課程設計--模型計算機設計
- 計算機圖形課程設計報告
- 計算機溫度控制課程設計
- 計算機控制課程設計
- vf計算機課程設計
評論
0/150
提交評論