matlab怎么弄出24bit的图 把这三个区域分别变成绿红蓝

img

img

代码如下

G0 = zeros(912,1140);
G0(:,1:50)=1;
figure;imagesc(G0);colormap gray;

G1 = zeros(912,1140);
G1(:,51:100)=1;
figure;imagesc(G1);colormap gray;


G2 = zeros(912,1140);
G2(:,101:150)=1;
figure;imagesc(G2);colormap gray;


G3 = zeros(912,1140);
G3(:,151:200)=1;
figure;imagesc(G3);colormap gray;

G4 = zeros(912,1140);
G4(:,201:250)=1;
figure;imagesc(G4);colormap gray;


G5 = zeros(912,1140);
G5(:,251:300)=1;
figure;imagesc(G5);colormap gray;


G6 = zeros(912,1140);
G6(:,301:350)=1;
figure;imagesc(G6);colormap gray;


G7 = zeros(912,1140);
G7(:,351:400)=1;
figure;imagesc(G7);colormap gray;


R0 = zeros(912,1140);
R0(:,401:450)=1;
figure;imagesc(R0);colormap gray;




R1 = zeros(912,1140);
R1(:,451:500)=1;
figure;imagesc(R1);colormap gray;




R2 = zeros(912,1140);
R2(:,501:550)=1;
figure;imagesc(R2);colormap gray;



R3 = zeros(912,1140);
R3(:,551:600)=1;
figure;imagesc(R3);colormap gray;




R4 = zeros(912,1140);
R4(:,601:650)=1;
figure;imagesc(R4);colormap gray;




R5 = zeros(912,1140);
R5(:,651:700)=1;
figure;imagesc(R5);colormap gray;




R6 = zeros(912,1140);
R6(:,701:750)=1;
figure;imagesc(R6);colormap gray;




R7 = zeros(912,1140);
R7(:,751:800)=1;
figure;imagesc(R7);colormap gray;



B0 = zeros(912,1140);
B0(:,801:850)=1;
figure;imagesc(B0);colormap gray;




B1 = zeros(912,1140);
B1(:,851:900)=1;
figure;imagesc(B1);colormap gray;




B2 = zeros(912,1140);
B2(:,901:950)=1;
figure;imagesc(B2);colormap gray;




B3 = zeros(912,1140);
B3(:,951:1000)=1;
figure;imagesc(B3);colormap gray;





B4= zeros(912,1140);
B4(:,1001:1050)=1;
figure;imagesc(B4);colormap gray;




B5 = zeros(912,1140);
B5(:,1051:1100)=1;
figure;imagesc(B5);colormap gray;




B6 = zeros(912,1140);
B6(:,1101:1140)=1;
figure;imagesc(B6);colormap gray;


B7 = zeros(912,1140);
B7(:,1101:1140)=1;
figure;imagesc(B7);colormap gray;


Green = G7 + G6*2 + G5*4 + G4*8 + G3*16 + G2*32 + G1*64 + G0*128;
figure;imagesc(Green)
colormap gray;

Red = R7 + R6*2 + R5*4 + R4*8 + R3*16 + R2*32 + R1*64 + R0*128;
figure;imagesc(Red)
colormap gray;


 Blue = B7 + B6*2 + B5*4 + B4*8 + B3*16 + B2*32 + B1*64 + B0*128;
figure;imagesc(Blue)
colormap gray;

finalimage=zeros(912,1140,3);
finalimage(:,:,1)=Green;
finalimage(:,:,2)=Red;
finalimage(:,:,3)=Blue;

figure;imagesc(finalimage)
colormap ;
rgb=cat(3,Red,Green,Blue);
figure;imagesc(rgb)
axis off
 
s= Green + Red + Blue;
figure;imagesc(s)


查一下相关颜色代码,图的转换matlab有自带的api,可以到帮助文档看看

你的问题什么意思,我打开你现在的程序,一下就出来30个图

他要用Python里面的修图库,把上面三个重复的渐变,变成一组绿红蓝

你要是找不到合适的函数,可以给每一个区域都赋一个颜色,自己慢慢调

Python 的第三方库可以直接解决呀

你代码好像和问题对不上