现在时间是:
当前位置:首 页 >> Matlab>> 教学区>> 文章列表

彩色图片的读取

作者:17074153   发布时间:2019-05-21 17:22:02   浏览次数:97

 I = imread('tets.ipg');

imshow(I);

[m,n]=size(I(:,:,1));

A0=zeros(m,n);

A1=double(I(:,:,1));

A2=double(I(:,:,2));

A3=double(I(:,:,3));

A=[A0 A2 A1 A3];

[U S V]=svdQ(A);

k=1;

Sx=S(1:k,1:k);

while(sum(sum(Sx))/sum(sum(S))<0.95);%控制读取图片的清晰度问题。

    J=timesQ(U(:,[1;k,m+1:m+k,2*m+k,3*m+k]),[Sx,zeros(k,3*k)]);

    J=timesQ(J,transQ)(vV(:,[1:k,n+1:n+k,2*n+1:2*n+k,3*n+1:3*n+k]));

    [jm,jn]=size(J);

    jn=jn/4;

    X(:,:,2)=J(:,jn+1:2*jn);

    X(:,:,1)=J(:,2*jn+1:3*jn);

    X(:,:,2)=J(:,3*jn+1:4*jn);

    figure;

    imshow(unit8(X);

    k=k+1;

    Sx=S(1:k+1,1:k+1);

end

%控制图片清晰度,当清晰度达到一定时,不再进入while语句。







上一篇:没有了    下一篇:没有了

Copyright ©2020    计算数学达人 All Right Reserved.

技术支持:自助建站 | 领地网站建设 |短信接口 |燕窝 版权所有 © 2005-2020 lingw.net.粤ICP备16125321号 -5