这个讨论越来越密集 here 关于 pageIdx 和 ndgrid 。我现在可以理解 meshgrid 但不能理解 ndgrid——请详细说明可以使用它的实际示例。它与 meshgrid 并不完全相同:值中有一些奇怪的反转,那么它应该在哪里使用?

最佳答案

假设您想知道数组的行/列/等索引。您可以为此使用 meshgrid,但它会首先输出列,然后是行索引,这可能是错误的来源。

您可以使用 meshgrid 代替 ndgrid ,它将按预期顺序给出索引,即

[rowIndices, colIndices] = ndgrid(1:size(array,1),1:size(array,2));

或者,对于 3D
[rowIndices, colIndices, pageIndices] = ndgrid(1:size(array,1),1:size(array,2),1:size(array,3));
meshgrid 对前两个索引的反转在处理绘图或处理图像处理工具箱函数的某些输出时会有所帮助。

但是,当您想计算 4D 高斯的值时,您唯一的选择是使用 ndgrid :
[xx,yy,zz,tt] = ndgrid(-3:0.1:3);
out = exp(-xx.^2-yy.^2-zz.^2-tt.^2);

关于matlab - meshgrid 和 ndgrid 之间的实际区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19563272/

10-08 21:53