一、简介
基于matlab主成分分析的图像压缩和重建,主成分分析是一种通过降维技术把多个标量转化为少数几个主成分的多元统计方法,这些主成分能够反映原始的大部分信息,通常表示为原始变量的线性组合。为了使这些主成分所包含的信息互不重叠,则要求各主成分之间互不相关。
主成分分析能够有效减少数据的维度,并使提取的成分与原始数据的误差达到均方最小,可用于数据的压缩和模式识别的特征提取。本章通过采用主成分分析去除了图像数据的相关性,将图像信息浓缩到几个主成分的特征图像中,有效地实现了图像的压缩。
二、部分源码
clc; clear all; close all;
I=imread('3.jpg');
k=1;
figure('Units', 'Normalized', 'Position', [0 0 1 1]);
ps = round(linspace(1, 46, 4));
for p=ps
[Ipca,ratio,contribution]=pcaimage(I,p,[24 24]);
subplot(2,2,k);
imshow(Ipca)
title(['主成分个数=',num2str(p),...
',压缩比=',num2str(ratio),...
',贡献率=',num2str(contribution)],'fontsize',14);
k=k+1;
end
三、运行结果
四、matlab版本
MATLAB R2019a
五、学习与交流
文中不足之处请大家多多指教,学习与交流可以联系企鹅:3752243968
文中部分源码仅供参考,若需要全部代码可以私信(有偿)