我有一个3D点云(XYZ),Z可以是位置或能量.我希望将它们投影在n- by- m网格的2D表面上(在我的问题中n = m),其方式是每个网格单元具有最大差值的值Z,如果Z是位置,或者总和的值.Z在Z能量的情况下.
例如,在一定范围内0 <= (x,y) <= 20,有500个点.假设xy平面具有n - by - m分区,例如4- by- 4 ; 我的意思是在两个方向x和y方向上我们有4个分区,间隔为5(使其20最大.现在,这些单元格中的每一个都应该具有这些单元中的值的总和或最大差异的Z值.定义的xy平面中的相应列.
我制作了一个简单的XYZ阵列,仅用于测试,如下所示,在这种情况下,Z表示每个点的能量.
n=1;
for i=1:2*round(random('Uniform',1,5))
for j=1:2*round(random('Uniform',1,5))
table(n,:)=[i,j,random('normal',1,1)];
n=n+1;
end
end
Run Code Online (Sandbox Code Playgroud)
如何在没有循环的情况下完成?