矩陣在圖像處理中的若干應用11_第1頁
矩陣在圖像處理中的若干應用11_第2頁
矩陣在圖像處理中的若干應用11_第3頁
矩陣在圖像處理中的若干應用11_第4頁
矩陣在圖像處理中的若干應用11_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、矩陣在圖像處理中的若干應用1緒論目前,隨著科學技術的高速發(fā)展,現(xiàn)實生活中有大量的信息用數(shù)字進行存儲、處理和傳送。而傳輸帶寬、速度和存儲器容量等往往有限制,因此數(shù)據(jù)壓縮就顯得十分必要。數(shù)據(jù)壓縮技術已經是多媒體發(fā)展的關鍵和核心技術。圖像文件的容量一般都比較大,所以它的存儲、處理和傳送會受到較大限制,圖像壓縮就顯得極其重要。當前對圖像壓縮的算法有很多,特點各異,類似JPEG 等許多標準都已經得到了廣泛的應用。奇異值分解(Singular Value Decomposition ,SVD) 是一種基于特征向量的矩陣變換方法,在信號處理、模式識別、數(shù)字水印技術等方面都得到了應用。由于圖像具有矩陣結構,有

2、文獻提出將奇異值分解應用于圖像壓縮,并取得了成功,被視為一種有效的圖像壓縮方法。本文在奇異值分解的基礎上進行圖像壓縮。2矩陣的奇異值分解原理2.1矩陣的奇異值設,是的特征值,是的特征值,它們都是實數(shù)。且設則特征值與之間的關系為:,。設, 的正特征值,的正特征值,稱,是的正奇異值,簡稱奇異值。若是正規(guī)矩陣,則的奇異值是的非零特征向量的模長。2.2矩陣的奇異值分解(SVD)若,是的個正奇異值,則存在階酉矩陣和階酉矩陣,滿足: (1)其中,為奇異對角陣。滿足是對角陣,滿足是對角陣1。的第列為的對應于奇異值對應的左奇異向量,的第列為的對應于奇異值對應的右奇異向量。它們的每一列均為單位向量,且各列之間相

3、互正交。若,是的個正奇異值,則總有次酉矩陣,滿足:,其中。奇異值分解是一種基于特征向量的矩陣變換方法。奇異值分解是現(xiàn)代數(shù)值的最基本和最重要的工具之一。3矩陣的奇異值分解在圖像壓縮中的應用3.1奇異值分解壓縮原理分析用奇異值分解來壓縮圖像的基本思想是對圖像矩陣進行奇異值分解,選取部分的奇異值和對應的左、右奇異向量來重構圖像矩陣。根據(jù)奇異值分解的圖像性質1和4可以知道,奇異值分解可以代表圖像的能量信息,并且可以降低圖像的維數(shù)2。如果表示個維向量,可以通過奇異值分解將表示為個維向量。若的秩遠遠小于和,則通過奇異值分解可以大大降低的維數(shù)。對于一個像素的圖像矩陣,設,其中,。按奇異值從大到小取個奇異值和

4、這些奇異值對應的左奇異向量及右奇異向量重構原圖像矩陣。如果選擇的,這是無損的壓縮;基于奇異值分解的圖像壓縮討論的是,即有損壓縮的情況。這時,可以只用個數(shù)值代替原來的個圖像數(shù)據(jù)。這個數(shù)據(jù)分別是矩陣的前個奇異值, 左奇異向量矩陣的前列和 右奇異向量矩陣的前列元素。比率: (2)稱為圖像的壓縮比。顯然,被選擇的奇異值的個數(shù)應該滿足條件,即。故在傳送圖像的過程中,不需要傳個數(shù)據(jù),而只需要傳個有關奇異值和奇異向量的數(shù)據(jù)即可。接收端,在接收到奇異值以及左奇異向量和右奇異向量后,可以通過: (3)重構出原圖像矩陣。與的誤差為: (4)某個奇異值對圖像的貢獻可以定義為,對一幅圖像來說,較大的奇異值對圖像信息的

