[求助]MATLAB如何存储多个二维数组
我的毕业设计题目是基于轮廓识别图像中的人,老师叫我先生成一个模板,取模板上的点和它垂线上的点存入矩阵(按距离),然后与原图的边缘去匹配。我想用for循环来调用取垂线上点的函数,但是二维数组(存储所需的坐标)不能用A(i)的形式,我不知道怎样才能把垂线的点都存为二维数组(每个距离单独一个数组),请大侠们帮帮忙,谢谢!第一副图是模板,第二幅是模板和与模板距离为1和-1的垂线上的点的图形(a=5,b=10,h=8,l=15),距离为正时去掉了一些多余的点。
main.m的代码:
a=input('输入椭圆短半轴');
b=input('输入椭圆短半轴');
h=input('输入垂直高度');
l=input('输入水平宽度');
d=a; %d为垂线上的点与曲线的最大距离
Q=[a b h l];
[C,s,t,z]=Muban(Q); %Muban函数返回模板上的点的坐标(存为一二维数组C)
sum=2*d+1;
num=0;
for L=-1*d:d
num=num+1;
A(L)=vertical(s,t,z,L); %此处有错,不知道该如何表示for循环中的二维数组,vertical函数返回的是与模板
%距离为L的点的坐标(存为一二维数组A(L))
end