【matlab】生成列是0-255渐变的图像

图像大小:640×512

8位灰度图

%% 生成图像
%大小:640*512
%类型:灰度图
%灰度值:列按照0-255渐变,故命名为column shade。
clc,clear all,close all;
%输入的图
ima=double(imread('lenna2.bmp'));%原图
ima=rgb2gray(ima);
ima(:,:)=255;
for j=1:640
    if j>=1&&j<=256
        ima(:,j)=j-1;
    elseif j>=257&&j<=512
        ima(:,j)=j-257;
    else
        ima(:,j)=j-513;
    end
end
imshow(uint8(ima)),title('columnshade');
imwrite(uint8(ima),'columnshade.bmp');

 效果:

24位:

%% 生成图像
%大小:640*512
%类型:灰度图
%灰度值:列按照0-255渐变,故命名为column shade。
clc,clear all,close all;
%输入的图
ima=double(imread('lenna2.bmp'));%原图
ima(:,:,:)=255;
for j=1:640
    if j>=1&&j<=256
        ima(:,j,:)=j-1;
    elseif j>=257&&j<=512
        ima(:,j,:)=j-257;
    else
        ima(:,j,:)=j-513;
    end
end
imshow(uint8(ima)),title('columnshade');
imwrite(uint8(ima),'columnshade.bmp');

原文地址:https://www.cnblogs.com/wxl845235800/p/9996411.html