用MATLAB进行灰度图像灰度值的处理

        在处理数据集时,需要将图像的灰度值进行替换,例如将图像中灰度值为5的像素转化为灰度值为1,将所有大于0的灰度值的像素都变成灰度值为1的图像,MATLAB代码转换如下:

单张图像的处理:

pred_res = imread('000002_label.png');       #要处理的图像
pred_res_upsample = imresize(pred_res,[480,640],'nearest');   #要处理图像的尺寸
[m,n]=size( pred_res_upsample );    #用m,n表示图像的像素坐标
for i=1:m                         
    for j=1:n                        #遍历每个像素
        if pred_res_upsample(i,j)>0  #当像素的灰度值大于0时,将该灰度更改为0
           pred_res_upsample(i,j)=1;
        end
    end
end
imshow(pred_res_upsample);           
imwrite(pred_res_upsample,'2label.png') #将处理后的图像重新命名  

遍历文件夹中所有图像,进行批量处理:

clear all;
clc;
OutputDir = 'new_label\';  #要保存处理后的图像的文件路径

files = dir(fullfile('label\','*.png')); #要处理的图像路径
lengthFiles = length(files)              #要处理图像的数量
for n = 1:lengthFiles;                   #遍历图像
    Img = imread(strcat('label\',files(n).name));
    
    for i=1:1:480                       #遍历图像的尺寸
    for j=1:1:640
        if(Img(i,j)>0)
            Img(i,j)=1;                  #如果像素的灰度值大于0则改为1
        end
    end
    end
    imwrite(Img,[OutputDir,int2str(n),'_label.png']);  #另存为到outputdir
end

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值