首先修改代码中所有错误,与自己的python和tensorflow适配,导入该导入的包,其中provider和eulerangles和plyfile都在utils文件下或者pointnet-master的代码中
修改tf_ops中的文件:参考第一篇与第二篇
注意:报错

/usr/bin/ld: cannot find -ltensorflow_framework,collect2: error: ld returned 1 exit status。

应该是没有修改sh文件时未能找到/usr/…/ltensorflow_framework这个路径
解决方法:
我是用的云服务器,将sh文件中的-ltensorflow_framework修改为-l:libtensorflow_framework.so.1
有的人可能是要改成-libtensorflow_framework
然后运行

cd tf_ops/sampling
sh tf_sampling_compile.sh
cd tf_ops/grouping
sh tf_grouping_compile.sh
cd tf_ops/d_interpolation
sh tf_interpolate_compile.sh

进入环境

conda activate tf

训练

cd autodl-nas/pointnet2-master
CUDA_VISIBLE_DEVICES=0   python  train.py

报错

tensorflow.python.framework.errors_impl.NotFoundError: /root/autodl-nas/pointnet2-master/tf_ops/sampling/tf_sampling_so.so: undefined symbol: _ZN10tensorflow12OpDefBuilder4AttrESs

将sh文件中的-D_GLIBCXX_USE_CXX11_ABI=0改为1
再运行.sh文件

cd tf_ops/sampling
sh tf_sampling_compile.sh
cd tf_ops/grouping
sh tf_grouping_compile.sh
cd tf_ops/d_interpolation
sh tf_interpolate_compile.sh

训练结果可视化

tensorboard --logdir=log#这里要指定日志文件夹名字,因为默认似乎是logs,但是pointnet++分类训练生成的日志文件名为log

系统架构图


训练后验证结果

CUDA_VISIBLE_DEVICES=0 python evaluate.py --num_votes 12

可视化(此步骤无需gpu)

在utils文件下

sh compile_render_balls_so.sh
python show3d_balls.py

获得可视化结果

pointnet++复现相关推荐

  1. PointNet复现

    PointNet复现 设备及运行环境基本情况: (1)硬件:ThinkPad P53移动图像工作站,CORE i7 -9850H 32G内存,显卡为NVIDIA Quadro T2000 4G : ( ...

  2. Pointnet++复现流程及问题解决

    复现流程 1.通过github下载pointnet++的包; 2.以分类为例,在pointnet2-master目录下新建data文件夹,将modelnet40_ply_hdf5_2048数据集解压到 ...

  3. Pytorch1.7复现PointNet++点云分割(含Open3D可视化)(文末有一个自己做的书缝识别项目代码)

      毕设需要,复现一下PointNet++的对象分类.零件分割和场景分割,找点灵感和思路,做个踩坑记录. 下载代码 https://github.com/yanx27/Pointnet_Pointne ...

  4. 点云网络的论文理解(一)-点云网络的提出 PointNet : Deep Learning on Point Sets for 3D Classification and Segmentation

    1.摘要 1.1逐句翻译 Point cloud is an important type of geometric data structure. 点云是一种重要的数据结构. Due to its ...

  5. 点云网络的论文理解(二)- PointNet的pytorch复现

    1.了解PointNet 为了更好的复现这个东西我们需要先了解这个东西,先把原文给出的图片放在这里,之后我们再一点点理解. 1.1点云的特点 1.1.1无序性:也就是说这个点的先后顺序和实际上是什么无 ...

  6. Pytorch:复现PointNet

    文章目录 一.[点云分类]和[部件分割]: 1.1 复现结果展示 1.2 复现过程 1.3 复现过程中遇到的问题 1.3.1 分类遇到的问题 1.3.2 分类可视化(检验)遇到的问题 1.3.3 部件 ...

  7. 基于pointnet的3D物体分类和分割检测(复现不出来你直接敲我家门)

    录 前言 一.资料下载 1.代码下载 2.数据集下载 二.环境配置 1.本文采用设备配置说明 2.虚拟环境配置 三.训练部分 1.分类训练部分 2.分割的训练部分 四.预测部分 1.分类结果展示 2. ...

  8. PointNet系列代码复现详解(1)—PointNet分类部分

    想尽快入门点云,因此就从这个经典的点云处理神经网络开始.源码已经有了中文注释,但在一些对于自己不理解的地方添加了一些注释.欢迎大家一起讨论. 代码是来自github:GitHub - yanx27/P ...

  9. Python-Point Cloud 系列(二)——PointNet论文复现

    文章目录 Point Net 介绍 网络结构 旋转变换矩阵 源码解析(详细) 源码下载 源码目录结构 PointNet.py ModelNetDataLoader.py 复现程序 原文数据集下载 其他 ...

最新文章

  1. 做好十足准备面字节跳动,五面都过了,HR告诉我这个原因我被刷了...
  2. 如何以类似JSON的格式打印圆形结构?
  3. php不是预定义超全局变量,五、PHP知识核心 预定义变量(超全局变量/数组)
  4. 几个常见的Python面试题分享,帮你顺利求职
  5. javascript中动态添加事件
  6. Junit单元测试学习笔记(一)
  7. redis大幅性能提升之使用管道(PipeLine)和批量(Batch)操作
  8. 完整的 .NET Core 目标框架的预处理器符号列表
  9. g120xa变频器调试参数_西门子G120XA变频器如何进行快速调试
  10. node.js 学习
  11. 综述 | 注意力机制
  12. Android 使用字符串动态获取资源ID
  13. 【论文翻译】卷积神经网络图像风格转移 Image StyleTransfer Using Convolutional Neural Networks
  14. 【Spring-tx】事务逻辑
  15. 数字信号的增益matlab,如何控制多频带滤波器通带增益?
  16. 生成doc和docx教程
  17. sql server 2008 r2 “远程过程调用失败“解决方案
  18. 电脑更换硬盘应该注意什么?
  19. PCIe | 基础知识点扫盲
  20. 使用RootTools实现对Android系统文件的读写

热门文章

  1. 设置flashget下载任务完成后自动调用avast!扫描文件
  2. 苹果cms如何去掉首页帮助提示信息模板
  3. [Windows10]BitLocker解锁经验分享
  4. Azkaban 简介
  5. Altera FPGA 差分信号初识(2)
  6. LeetCode刷题-独一无二的出现次数
  7. 条件分布函数(离散-条件分布律)
  8. 肺结节公开数据集(LIDC-IDRI)
  9. 2月20日,依旧咸鱼的一天。
  10. 震撼光效:Geomerics Enlighten Demo at GDC 2010