# AtlasNet
**Repository Path**: dang050/AtlasNet
## Basic Information
- **Project Name**: AtlasNet
- **Description**: This repository contains the source codes for the paper "AtlasNet: A Papier-Mâché Approach to Learning 3D Surface Generation ". The network is able to synthesize a mesh (point cloud + connectivity) from a low-resolution point cloud, or from an image.
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-07-25
- **Last Updated**: 2021-07-25
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## AtlasNet [[Project Page]](http://imagine.enpc.fr/~groueixt/atlasnet/) [[Paper]](https://arxiv.org/abs/1802.05384) [[Talk]](http://imagine.enpc.fr/~groueixt/atlasnet/atlasnet_slides_spotlight_CVPR.pptx)
**AtlasNet: A Papier-Mâché Approach to Learning 3D Surface Generation**
Thibault Groueix, Matthew Fisher, Vladimir G. Kim , Bryan C. Russell, Mathieu Aubry
In [CVPR, 2018](http://cvpr2018.thecvf.com/).
:rocket: New branch : [AtlasNet + Shape Reconstruction by Learning Differentiable Surface Representations](https://github.com/ThibaultGROUEIX/AtlasNet/tree/jacobian_regularization)
### Install
This implementation uses Python 3.6, [Pytorch](http://pytorch.org/), [Pymesh](https://github.com/PyMesh/PyMesh), Cuda 10.1.
```shell
# Copy/Paste the snippet in a terminal
git clone --recurse-submodules https://github.com/ThibaultGROUEIX/AtlasNet.git
cd AtlasNet
#Dependencies
conda create -n atlasnet python=3.6 --yes
conda activate atlasnet
conda install pytorch torchvision cudatoolkit=10.1 -c pytorch --yes
pip install --user --requirement requirements.txt # pip dependencies
```
##### Optional : Compile Chamfer (MIT) + Metro Distance (GPL3 Licence)
```shell
# Copy/Paste the snippet in a terminal
python auxiliary/ChamferDistancePytorch/chamfer3D/setup.py install #MIT
cd auxiliary
git clone https://github.com/ThibaultGROUEIX/metro_sources.git
cd metro_sources; python setup.py --build # build metro distance #GPL3
cd ../..
```
### Usage
* **[Demo](./doc/demo.md)** : ```python train.py --demo```
* **[Training](./doc/training.md)** : ```python train.py --shapenet13``` *Monitor on http://localhost:8890/*
* Latest Refacto 12-2019
- [x] Factorize Single View Reconstruction and autoencoder in same class
- [x] Factorise Square and Sphere template in same class
- [x] Add latent vector as bias after first layer(30% speedup)
- [x] Remove last th in decoder
- [x] Make large .pth tensor with all pointclouds in cache(drop the nasty Chunk_reader)
- [x] Make-it multi-gpu
- [x] Add netvision visualization of the results
- [x] Rewrite main script object-oriented
- [x] Check that everything works in latest pytorch version
- [x] Add more layer by default and flag for the number of layers and hidden neurons
- [x] Add a flag to generate a mesh directly
- [x] Add a python setup install
- [x] Make sure GPU are used at 100%
- [x] Add f-score in Chamfer + report f-score
- [x] Get rid of shapenet_v2 data and use v1!
- [x] Fix path issues no more sys.path.append
- [x] Preprocess shapenet 55 and add it in dataloader
- [x] Make minimal dependencies