pointnet++ 运行攻略 & 增加训练属性方法

本文档介绍了如何运行PointNet++,特别是在自动驾驶场景中利用VKITTI数据集进行训练,达到98%的precision和95%的recall。文中还分享了如何添加额外属性进行训练,以及修改输入维度和模型结构的细节。此外,建议尝试使用不同的损失函数来应对类别不平衡问题,并提供了解决编译问题的提示。最后,作者提醒读者关注点云分割领域的最新进展,尝试更多高效框架。
摘要由CSDN通过智能技术生成

最近在研究pointnet++,由于楼主的主要场景在室外自动驾驶。所以使用了VKITTI数据集。

在50个traning set和10个test set的情况下目前分7类平均precision 91%,recall 88%。

3月28日更新:目前precision 98%, recall 95%

 

1 下载:

git clone https://github.com/charlesq34/pointnet2.git

2 编译:

cd pointnet2-master/tf_ops/

进入3个子文件夹运行里面的.sh文件。但是这里需要先对这些文件进行编辑。

根据自己的安装CUDA和TF版本把里面的内容进行更新,确保其中每个路径都可以找到对应的地方。并且删除最后的-D_GLIBCXX_USE_CXX11_ABI=1

3 运行:

python train.py

 

4月29日补:

由于下面留言的同学问了怎么加其他属性一起训练,今天正好有空看了一下。主要是2点。

1 修改train.py里面的input_dims 改成你需要的

2 在model里面把

l0_xyz = point_cloud

l0_points = None

改成

l0_xyz = tf.slice(point_cloud, [0,0,0], [-1,-1,3])
l0_points = tf.slice(point_cloud, [0,0,3], [-1,-1,N])

N是你的剩余属性个数

大概就是xyz只存点,points存属性。分开往里放。
 

  • 4
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 37
    评论
评论 37
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值