我有一个关于对矩阵/图像进行二次采样的快速问题.我只是在使用for和/或while循环时尝试这样做.基本上问题是重申:
function output = subsample(img,2)
output = img(1:factor:end, 1:factor:end);
Run Code Online (Sandbox Code Playgroud)
但是,现在我试图重写函数来执行完全相同的过程但是使用for循环和/或while循环并且不使用两个或更多" :"(冒号)运算符而不使用冒号运算符访问矩阵/向量元素.这是我到目前为止:
function output = subsamplex(img,factor)
[r, c] = size(img);
output = zeros(r/factor,c/factor);
j = 1;
i = 1;
for x = 1:r;
for y = 1:c;
j = factor*j-1;
i = factor*i-1;
output(j,i) = img(x,y);
end
end
end
Run Code Online (Sandbox Code Playgroud)
虽然我得到的是图像调整大小,它全是黑色的,我试图弄清楚我哪里出错或者我完全错了.任何正确方向的帮助将不胜感激.