python train.py --shapenet13 --dir_name log/atlasnet_autoencoder_25_squares --nb_primitives 25 --template_type "SQUARE" python train.py --shapenet13 --dir_name log/atlasnet_singleview_25_squares_tmp --nb_primitives 25 --template_type SQUARE --SVR --reload_decoder_path log/atlasnet_autoencoder_25_squares --train_only_encoder 🖐️ Monitor your training on http://localhost:8890/
🖐️ See report on a completed training at http://localhost:8891/{DIR_NAME}
--batch_size, 32, Training batch size--batch_size_test, 32, Testing batch size--workers, 0, Number of data loading workers--nepoch, 150, Number of training epochs--start_epoch, 0, Start directly from epoch [X]--random_seed, False, Fix random seed--lrate, 0.001, Learning rate--lr_decay_1, 120, Learning rate decay 1--lr_decay_2, 140, Learning rate decay 2--lr_decay_3, 145, Learning rate decay 3--multi_gpu, [0], Replacing CUDA_VISIBLE_DEVICES=X. i.e to use gpu 1 and 2--multi_gpu 0 1--loop_per_epoch, 1, Number of data loop per epoch--no_learning, False, No backdrop + network in eval mode--train_only_encoder, False, Only train the encoder, freeze decoder--run_single_eval, False, Flag to evaluate a trained network reloaded with--reload_model_path--demo, False, Run forward pass on an input and save mesh output. Input provided by--demo_input_path, network reloaded with--reload_model_path
-
--SVR, False, Single_view Reconstruction mode. Affects dataloader and network architecture -
--shapenet13, False, Load the 13 usual shapenet categories -
--class_choice, ["airplane"], Choose classes to train on -
--random_rotation, False, Random rotation -
--normalization, "UnitBall" , Choices are 'UnitBall', 'BoundingBox', or 'Identity' -
--sample, True, Sample the input pointclouds -
--number_points, 2500, Number of point sampled on the object -
--number_points_eval, 2500, Number of points sampled on the object during evaluation -
--data_augmentation_axis_rotation, False, Axial rotation -
--data_augmentation_random_flips, False, Random flips -
--random_translation, False, Random translation -
--anisotropic_scaling, False, Anisotropic scaling
--demo_input_path, "./doc/pictures/plane_input_demo.png", Input test path, requires--demo--reload_model_path, "./training/trained_models/atlasnet_AE_25_patches.pth", Path to pre-trained model--reload_decoder_path, "./training/trained_models/atlasnet_AE_25_patches.pth", Path to pre-trained model--env, "Atlasnet", Visdom environment--visdom_port, 8890, Visdom port--http_port, 8891, Http port--dir_name, "", Name of the log folder.--id, 0, Training id
-
--nb_primitives, 1, Number of primitives in atlasnet decoder -
--template_type, "SQUARE", Choices are "SPHERE", or "SQUARE" -
--num_layers, 2, Number of hidden MLP Layer in atlasnet decoder -
--hidden_neurons, 512, Number of neurons in each hidden layer of atlasnet decoder -
--bottleneck_size, 1024, Bottleneck_size for the auto encoder -
--activation, 'relu', Choices are "relu", "sigmoid", "softplus", "logsigmoid", "softsign", or "tanh" -
--remove_all_batchNorms, False, Replace all batchnorms by identity
--no_metro, False, Skip metro distance evaluation.
| Method | Chamfer (*1) | Fscore (*2) | Metro (*3) | Total Train time (min) |
|---|---|---|---|---|
| Autoencoder 25 Squares | 1.35 | 82.3% | 6.82 | 731 |
| Autoencoder 1 Sphere | 1.35 | 83.3% | 6.94 | 548 |
| SingleView 25 Squares | 3.78 | 63.1% | 8.94 | 1422 |
| SingleView 1 Sphere | 3.76 | 64.4% | 9.01 | 1297 |
- (*1) x1000. Computed between 2500 ground truth points and 2500 reconstructed points.
- (*2) The threshold is 0.001
- (*3) x100. Metro is ran on unormalized point clouds (which explains a difference with the paper's numbers)
To reproduce main results from the paper : python ./training/launcher.py
In case you need the results of ICP on PointSetGen output :