5、貢獻量較大,較小的奇異值對圖像的貢獻較小。假如接近1,該圖像的主要信息就包含在之中。通常圖像的奇異值都具“大L 曲線”,只有不多的一些比較大的奇異值,其它的奇異值相對較小,因此一般只需要比較小的k 就使接近1。在滿足視覺要求的基礎上,按奇異值的大小選擇合適的奇異值個數(shù),就可以通過將圖像恢復。越小,用于表示的數(shù)據(jù)量就小,壓縮比就越大,而越接近,則與就越相似。在一些應用場合中,如果是規(guī)定了壓縮比,則可以由式求出,這時也同樣可以求出。3.2奇異值分解壓縮應用過程在對圖像進行操作時,因為矩陣的維數(shù)一般較大,直接進行奇異值分解運算量大,可以將圖像分解為子塊,對各子塊進行奇異值分解并確定奇異值個數(shù),將每個

6、子塊進行重構。這樣操作除了因為對較小型的矩陣進行奇異值分解的計算量比較小外,另一方面是為了利用原始圖像的非均勻的復雜性。如果圖像的某一部分比較簡單,那么只需要少量的奇異值,就可以達到滿意的近似效果。為了保證圖像的質量就需要較多的奇異值。但是各個子塊的奇異值數(shù)目, 大小各不相同, 因此可以考慮為每個子塊自適應的選擇適當?shù)钠娈愔禂?shù)目。一種簡單的方法是定義奇異值貢獻量的和來選擇,其中是一個接近1的數(shù)。對常見的256 256 .bmp格式的圖像(位圖),劃分為44個子塊,每個子塊大小為6464。對每個子塊根據(jù)來選擇所需要的奇異值數(shù)目3。增大的值來選擇奇異值數(shù)目,可以推理得隨著不斷增大,視覺效果越來越好

7、。隨著不斷增大,需要的奇異值也增多,壓縮比會減小。4矩陣奇異值分解在圖像隱藏中的應用4.1數(shù)字圖像置亂的數(shù)學性質置亂原理:將原來點處的像素對應的灰度值或RGB顏色值移動到變換后的點處,數(shù)字圖像的置亂有基于位置空間、色彩空間和頻率空間的置亂變換。置亂具有周期性,如果對一個數(shù)字圖像反復地使用置亂變換,當經過一定周期的迭代后,會出現(xiàn)復現(xiàn)原圖像。我們構造自同構變換如下: (5)則置亂次數(shù)及k可作為隱藏系統(tǒng)的密碼,從而提高了系統(tǒng)的安全性和保密性。4.2數(shù)字圖像的奇異值分解一幅靜態(tài)圖像,實質上就是一個彩色或灰度像素矩陣,在線性代數(shù)中,矩陣的特征值是矩陣特征的體現(xiàn),而矩陣的奇異值在體現(xiàn)矩陣特征方面,要優(yōu)于特

8、征值,圖像矩陣的奇異值反映了圖像的“能量特性”,對應奇異向量則反映了圖像的“幾何特性”,它對圖像的灰度變化具有不敏感性,圖像奇異值的細微變化不會引起圖像視覺質量的下降,如果對圖像矩陣做轉置運算,其奇異值不發(fā)生變化。矩陣奇異值具有很好的穩(wěn)定性,當矩陣A有微小振動時,其奇異值的改變不會大于振動矩陣的2范數(shù)。若矩陣奇異值經過歸一化處理,則可實現(xiàn)奇異值的比例不變性。另外,矩陣奇異值還具有旋轉不變性,因此,奇異值能有效地反映矩陣的特征,在圖像處理中能表現(xiàn)圖像的代數(shù)特性。矩陣分解在一定程度上可以用來進行圖像壓縮.對于圖像分解得到的奇異值矩陣,將其較小的一些對角元清為0,再進行反變換即可完成圖像的有損壓縮.

9、方法的基本原理是將水印嵌入到圖像矩陣的奇異值中。在水印的嵌人過程中對圖像矩陣的奇異值分解,得到兩個正交矩陣、及一個對角陣。水印 被疊加到矩陣上,對新產生的矩陣進行奇異值分解,得到、和,其中常數(shù)調節(jié)水印的疊加強度。然后將矩陣、和 相乘,得到處理后的包含水印的圖像 。即如果矩陣和 分別表示原始圖像矩陣和水印,那么通過以下的四個步驟得到水印圖 :(1)將圖像矩陣進行奇異值分解 (2)讀取水印圖像,將其迭加到對角陣上得到新矩陣 (3)將新矩陣進行奇異值分解 (4)得到含水印的圖像 4.3數(shù)據(jù)隱藏算法數(shù)字水印技術實際上就是一種數(shù)據(jù)隱藏技術,它是把一些附加信息(水印信息)直接嵌入原始數(shù)字信息的內容中,我們

