Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 循环矢量化后下标赋值维度不匹配_Matlab_Loops_Vectorization_Edge Detection - Fatal编程技术网

Matlab 循环矢量化后下标赋值维度不匹配

Matlab 循环矢量化后下标赋值维度不匹配,matlab,loops,vectorization,edge-detection,Matlab,Loops,Vectorization,Edge Detection,我试着转动这个: for r=1:fsize for c=1:fsize mask(r,c) = exp(-(((r-centre)^2+(c-centre)^2)/2*(sigma^2))); end end 进入 但是我现在得到了错误“下标赋值维度不匹配” 我的理解是,这与两个数组中的索引不匹配有关,但这里的情况似乎并非如此 [r c]=meshgrid(1:fsize); mask = exp(-(((r-centre).^2+(c-centre)

我试着转动这个:

for r=1:fsize
     for c=1:fsize
         mask(r,c) = exp(-(((r-centre)^2+(c-centre)^2)/2*(sigma^2)));
     end
 end
进入

但是我现在得到了错误“下标赋值维度不匹配”


我的理解是,这与两个数组中的索引不匹配有关,但这里的情况似乎并非如此

[r c]=meshgrid(1:fsize);
mask = exp(-(((r-centre).^2+(c-centre).^2)/2*(sigma^2)));   

这假设
center
sigma
是标量。

+1您可以通过在
meshgrid
中移动一些操作来节省一些时间:
[r c]=meshgrid((1:fsize)-center)。^2);掩码=exp(-r+c)/2*(σ^2))
[r c]=meshgrid(1:fsize);
mask = exp(-(((r-centre).^2+(c-centre).^2)/2*(sigma^2)));