matlab对于一幅灰度图的采样和量化函数
采样函数:
function [sampled_img] = sample(img, factor)
% img:输入的灰度图像矩阵
% factor:采样因子
% sampled_img:采样后的图像矩阵
[m, n] = size(img);
m_sampled = ceil(m / factor);
n_sampled = ceil(n / factor);
sampled_img = zeros(m_sampled, n_sampled);
for i = 1:m_sampled
for j = 1:n_sampled
row = (i - 1) * factor + 1;
col = (j - 1) * factor + 1;
sampled_img(i, j) = img(row, col);
end
end
end
量化函数:
function [quantized_img] = quantize(img, levels)
% img:输入的灰度图像矩阵
% levels:量化级别数
% quantized_img:量化后的图像矩阵
[m, n] = size(img);
quantized_img = zeros(m, n);
step = 256 / levels;
for i = 1:m
for j = 1:n
quantized_img(i, j) = floor(img(i, j) / step) * step;
end
end
end
原文地址: https://www.cveoy.top/t/topic/b18k 著作权归作者所有。请勿转载和采集!