10、將上述技術應用于數(shù)字水印中,采用了置亂與奇異值分解結合的方法進行數(shù)據(jù)隱藏于提取,收到了較好的效果。 從水印的提取方法來看,可分為提取時需要原圖像和不需要原圖像兩種,后者被稱為盲水印,我們實現(xiàn)的是盲水印處理,處理過程如圖1所示:原始圖像置亂加密水印信息嵌入置亂逆運算置亂加密水印信息提取水印驗證水印圖像嵌入水印圖像嵌入水印的圖像圖1 盲水印基本處理過程本文算法的具體描述如下:(a)水印圖像的嵌入設M為載體圖像,W為水印圖像(1) 利用Arnold變換對載體圖像M進行置亂變換,得到(2) 對分為互不相關的大小為的若干塊(3) 對每一小塊進行奇異值分解,得到降序排列的奇異值R為圖像矩陣的秩,U、V為對

11、應的左右奇異矩陣,對S矩陣來說,顯然是,.(4) 求相鄰塊BLOCK1,BLOCK2的S值的相似系數(shù)(5) 若兩塊相似,求其S(1,1)最小值,將兩相似塊S(1,1)置為同樣值。(6) 修改S值,進行微量調整以嵌入水印信息。(7) 計算嵌入水印后的該兩圖像塊的新S值。(8) 得到新的圖像塊,填回圖像矩陣中。(9) 重復上述(2)(8)步,直至該圖像所有信息全部嵌入數(shù)字圖像中。(10) 對做復原逆變換,得到為正常顯示圖像。(b)水印的提取過程水印提取采用了最常用的提取方法,就是運用加入水印逆運算。(1) 對M(加入水印的圖像)做置換,得到(2) (2)對含有水印的圖像矩陣進行分塊,對分塊進行奇異

12、值分解 為分解后的按降序排列的奇異值向量,U、V為正交的奇異矩陣。(3) 計算相鄰矩陣的相似系數(shù)。(4) 若兩塊相似,則按相應規(guī)則提取水印。(5) 重復(2)(4)步,直至取出所有的水印W。(c) 圖像實驗結果將水印放入圖像中,得到的結果如圖1所示,此時的仿真時間為0.546s,信噪比為36.84。圖1 基于置亂變換與奇異值分解的數(shù)字水印圖像處理將水印從圖像中提取出來如圖2所示。此時的仿真時間為0.2652s,相似度比為0.9897??梢钥闯鎏崛〕鰜淼乃∨c原來的水印是一致的,效果非常好。圖2 將水印提取出來和原來水印之間的比較由于奇異值具有相對穩(wěn)定的特點,水印被疊加在圖像的SVD域上,使算法

13、具有較好的穩(wěn)定性和安全性,嵌入水印的圖像保持了較好的品質,算法采用了相鄰塊存放的策略,使得提取水印無需使用原圖像,仿真實驗說明了算法是可行的,特別是與置亂技術的結合,更是提高了圖像信息在傳送處理過程中的安全性,對于靜止圖像來說,奇異值分解方法與置亂技術結合時一種有效的數(shù)據(jù)隱藏技術。5總結本文介紹了兩種矩陣在圖像處理中的常見應用。用奇異值分解進行圖像壓縮,圖像隱藏。利用文中所述方法,可以獲得成功。盡管如此,仍有些需要改進之處。如:在圖像壓縮應用中:對子塊的劃分可以采取更加有效的方法來完成。例如對規(guī)模很大的矩陣,隨機抽取矩陣的某些行列得到規(guī)模較小的矩陣,計算小矩陣的奇異值,重復若干次,用這些小矩陣

