劉智慧,付麗華
(中國地質(zhì)大學(xué) 數(shù)理學(xué)院, 武漢, 湖北 430074)
基于數(shù)字實例的奇異值分解教學(xué)研究
劉智慧,付麗華
(中國地質(zhì)大學(xué) 數(shù)理學(xué)院, 武漢, 湖北 430074)
考慮到奇異值分解涉及的理論性較強,試圖從奇異值分解的基本原理出發(fā),通過圖像壓縮與恢復(fù)和圖像降噪2個具體的實例,結(jié)合MATLAB數(shù)學(xué)軟件來闡述奇異值分解的作用,注重應(yīng)用奇異值分解理論解決相關(guān)的實際問題,以期加深學(xué)生對奇異分解理論的理解,領(lǐng)會奇異值分解的意義和價值.
奇異值分解; 圖像壓縮恢復(fù); 圖像降噪
矩陣的奇異值分解是最重要的矩陣分解之一,具有較高的理論價值和極其廣泛的實際應(yīng)用[1-11],其理論由Beltrami和Jordan分別于1873年和1874年獨立創(chuàng)建. 由于奇異值分解理論較為抽象深奧,學(xué)生在學(xué)習(xí)時比較容易陷入枯燥的理論證明而失去對其學(xué)習(xí)的熱情和興趣. 在大學(xué)課程《線性代數(shù)》、《計算方法》和《矩陣論》等課程中也很少介紹奇異值分解有關(guān)的應(yīng)用背景和實際應(yīng)用. 如果教師在講授奇異值分解定理時,通過一些實際生活中的具體例子來說明矩陣奇異值分解的作用,將在一定程度上調(diào)動學(xué)生的學(xué)習(xí)積極性,激發(fā)其學(xué)習(xí)興趣,從而使其較好地掌握矩陣的奇異值分解.通過圖像壓縮與恢復(fù)和圖像降噪2個具體實例,結(jié)合MATLAB數(shù)學(xué)軟件說明奇異值分解的作用,以求加深學(xué)生對奇異值分解的真正理解,拓展奇異值分解理論的進一步應(yīng)用.
其中,(·)H表示復(fù)共軛轉(zhuǎn)置運算,∑=diag{σ1,σ2,…,σr}且σ1≥σ2≥…≥σr>0,稱σi為A的奇異值,列向量ui(vi)分別稱為A對應(yīng)奇異值σi的左(右)奇異向量.
從定理1中可以得到,任意一個比較復(fù)雜的矩陣A總可以用階數(shù)更小更簡單的一些子矩陣ui和vi相乘來表示.
在實際應(yīng)用中,得到的數(shù)據(jù)矩陣往往會帶有噪聲或擾動,這樣就會使得原本是低秩矩陣的奇異值全部為非零. 為此,可對所得數(shù)據(jù)矩陣進行奇異值分解,利用其矩陣前若干個較大奇異特征值和相對應(yīng)的左右奇異向量來重構(gòu)原數(shù)據(jù)矩陣.
從定理2中可以得到,在Frobenius范數(shù)意義下,矩陣A的所有秩為k的近似矩陣中,Ak最接近原始矩陣A,可以理解為Ak對矩陣A的重構(gòu),即Ak≈A.
通過一個數(shù)據(jù)矩陣的奇異值分解來考察奇異值對矩陣的影響.
利用MATLAB命令求出奇異值分解的酉矩陣和對角矩陣,相應(yīng)的MATLAB程序為:
A=[1 2 3;5 1 2;7 1 3];
[U,D,V]=svd(A);
運行結(jié)果如下:
U=
-0.264 3 0.964 3 0.016 7
-0.560 0 -0.139 4 -0.816 6
-0.785 2 -0.225 2 0.576 9
D=
9.747 7 0 0
0 2.813 8 0
0 0 0.255 2
V=
-0.878 2 - 0.465 2 -0.111 0
-0.192 2 0.555 8 -0.808 8
-0.437 9 0.688 9 0.577 6
故A的奇異值分解為
A=UDVH=
從矩陣A的奇異值分解可以看到:對角矩陣∑中的第三個奇異值σ3=0.255 2相比于另外2個奇異值較小,將其忽略,即令σ3=0. 計算前2個大的奇異值σ1,σ2和相對應(yīng)的左右奇異向量u1,u2,v1,v2構(gòu)成的矩陣A2,即
比較矩陣A2和A,有A2≈A.從例1可以得到,通過奇異值分解,利用原數(shù)據(jù)矩陣的前2個較大特征值和相應(yīng)的左右奇異向量可以重構(gòu)原數(shù)據(jù)矩陣A.
2.1 圖像壓縮與恢復(fù)現(xiàn)有一幅衛(wèi)星圖像,假設(shè)此圖像含n×n個像素,即這張圖像包含n2個數(shù)據(jù),現(xiàn)將此圖像發(fā)送到地球,如果將n2個數(shù)據(jù)一起傳送,那么數(shù)據(jù)量往往很大. 因此,希望能否只傳送n2個數(shù)據(jù)中的較少數(shù)據(jù),同時又能在地球接收端可以通過接收的數(shù)據(jù)重構(gòu)原圖像?回答是肯定的.
k(k (1) 式(1)表明,可以用k(2n+1)個數(shù)據(jù)代替原來的n2個圖像數(shù)據(jù),即用矩陣Ak對應(yīng)的圖像恢復(fù)原始圖像A. 進一步,定義圖像的壓縮比為n2:k(2n+1),當(dāng)k(2n+1) 用具體例子說明基于奇異值分解的圖像壓縮與恢復(fù). 圖1(a)表示含128×128像素的Lena圖像,將此圖像可以看作是一個128×128階的矩陣A. 對此圖像矩陣A進行奇異值分解可得一條奇異值曲線,如圖2所示. 從圖2可以看到,隨著k的增加,奇異值σk迅速減小.k=1時,奇異值σ1=13 257,當(dāng)k≥20時,奇異值σk≤378. 圖1 奇異值分解對Lena 圖像的壓縮與恢復(fù) 圖2 Lena 圖像的奇異值曲線 圖1表示利用奇異值分解對Lena圖像的壓縮與恢復(fù). 圖1(b),(c),(d)分別表示矩陣A20,A40,A60所對應(yīng)的圖像,其中A20,A40,A60分別表示A矩陣前20個,40個,60個大的奇異值及與這些奇異值相對應(yīng)的左(右)奇異向量構(gòu)成的矩陣. 從圖1可知,利用奇異值分解對圖像進行壓縮與恢復(fù)時,k的取值越大,恢復(fù)的圖像效果越好,但壓縮率會越??;k的取值越小,壓縮率會越大,但恢復(fù)的圖像效果越不理想. 例如,在圖1(b)中,k=20時,圖像的壓縮率為3.19∶1,壓縮率較大,但恢復(fù)的圖像與原始圖像1(a)相差較大,圖像的恢復(fù)效果不理想. 在圖3(c)中,k=40時,恢復(fù)的圖像與原始圖像1(a)非常接近,圖像的壓縮率為1.59∶1. 在圖3(d)中,k=60時,恢復(fù)的圖像效果較好,與原始圖像1(a)非常接近,但圖像的壓縮率只有1.06∶1. 所以,對圖像1(a)而言,取k=40時,圖像既有較高的壓縮比同時圖像又得到了較好的恢復(fù). 以上例子說明,利用矩陣的奇異值分解,選擇矩陣前面部分較大奇異值而忽略較小奇異值可以實現(xiàn)圖像的壓縮與恢復(fù). 圖1相應(yīng)的MATLAB程序為: A= imread(Lena.bmp); % 讀取128x128的Lena圖像 A = double(A); %數(shù)據(jù)格式轉(zhuǎn)換 [U,D,V]=svd(A); % 對數(shù)據(jù)矩陣進行奇異值分解 recv1=U(:,1:20)*D(1:20,1:20)*V(:,1:20); %提取前20個大的奇異值和奇異向量 recv2=U(:,1:40)*D(1:40,1:40)*V(:,1:40); %提取前40個大的奇異值和奇異向量 recv3=U(:,1:60)*D(1:60,1:60)*V(:,1:60); %提取前60個大的奇異值和奇異向量 subplot(221); imshow(A); xlabel((a) 原始圖像); subplot(222); imshow(mat2gray(recv1)); xlabel((b) k=20); subplot(223); imshow(mat2gray(recv2)); xlabel((c) k=40); subplot(224); imshow(mat2gray(recv3)); xlabel((d) k=60); 圖2相應(yīng)的MATLAB程序為: A= imread(Lena.bmp); % 讀取128x128的Lena圖像 A = double(A); %數(shù)據(jù)格式轉(zhuǎn)換 [U,D,V]=svd(A); % 對數(shù)據(jù)矩陣進行奇異值分解 for i=1:128 %提取奇異值 d(i)=D(i,i); end i=1:128; plot(i,d(i),*r); xlabel(k); ylabel(sigma_k); 2.2 圖像降噪利用奇異值分解對圖像進行降噪. 設(shè)有一張含15×11個像素的黑白圖像,見圖3(a). 用15×11的矩陣A表示該圖像,對于黑白圖像,像素是白的就取數(shù)1,像素是黑色的就取數(shù)0. 現(xiàn)將此黑白圖像添加均值為零,標準差為0.1的高斯白噪聲,得到一幅含噪聲的圖像,見圖3(b)(用矩陣B表示). 圖3 原始圖像、加噪圖像和降噪圖像對比 圖3相應(yīng)的MATLAB程序為: M=15; N=11; a=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0]; b=[0 0 0 1 1 1 1 1 1 1 1 1 0 0 0]; A=[aaabbbbbaaa]; e=normrnd(0,0.1,M,N); B=A+e; subplot(131); imshow(A); xlabel((a)原始圖像); subplot(132); imshow(B); xlabel((b)加噪圖像); [U,D,V]=svd(B); C=U(:,1)*D(1,1)*V(:,1); subplot(133); imshow(C); xlabel((c)降噪圖像); 運用MATLAB數(shù)學(xué)軟件將奇異值分解理論應(yīng)用到解決圖像壓縮與恢復(fù)和圖像降噪等實際問題的教學(xué)方式,使得原本枯燥難懂的抽象理論變得易于理解記憶,使得教學(xué)內(nèi)容得到進一步的擴展. 同時,有利于培養(yǎng)學(xué)生學(xué)習(xí)數(shù)學(xué)的興趣和熱情,有利于培養(yǎng)其運用數(shù)學(xué)解決實際問題的能力. 此教學(xué)方式將對提高數(shù)學(xué)教學(xué)質(zhì)量和培養(yǎng)復(fù)合型人才起到一定的積極作用. [1] 張賢達. 矩陣分析與應(yīng)用[M]. 北京:清華大學(xué)出版社, 2004. [2] 聶守平, 魏曉燕. 數(shù)字圖像的奇異值分解[J]. 南京師大學(xué)報(自然科學(xué)版), 2001, 24(1): 9-61. [3] 尹芳黎, 楊雁瑩, 王傳棟, 等. 矩陣奇異值分解及其在高維數(shù)據(jù)處理中的應(yīng)用[J]. 數(shù)學(xué)的實踐與認識, 2011, 41(15): 171-176. [4] 羅小桂. 矩陣奇異值分解(SVD)的應(yīng)用[J]. 井岡山醫(yī)專學(xué)報, 2005, 12(4): 133-135. [5] 申卯興, 鄭武團. 矩陣的奇異值分解的應(yīng)用[J]. 工科數(shù)學(xué), 1996, 12(3): 56-61. [6] 王宏興, 霍玉洪. 奇異值分解的教與學(xué)[J]. 淮南師范學(xué)院學(xué)報, 2015, 17(2): 125-127. [7] 張磊, 彭偉才, 原春暉, 等. 奇異值分解降噪的改進方法[J]. 中國艦船研究, 2012, 7(5): 83-88. [8] 劉波, 楊華, 張志強. 基于奇異值分解的圖像去噪[J]. 微電子學(xué)與計算機, 2007, 24(11): 169-171. [9] 黃君, 包曉敏, 杜晶晶. 基于HVS和奇異值分解的圖像質(zhì)量評價[J]. 工業(yè)控制計算機, 2012, 25(3): 39-40. [10] 高媛赟, 溫小榮, 林國忠, 等. 基于奇異值分解的中國資源一號O2C衛(wèi)星數(shù)據(jù)的融合評價及應(yīng)用[J]. 南京林業(yè)大學(xué)學(xué)報(自然科學(xué)版), 2015, 39(3): 29-33. [11] 侯翔, 楊輝. 基于奇異值分解的遙感圖像魯棒水印算法探討[J]. 測繪科學(xué), 2015, 40(7): 123-126. Teaching of Singular Value Decomposition of Numerical Examples Liu Zhihui, Fu Lihua (School of Mathematics and Physics, China University of Geosciences, Wuhan 430074, China) Considering the abstract of the SVD, based on the basis principle of SVD, the two examples, the image compression and restoration and image de-noising by MATLAB software, were used to elucidate the function of SVD. Our study emphasizes on applying the theory of SVD to solve the practical problems. The purpose of this paper is to help students to understand the theoretical and practical values of SVD. Singular Value Decomposition; image compression and restoration; image de-noising 2015-09-19 國家自然科學(xué)基金數(shù)學(xué)天元基金(11426210);湖北省教學(xué)研究項目(“問題解決”教學(xué)模式在高等數(shù)學(xué)課堂教學(xué)中的運用研究)(2012139) 劉智慧(1979-),女,湖南沅江人,博士,研究方向:信號處理,E-mail: zhhliu@cug.edu.cn 1004-1729(2015)04-0391-05 O 151 A DOl:10.15886/j.cnki.hdxbzkb.2015.00683 小 結(jié)