急求matlab灰度级彩色变换法伪彩色处理代码、最好用彩虹码或热金属码编的程

2025-05-03 08:44:50
推荐回答(2个)
回答1:

热金属码1
I=imread('C:\picture\红外2.jpg');
[m,n]=size(I);
I=im2double(I);
L=1;
for k=1:m
for s=1:n
if I(k,s)r(k,s)=0;
g(k,s)=0;
b(k,s)=I(k,s)/(L/4);
else if I(k,s)<=3*L/8
r(k,s)=0;
g(k,s)=(I(k,s)-L/4)/(L/4);
b(k,s)=1;
else if I(k,s)<=L/2
r(k,s)=0;
g(k,s)=(I(k,s)-L/4)/(L/4);
b(k,s)=(L/2-I(k,s))/(L/8);
else if I(k,s)<=3*L/4
r(k,s)=0;
g(k,s)=1;
b(k,s)=0;
else
r(k,s)=(I(k,s)-3*L/4)/(L/4);
g(k,s)=1;
b(k,s)=0;
    end
    end
   
end
end
end
end
RGB(:,:,1)=r*255;
RGB(:,:,2)=g*255;
RGB(:,:,3)=b*255;

figure,imshow(I);
figure,imshow(RGB);

回答2:

imshow(I); colormap hot;
figure;
imshow(I); colormap jet;