.las转.txt 再转.pcd,编译运行中出现的错误

References:

murtiad/las2pcd: 做成ubuntu中可安装的一个小工具,针对las(rgb)

未完成

按照上面source中的cmakelist.txt修改自己的Cmakelist.txt,再次run:
cmake … 成功
make 不成功, 错误如下
在这里插入图片描述
相比之前错误少了,但还是不对
添加了一句:

link_directories (/usr/lib)

还是make不成功
讲PCL_COMMON_LIBRARIES改为PCL_LIBRARIES
!!!
然后make成功了!!
但有一些warnings:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
make倒是成功了,但是无法run是怎么回事???

不知道
暂时放弃

有一个办法是直接安装source中的小工具,还没试

先试将las转成txt,再将txt转成pcd
先用liblas 将las转换成txt, 直接在command中输入(因为用它的unity在命令行中输入可以跑成功,但放到.cpp中就出错,可能是因为自己功力不够,Cmakelist.txt中的语句有问题吧):

las2txt -i /home/wml/las2pcd/Plot_1_2_Backpack_cut.las -o /home/wml/las2pcd/Plot_1_2_Backpack_cut.txt

输出结果是点云的XYZ
在这里插入图片描述
然后用PCL将txt读取到pcd
cloud.width:对于无序点云,是点的数量,对于有序点云,是每行点的数量
cloud.height: 对于无序点云,height=1,对于有序点云,height是行数
这篇文章写出来的txt2pcd.cpp可以运行
PengPengBlog–PCL——txt文件转到PCD文件
在ubuntu中cmake… 和make都可以run。
结果。。。抛出std::bad_alloc,意思是内存不够。。。
总共有三百多万数据,.las文件是97M+。
换个小点的数据再试一次,这次换个.las = 22.3M的数据
这次有65万个点
在这里插入图片描述
注意: lasinfo 或las2txt 后面的文件名不能太长,否则读不出来
转成txt是28.6M,还是读不出来
那如果只有一棵树呢,看是否可以
还显示内存不够??重新开机再试,还是不行,说明程序有bug。
可能的原因是坐标系的问题,坐标系的数字太大了。
如果把坐标转换为相对坐标呢?能不能转出来

用python读取.txt, 然后计算,减去最小值,再保存成.txt
现在坐标转换完成了
onetree文件里又51334个点,在ubuntu上跑的时候还会出现内存不够的错误

如果减小到10000+个点呢?还是不行,8900+个呢??还是不行,如果1000+的点都不行的话,就是程序的问题
删除还剩1312个点,
还是不行,那就是代码有问题

经过查看编译后的文件发现flann的安装有问题,因此重新安装下flann。 如下:
reference: https://www.cnblogs.com/yhl0414/p/7146839.html
但我的显示已经安装上了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值