Learning3D:3维点云数据的深度学习库
源链接:https://github.com/vinits5/learning3d
Learning3D是一个开源库,支持处理3维数据的深度学习算法的开发。Learning3D有在python中目前效果好的深度神经网络。为了进一步开发,这里提供了模块化的代码。欢迎开源社区的贡献。
在Learning3D 可用的CV算法
序号 | 任务 | 算法 |
---|---|---|
1 | 分类 | PointNet, DGCNN, PPFNet, PointConv |
2 | 分割 | PointNet, DGCNN |
3 | 重建 | Point Completion Network (PCN) |
4 | 配准 | PointNetLK, PCRNet, DCP, PRNet, RPM-Net, DeepGMR |
5 | Flow Estimation | FlowNet3D |
6 | Inlier Estimation | MaskNet |
可使用的预训练模型
- PointNet
- PCN
- PointNetLK
- PCRNet
- DCP
- PRNet
- FlowNet3D
- RPM-Net (clean-trained.pth, noisy-trained.pth, partial-pretrained.pth)
- DeepGMR
- PointConv (通过这个 链接下载)
- MaskNet
可使用的数据集
- ModelNet40
可使用的损失函数
- 分类损失函数(交叉熵(Cross Entropy))
- 配准损失函数 (FrobeniusNormLoss, RMSEFeaturesLoss)
- 距离损失函数(Chamfer Distance, Earth Mover’s Distance)
- 对应关系损失函数(Correspondence Loss) (基于这篇文章)
技术细节
支持的系统
- Ubuntu 16.04
- Ubuntu 18.04
- Linux Mint
开发环境
- CUDA 10.0 或更高的版本
- Pytorch 1.3 或更高的版本
如何使用这个库
请注意:要Clone 这个库到你的项目里,请不要将自己的代码添加到**learning3d
**中
- 所有的网络都定义在
models
这个模块中; - 所有的损失函数都定义在
losses
这个模块中; Data loaders
提前定义在data_utils/dataloaders.py
这个文件中;- 所有的预训练模型都在
learning3d/pretrained
文件夹之中;
文档
B: 批量大小(Ba