我有一个.txt文件,其中包含给定景观的x,y,z坐标。我正试着把它转换成DEM这样我就可以进一步操作它了。到目前为止,我一直在ArcGIS中进行转换,但我想在Matlab中进行转换。
下面是我的代码:
a=load('topo_2000.txt');
x=a(:,1);
x=x(1:101);
y=a(:,2);
y=y(1:101:end);
z=a(:,3);
z_grid=reshape(z,[length(x),length(y)]);
xyz = pointCloud(z_grid);
DEM = GRIDobj(xyz);
字符串
它返回以下错误消息:
Error using pointCloud/validateAndParseInputs
Invalid argument at position 1. Expected input 'xyzPoints' to be of size M-by-3 or M-by-N-by-3.
Error in pointclouds.internal.pointCloudBase (line 83)
[xyzPoints, C, nv, I, rangeData] = this.validateAndParseInputs(varargin{:});
Error in pointCloud (line 14)
this = this@pointclouds.internal.pointCloudBase(varargin{:});
Error in fromModel (line 23)
xyz = pointCloud(z_grid);
型
从我所收集的信息来看,这意味着我创建点云的方式有问题,但我不知 prop 体是什么或如何修复它。我试过在没有修改z_grid的情况下运行它,如下所示,但也不起作用。
下面是我的.txt文件的一个示例块:
0 100 0.6847
100 100 1.94
200 100 2.7184
300 100 3.2816
400 100 3.3127
500 100 3.4899
600 100 3.6633
型
1条答案
按热度按时间ycl3bljg1#
我通过修改代码解决了这个问题,如下所示(以防其他人有类似的问题):
字符串