【发布时间】:2023-04-07 10:32:01
【问题描述】:
我必须以 (x,y) 的形式将图像的像素坐标存储在矩阵中。 我正在尝试的代码是:
[x,y]=size(diff_im);
count=0;
for i=1:x
for j=1:y
if a(i,j)==0
count=count+1;
new_x(count)=j;
new_y(count)=i;
end
end
end
目前我将 x 和 y 存储在单独的数组中。但我想知道如何将两个 x,y 值存储在单个矩阵中。
【问题讨论】:
-
你的问题很不清楚。
x和y是标量。你的意思是你想让new_x和new_y成为一个矩阵?你能准确描述你想要做什么以及你想要什么输出吗? -
这里的两个矩阵的大小为
x*y,你期望什么大小的矩阵?new_x,new_y]=meshgrid(1:x,1:y);new_x(a~=0) = 0;new_y(a~=0) = 0;可以缩短你现在所做的事情 -
据我了解您的问题,您只想使用
new_xy(count,:) = [j i ];将您的值对存储在数组的行中或使用new_xy(:,count) = [j; i];将它们存储在列中。