需要用ArcGIS读入点云并进行航线规划。
一、在ArcMAP中读入las格式点云
首先在目录中进行文件夹的连接以及点云数据的导入。
新建一个LAS数据集:
添加文件并应用:
勾选这个:
会出现这个:
将这个拖入到内容列表中,并且缩放至分辨率即可看见点云。
加载LAS数据后可能只是一个框线,点击右键将其缩放至分辨率即可看到点云。
二、进行航线点的选取
新建一个shapefile文件来进行航线点的记录,否则无法进行编辑。
在航线点这里开始编辑
点击要素创建
即可开始对航线进行打点
三、shapefile转为txt
在搜索这里输入txt
然后输入将要素属性导出到ASCII
用记事本打开:
四、转为excel
用excel打开导出文件
点击数据---->分列
分割后的效果:
五、高程赋值
根据ArcMAP中的高程值,对excel中的航点进行高程赋值。
估摸着设计一个大概的值,保存为txt文件。
六、txt转为pcd文件
直接导入txt文件和对应的原点云文件,注意xyz不用换顺序。
直接保存航线txt到pcd文件即可。
然后不知道为什么我的CC转不了PCD格式,于是我用了matlab
代码如下:
pcData=load('forest_plan.txt');
ptCloud = pointCloud(pcData(:,1:3));
pcwrite(ptCloud, 'forest_plan.pcd', 'Encoding', 'ascii')
pc = pcread('forest_plan.pcd'); pcshow(pc);% 验证一下
七、写ROS包并验证