matlab压缩人脸图片不能导入,Matlab在人脸图像压缩研究中的应用

1引言人脸是人类视觉中最常打交道的对象之一。研究人脸图像的高倍压缩的意义在于:探索特定类图像的压缩算法、人像的传输、存储及识别。我们在研究人脸图像压缩算法的过程中,发现用Matlab编程来实现我们的算法思想,效率高、编程劳动强度低,因此,我们能够充分的测试我们的算法以取得最佳的实验结果并从中提炼出最好的算法。鉴于Matlab在图像处理研究中的重要应用前景,本文就结合我们的工作[1,2]介绍一下Matlab在这方面的应用。2Matlab简介美国著名的数值分析专家CleveMoler发现用其它的高级语言进行矩阵运算极其不方便,便构思并开发了Matlab(MATrixLABoratory,即矩阵实验室)。并于2000年10月底推出了其全新的Matlab6.0正式版(Release12)[3]。现在,Matlab已经发展成一种高度集成的计算机语言。作为一种计算机语言,它可以方便的实现与VC的接口,编程方便、易学。它最精彩的地方是它庞大的工具包,囊括了线性代数、自动控制、信号处理、图像处理、小波分析、神经网络等几乎一切可能的成熟的算法。这些算法都以函数的形式包装在各个工具包中,你所做的工作只需认识它们、调用它们,甚至连它们的位置都不用指定。所以,对于我们这些需要做实验研究工作的人来说,它可以极大的减少繁重的编程劳动,使得我们可以捕捉瞬间的灵感、集中精力去测试我们任何富有创意的新算法。3Matlab的图像处理、小波变换和神经网络工具箱在文[1]中,我们讨论过基于小波变换和矢量量化的人脸图像压缩算法。实际上,它就是用Matlab实现的。实验中,我们主要用到了Matlab的以下三个工具箱。31图像处理工具箱实验中用到的工具函数主要分为以下几类:(1)图像显示。将彩色/灰度图像在屏幕上显示出来,以便直观的观察实验结果。最常用的是Imshow。(2)图像输入/输出。Imread(读图像)是图像处理研究的第一步:最后保存结果自然是用Imwrite。(3)图像类型转换。RGB、HSV、Gray(灰度)、黑白等图像的相互转换。像大多数基于小波的图像压缩研究一样,我们暂时只研究灰度空间的图像压缩,因为彩色图像的压缩容易类似的实现。(4)其它的,如:几何操作、象素值及统计、图像变换、图像分析、图像增强、线性滤波等等,由于本文算法中没涉及到,故不作介绍,读者可参看Matlab的相关帮助文件。32小波工具箱基于小波的图像处理,首先是要对图像进行小波变换。一次小波变换将图像分解为四部分,其中做上角部分(称为平滑子图像)又可继续分解[1,5]。图像的小波变换域有许多重要特性,可参看[1,4,5]。基于小波的图像压缩就是要利用这些特性,实现图像的高质量压缩。图1是一幅人脸图像二级小波分解的例子。用Matlab非常容易实现图像的小波分解,只需调用二维小波分解函数WaveDec2。函数说明如下:[C,S]=WaveDec2(X,N,‘wname’)其中,‘wname’是小波的名称,因为有许多小波,常用的有对称小波、(反)双正交小波、Daubechies小波等。就图像压缩研究而言,小波的选取对压缩结果影响不大;X是二维矩阵(注意,Matlab图1一幅人脸图像的二级分解注:a)原图像;b)一级分解的结果;c)二级分解的结果是基于矩阵运算的语言,这给图像处理研究带来了很大的方便),N是变换的级数,如图1的变换是二级,则N=2。小波变换的结果存在矢量C中,S是(N+2)2的矩阵,第一行记录平滑图像的大小,最后一行记录原图像的大小,第二行至倒数第二行依次记录每层细节子图像的大小。根据C和S就能从变换


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部