Stanford3dDataset_v1.2_Aligned_Version和Stanford3dDataset_v1.2都是完整的场景数据集,每个点包含6个维度(x,y,z,r,g,b),数据集大概长这样,每个文件夹表示一个Area
Area_1进去之后是这样,每个Area包含了不同的场景(会议室、走廊等),例如Area_1包含45个,Area_2包含41个,所有Area一共有278个场景
进入conferenceRoom_1是这样,conferenceRoom_1.txt是这个场景下所有点的xyz和rgb值,例如conferenceRoom_1.txt为
1136617 x 6
大小的矩阵,Annotations则为标注信息,进去之后是下一张图的样子,每个txt文件包含了不同类别(共13个类别)的点位置及其RGB颜色
indoor3d_sem_seg_hdf5_data是将场景切割成
1m x 1m
的block,每个block包含4096个点,每个点有9个维度,前6个维度和上面的一样,后3个维度表示相对于所在大场景的位置(归一化坐标),一共有23585个block。
数据大概长这样,
all_files.txt
记录了所有h5文件的名字,
ply_data_all_i.h5
包含了不同block的点云,其中0~22的每个h5文件包含了1000个block,即每个h5文件为
1000 x 4096 x 9
的点云及
1000 x 4096
的点标注,23包含了585个block,因此一共有23585个block。
room_filelist.txt
则包含了每个block所属的Area和场景,如下,共23585行
参考 https://blog.csdn.net/zhulf0804/article/details/108609629
S3DIS是常用的室内场景分割数据集,包含6个Area,常用的数据格式如下:Stanford3dDataset_v1.2_Aligned_Version,百度网盘下载,提取码0acsStanford3dDataset_v1.2,百度网盘下载,提取码2hc9indoor3d_sem_seg_hdf5_data,下载方法见PointNetStanford3dDataset_v1.2_Aligned_Version和Stanford3dDataset_v1.2Stanford3dDataset_v1
文章目录一、数据准备1.1、数据下载二、训练三、测试
项目地址:pointnet
此次我们是用pointnet网络来做语义分割。代码在pointnet项目中的sem_seg文件夹下,里面也有README.md介绍了训练的过程。
一、数据准备
1.1、数据下载
原始数据下载
处理好的h5格式数据下载
ubuntu16.04 双显卡nvidia gtx1080/quadro M4000
anaconda3创建虚拟环境 python=3.7
cuda10.0 cudnn7.65
tensorflow-gpu1.14 安装命令 ——>pip install -i https://pypi.mirrors.ustc.edu.cn/simple/ tensorflow-gpu==1.14.0
这里主要是pointnet的语义分割代码
在处理S
3D
IS的txt文件时候会遇到几个bug.
在Stanford
3d
Dataset_v1.2这个版本中 的Area_5\office_19\ceiling_1,路径如下
\S
3D
IS\Stanford
3d
Dataset_v1.2\Area_5\office_19\Annotations\ceiling_1.txt
会存在字符串,导致代码老是出错,经过查找发现在323474行,需要手动删除
在Stanford
3d
Dataset_v1.2_Aligned_Version这个版本中也会遇到bug
三维
点云
是物理世界的三维数据表达形式,其应用日益广泛,如自动驾驶、AR/VR、FaceID等。PointNet网络模型是直接对三维
点云
数据进行深度学习的开山之作,PointNet++是对PointNet的改进技术。作为
点云
处理深度学习方法的里程碑工作,启发了很多后续研究。本课程对PyTorch版的PointNet++进行原理讲解、论文复现和代码详解。包括: (1)提供三维
点云
物体分类
数据集
ModelNet40、物体部件分割
数据集
ShapeNet和
场景
分割
数据集
S
3D
IS的下载、可视化软件和方法;(2)在Ubuntu系统上演示使用PointNet++进行三维
点云
的物体分类、部件分割和
场景
语义分割的训练和测试;(3)详解PointNet++的原理、程序代码和实现细节,并使用PyCharm进行Debug调试代码和单步跟踪。需要学习TensorFlow版PointNet++的学员可前往本人推出了课程《PointNet++
点云
处理TensorFlow版》
S
3D
IS是一个大型的
3d
室内
数据集
,关于它的介绍网上很多了。它主要是由xyz+rgb+法向量 9个特征 和一个标签组成的,长度为10的向量。
由于这个
数据集
比较大,不利于训练,PointNet++训练之前会将它进行预处理,划分为1mx1m的区域,然后再放入网络进行训练。
下面是关于它的代码分析,这个
数据集
运行的前提是,你已经按照PointNet++的readme运行了collect_indor
3d
_data,将txt文件转换为了.npy文件
class S
3D
ISDataset(Dataset):
天花板ceiling、地板floor、墙壁wall、梁beam、柱column、窗window、门door
桌子table、椅子chair、沙发sofa、书柜bookcase、板board、混杂元素(其他)clutter
11种
场景
:【单文件的名称】
办公室、会议室、..
Pointnet的网络结构和源码解释,已在之前写了次总结,本次主要针对论文中的
数据集
以.h5为TensorFlow的输入格式进行解释,记录如何制作H5文件,以提供给TensorFlow,PyTorch框架中进行训练。
首先,Pointnet一文中针对3个不同的任务使用到了三个
数据集
,分别为:
点云
分类(
3D
Object Classification)——ModelNet40,下载命令在provider.py中,运行pyt
原本打算先复现Pointnet++的,现在RandLA-net的性能吊打Pointnet++的清空下,先复现这个吧。
在大
场景
三维
点云
语义分割算法中,RandLA-net是很有代表性的算法,而且很适合落,原论文代码的环境是python3.5+tensorflow1.11+cuda9,而cuda9是不能在新显卡RTX3080上跑通的。
本片博客是在:在RTX 3090上复现
点云
语义分割算法RandLA-net_lucky li的博客-CSDN博客
感谢指引,侵删。
解决方法:
具体可参考官方文档
https://docs.amazonaws.cn/cli/latest/userguide/cli-services-s3-commands.html
比较详细的博文
https://blog.csdn.net/DynastyRumble/article/details/76649120
大致步骤为:
1. 创建亚马逊账号,创建用户,获得ID和密匙
注意如果直接注册服务器的账号,需要使用 国外信用卡,但是可以先注册亚马逊(购物)的账号,再用于云服务,就不需要国外信用卡了
2. 安装 aws