图像灰度等级化相关知识读者可以自行百度,本篇文章只放matlab的实现代码。
在做这个实验时,在网上没有找到好用的代码,自己后来试了一些他人的方法,最后修改完善得到了该篇文章的代码,希望有所帮助。
My = imread('E:\informt\lesson\数字图像处理与安全\图像集\Fruit.bmp'); %读取图像
MyGrayPic = rgb2gray(My);
%灰度图像等级化
hold on;
figure(6);
subplot(2,4,1);
imshow(MyGrayPic);
title("256灰度级")
for i = 1:7
subplot(2,4,i+1);
huiduhua(MyGrayPic,2^i);
title(2^i+"灰度级");
end
%灰度图像等级化函数
function huiduhua(img, rank)
m = 256/rank;
img = double(img);
img = floor((img+1)/m);
img = uint8(img)*(255/rank);
imshow(img)
end
运行结果: