深度学习简述
深度学习:输入-blackbox-输出
不断优化一个函数
经典网络
PointNet
PointNet++
详解参考:https://blog.csdn.net/weixin_44603934/article/details/123589948
Pytorch版本复现
代码GitHub地址:https://github.com/yanx27/Pointnet_Pointnet2_pytorch
一、分类
训练:
–model pointnet2_cls_msg --use_normals --log_dir pointnet2_cls_msg_normal --batch_size 8 --epoch 200
–model pointnet2_cls_msg使用pointnet2_cls_msg模型,–use_normals使用法向量(normal表示法向量),–log_dir pointnet2_cls_msg_normal:log保存路径
训练结果保存在对应的log路径下,checkpoints保存训练好的权重。
测试:
–model pointnet2_cls_msg --use_normals --log_dir pointnet2_cls_msg_normal --batch_size 8 --epoch 200
nodel
测试结果保存在log路径的val路径下
二、场景分割
运行时由于内存和显存及配置不够程序卡死,pycharm报错:Process finished with exit code 137 (interrupted by signal 9: SIGKILL)
一般该报错是由于cpu或者内存不足引起的,程序被终止。与GPU无关。可以通过top、free和nvidi-smi命令观察cpu、内存、显卡。
解决方法:
需要修改train_semseg.py中的pin_memory = False,使用虚拟内存。否则pin_memory = True的情况下内存无法承受。
https://blog.csdn.net/qq_38331273/article/details/116308860
https://blog.csdn.net/cendrier/article/details/128979384
以下几种方式对程序进行修改,均无效:
1.batchsize修改为1,无效
https://blog.csdn.net/OneQuestionADay/article/details/111812866
2.将文件可读写的大小的最大值Xmx改为7168
3.run参数num_point从4069修改为128
4.数据集里面只存放一张图片
tf版本复现
优质算法(含代码)
PointNeXt:通过改进的训练和扩展策略重新审视PointNet++
PointNeXt 可以灵活扩展,在 3D 分类和分割任务上都优于最先进的方法。
实验结果:对于分类,PointNeXt 在 ScanObjectNN 上的整体准确率达到 87.7%,超过 PointMLP 2.3%,同时推理速度快 10 倍。
对于语义分割,PointNeXt 在 S3DIS(6 折交叉验证)上以 74.9% 的平均 IoU 建立了新的最先进的性能,优于最近的 Point Transformer。
https://zhuanlan.zhihu.com/p/527169603
代码:https://github.com/guochengqian/pointnext
论文:https://arxiv.org/abs/2206.0467