矩阵奇异值分解的应用

2021-07-14 20:45范云鹏郭小娥
科技风 2021年18期

范云鹏 郭小娥

摘 要:现在的社会是一个信息社会,每天都产生和传送各种各样的信息,尤其随着互联网技术的发展,需要处理的信息更是多到不可胜数。而图像是信息的主要载体,但图像本身占有巨大的空间,因此图像压缩越来越收重视。本文介绍一种有效的图像压缩的方法—奇异值分解。该方法最大的优点是在所有的同阶分解中误差最小的。

关键词:奇异值;压缩;代数特征

现代科学技术发展的速度越来越快,需要掌握的知识越来越多。过去需要几十年知识的总量才会增加一倍,而现在这个周期已经缩短到几年。而知识是通过信息传播的,信息主要是以图像和视频的形式存在的,尤其是现在互联网技术的发展,大大方便了人们的生活。现在看报纸,看书的人越来越少,看电子书和在网上看新闻的越来越多,还可以通过网络足不出户买衣服,买菜,直播卖货和买货的人也增加了许多,另外现在年轻人白天工作忙,中午没时间吃饭,可以通过网络订餐,大大节省了时间,还有在线上课等,但是,网络中的信息都是以数字形式存储和传输的。而信息经过数字化以后的数据量占有非常大的空間。我们平常用手机拍的相片都是几千行几千列,在网络刚兴起的时候,从网上下载一幅照片都需要几个小时的时间,而视频占有的空间更大,因此图像压缩受显得尤为必要。

平常上网看新闻或者购物看电影的时候,经常遇到网络卡顿的情形,那是由于同一时刻在带宽上的信息太多。虽然现在随着互联网技术的成熟,网速是越来越快,但信息比以前也多得多,现在的网速依然没有办法满足人们的需求。图像压缩的目的就是减少图像存储的空间,增加图像的亮度清晰度,从而达到网络流畅的目的。

原始图像含有的数据并不是全部都有用,它含有一些多余的无用信息,而且图像的像素值很多都是非常接近甚至是一样的,重复的部分也没必要重复传输,这就为图像压缩提供了必要性。截至目前,许多专家都投入这一挑战性课题的研究当中并产生了很多图像压缩的方法,主要方法如下:

(1)PCA算法:它采用的是向量模型,需要把二维向量转化成一维向量。(2)GLRAM:该方法采用的是矩阵模型,进行的是双边压缩,大大提高了压缩效率,但它的缺点是迭代算法,除此之外还有非负矩阵分解和支持向量机分解也可以实现图像压缩,本文介绍一种经典的压缩方法—奇异值分解。矩阵奇异值分解是一种重要分解。近年来,它在数据建模,最佳逼近问题,实验数据处理,数字图像压缩等领域得到了广泛的应用。

1 奇异值的定义和分解

为A的奇异值。

定理1:设A为m行n列的矩阵,设mn,A的秩为r,则存在两个正交矩阵U=[u1,u2…um]∈Rm×m,UTU=I和V=[v1,v2…vn]∈Rn×n,VTV=I,以及对角阵S=diag[λ1,λ2…,λr,0,…0]∈Rm×n,λ1>λ2>…>λr≥0,使得下式成立:

其中λi2为ATA的特征值,ui,vi分别是ATA和AAT对应于λi2的特征向量。我们将对角阵S称为奇异值矩阵,称式(1)为A的奇异值分解。

证明:由于ATA是半正定的Hermite矩阵,且rank(ATA)=rank(A),故ATA有如下形式的Schur分解:

其中V=(v1,…,vn)是正交矩阵,σ1…σr>0,σr+1=…σn=0,令V1=[v1,…,vr],V2=[vr+1,…,vn],Λ=diag(σ1,…σr)。

则从(2)式可得:

式(3)表明AV1的列是相互正交的;表明AV2的列都是零向量,即AV2=0,因此,令U1=AV1Λ-1则UT1U1=Ir。再取U2∈Cm×(m-r)使U=[U1,U2]是m阶正交的,则有:

分解式中的Λ是由A唯一确定的,V的第i列vi称为A属于σi的一个单位右奇异向量,U的第i列ui称为A属于σi的一个单位左奇异向量。

设A1,A2,A3分别表示三幅图像,对它们进行奇异值分解:

A1=U1S1V1,A2=U2S2V2,A3=U3S3V3

用第一幅图像得到的矩阵U1,V1和第二幅图像的奇异值矩阵相乘后U1S2V1显示和A1很接近,U1S3V1和第一幅图也很接近,但U2S1V2和A1相差很大,这说明矩阵U和V里包含图像的关键信息,奇异值矩阵含有很多的无用信息。

2 误差分析和应用

在泛函分析中,我们学习过范数的概念。范数是一个函数,它定义在赋范线性空间中,它常常被用来度量某个向量空间中的每个向量的大小。满足一定的条件:(1)非负性;(2)其次性;(3)三角不等式。求A的低秩逼近,就是要找另一个矩阵B,使A-B的范数最小。由奇异值分解定理得知,要找矩阵B,第一步对A做奇异值分解,分解以后A表示成A=UDVT,那么我们把矩阵U的前k列元素组成的矩阵记作Uk,取矩阵V的前k列元素组成的元素记作VK,则当B=Ukdiag(σ1,σ2…σk)Vk时误差最小,那么B是A的最优逼近,称之为SVD逼近。我们看下面的定理:

定理2:用SVD把A表示成Ak=UkΛVTk,在A所有的秩为k的近似分解中,Ak是A误差最小的分解矩阵。

对矩阵奇异值分解后会产生一个m行m列的矩阵U,m行n列的矩阵S,n行n列的矩阵V,其中奇异值在S的对角线上并且是由大到小排列的,一般情况下前10%甚至1%的奇异值就占了全部奇异值之和的99%以上。所以只需要取出矩阵S的前k行k列组成新的矩阵Sk,取矩阵U的前K列元素组成矩阵Uk,矩阵V的前K列元素组成矩阵Vk,用UkSkVk重构图像,取得k够小就可以很大程度实现图像的压缩。

3 结语

利用奇异值分解进行图像压缩,它的优点是误差小,稳定,但是当矩阵行数和列数非常大的时候,矩阵奇异值的计算是一个难题。所以一般把奇异值分解和其他方法结合起来进行图像的压缩,这是进一步需要研究的课题。

参考文献:

[1]徐树方.矩阵计算的理论和方法.第4版,北京:北京大学出版社.

[2]陈亚雄,黄樟灿.基于奇异值分解和Contourlet变换的图像压缩方法.计算机应用研究,2017.1,1(34):317320.

[3]景永霞,王治和.基于矩阵奇异值分解的文本分类算法研究.西北师范大学学报,2018,3(54):5156.

[4]王凯,王菊香.矩阵的奇异值分解在红外光谱预处理中的应用.海军航空工程学院学报,2017,3(32):270274.

[5]冯栩,李可欣.基于随机奇异值分解的快速矩阵补全算法及其应用.计算机辅助设计与图形学学报,2017,12(29):23432348。

[6]J.Ye.Generalized Low Rank Approximations of Matrices,Machine learning,2004:887894.

[7]黄东煜,张景润.一种基于迭代奇异值分解的定频干扰信号消除算法.信息技术,2018,4(39):3944.

作者简介:范云鹏(1981— ),男,汉族,陕西西安人,硕士,西安思源学院基础部教师,从事学校高等数学、线性代数、概率论等课程的教学和科研工作,研究方向:矩阵的优化和最优解。