14、的奇異值逼近原始矩陣的奇異。另外若已知圖像矩陣的奇異值及其特征空間,一般認為較大的奇異值及其對應的奇異向量表示圖像信號,而噪聲反映在較小的奇異值及其對應的奇異向量上。依據(jù)一定的準則選擇門限,低于該門限的奇異值置零(截斷) ,然后通過這些奇異值和其對應的奇異向量重構圖像進行去噪。而在圖像隱藏應用中:只用奇異值分解也可以對數(shù)字進行隱藏,只是深度不如與置亂技術結合隱藏的深,文中用這些性質才使得將要隱藏的信息(水?。┣度胼d體后,對于觀察者的視覺或聽覺知道奇異值的穩(wěn)定性與旋轉不變性,穩(wěn)定性中是利用矩陣的譜半徑,即2-范數(shù),使觀察者察覺不出載體數(shù)據(jù)的變換,最理想的情況是水印與原始載體在視覺上是一模一樣的。

15、6參考文獻1李新, 何傳江. 矩陣論及其應用M. 重慶大學出版社, 2008. 2 王樹梅, 趙衛(wèi)東, 王志成. 基于 SVD 的圖像數(shù)字水印技術研究J. 計算機工程與設計, 2008(6), 11(29): 2834-2839. 3 王磊. 基于SVD 的圖像數(shù)字水印技術研究D. 安徽:合肥工業(yè)大學, 2009.7附錄程序說明1將水印放入圖像的matlab程序代碼clear all;clc;start_time=cputime;file_name=lena.bmp;cover_object=imread(file_name);cover_object =cover_object(:,:,1)

16、;cover_object=double(cover_object);Mc=size(cover_object,1);Nc=size(cover_object,2);file_name=wp.bmp;message=double(imread(file_name);message =message(:,:,1);Mm=size(message,1);Nm=size(message,2);blocksize=8;blocksize1=2;m=(Mc*Nc)/(blocksize2);M=(4*Mm*Nm)/(blocksize12);x=1;y=1;j=1;for(kk=1:m) s=svd(c

17、over_object(y:y+blocksize-1,x:x+blocksize-1); A0(1,j:(j+3)=s(1:4,:); j=j+4; if(x+blocksize)=Nc x=1;y=y+blocksize; else x=x+blocksize; end endA=A0(:,1:4*Mm*Nm);q=reshape(A,2*Mm,2*Nm);x=1;y=1;j=1;i=1;for(kk=1:M) s=svd(q(y:y+blocksize1-1,x:x+blocksize1-1); A1(i,j)=s(1,1); if(x+blocksize1)=2*Nm x=1; y=y

18、+blocksize1; i=i+1; j=1; else x=x+blocksize1; j=j+1; endendu,s,v=svd(A1);%a=input(message)a=0.4;u1,s1,v1=svd(s+a*message);save s s;save u1 u1;save v1 v1;A=u*s1*v;i=1;j=1;x=1;y=1;for(kk=1:M) u,s,v=svd(q(y:y+blocksize1-1,x:x+blocksize1-1); s(1,1)=A(i,j);midA(y:y+blocksize1-1,x:x+blocksize1-1)=u*s*v; i

19、f(x+blocksize1)=2*Nm x=1;y=y+blocksize1;i=i+1;j=1; else x=x+blocksize1;j=j+1; endendA=reshape(midA,1,4*Mm*Nm);A0(:,1:4*Mm*Nm)=A;watermarked_image=cover_object;x=1;y=1;j=1;for(kk=1:m) u,s,v=svd(cover_object(y:y+blocksize-1,x:x+blocksize-1); s(1:4,1:4)=diag(A0(1,j:j+3); watermarked_image(y:y+blocksize

20、-1,x:x+blocksize-1)=u*s*v; j=j+4; if(x+blocksize)=Nc x=1;y=y+blocksize; else x=x+blocksize; end endscramble=uint8(midA);imwrite(scramble,midA.bmp,bmp);outme=uint8(watermarked_image);imwrite(outme,svd_watermarked.bmp,bmp);elapsed_time=cputime-start_timexsz=255*255*Nc*Mc/sum(sum(cover_object-watermark

21、ed_image).2);psnr=10*log10(xsz)figure(1)subplot(2,2,1),imshow(imread(lena.bmp)title(原圖)subplot(2,2,2),imshow(uint8(message)title(水印)subplot(2,2,3),imshow(scramble,)title(置亂圖)subplot(2,2,4),imshow(outme,)title(含水印圖)程序說明2將水印提取出來,并與原來的水印相比較的matlab程序代碼clear all;start_time=cputime;file_name=svd_watermark

22、ed.bmp;cover_object=double(imread(file_name);cover_object =cover_object(:,:,1);Mc=size(cover_object,1);Nc=size(cover_object,2);file_name=wp.bmp;org_message=double(imread(file_name);org_message =org_message(:,:,1);Mm=size(org_message,1);Nm=size(org_message,2);blocksize=8;blocksize1=2;m=(Mc*Nc)/(blocksize2);M=(4*Mm*Nm)/(blocksize12);x=1;y=1;j=1;for(kk=1:m) s=svd(cover_object(y:y+blocksize-1,x:x+blocksize-1); A0(1,j:(j+3)=s(1:4,:); j=j+4; if(x+blocksize)=Nc x=1;y=y+bl

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論