clc;closeall;mine=imread('E:\matlabprogram\DSP\小井.jpg');%读取图像show_size=size(mine)%显示图像尺寸figure(1);imshow(mine);%显示无噪图像mine_noise=imnoise(mine,'gaussian',0,0.02);%对给定图像加高斯白噪声figure(2);subplot(2,1,1);imshow(mine_noise);%显示有噪图像title('加噪后');[r1,c1,m]=size(mine_noise)imwrite(mine_noise,'小井_2.jpg','jpg');%写加噪图像,保存成图像文件小井_2.jpgmine_noise=double(mine_noise)/255;%uint转化成double类型P=3;%先验误差估计协方差初始值Q=0.25;%过程白噪协方差R=0.25;%观测白噪协方差A=1;%系统矩阵H=1;%观测矩阵X=mine_noise(1,:,:);%读取加噪图像第一行mine_alter=zeros(r1,c1,m);mine_alter(1,:,:)=X;forK=2:r1;X=A*X;%X(k|k-1)=AX(k-1|k-1)+BU(k)P=A*P*A'+Q;%P(k|k-1)=AP(k-1|k-1)A’+QKg=P*H'/(H*P*H'+R);%Kg(k)=P(k|k-1)H’/(HP(k|k-1)H’+R)X=X+Kg*(mine_noise(K-1,:,:)-H*X);%X(k|k)=X(k|k-1)+Kg(k)(Z(k)-HX(k|k-1))P=(1-Kg*H)*P;%P(k|k)=(I-Kg(k)H)P(k|k-1)mine_alter(K,:,:)=X;%保存像素值end%mine_alter=im2uint8(mine_alter);subplot(2,1,2);imshow(mine_alter);title('卡尔曼滤波后');