本文共 898 字,大约阅读时间需要 2 分钟。
代码片
.
// An highlighted blockfunction ouput_img = quantize(input_img,level)% quantize 图像量化函数% input_img:输入图像% level: 给定的图像灰度级数% ouput_img:输出图像 src = double(input_img);% 将输入图像转为double型,便于后续取整操作 [m, n] = size(src); k = level/256; %计算量化前后的比值 dst = zeros(m,n,'uint8'); % 建立8为无符号的图像 res = zeros(m,n,'uint8'); for i = 1 : n for j = 1 : m dst(j,i) = fix(k*src(j,i)); %向零取整 end end % 寻找图像中的最大、最小灰度值 max_dst = 0; min_dst = 255; for i = 1 : n for j = 1 : m if dst(j,i)> max_dst max_dst = dst(j,i); end if dst(j,i)< min_dst min_dst = dst(j,i); end end end %将图像灰度值映射到0~255之间 for i = 1 : n for j = 1 : m res(j,i) = round(dst(j,i)*(255/(max_dst - min_dst))); end end ouput_img = res;end
转载地址:http://uxwni.baihongyu.com/