https://github.com/chenzhaiyu/pointset-image-recognition
Go one dimension higher: can neural networks for point cloud analysis help in image recognition?
https://github.com/chenzhaiyu/pointset-image-recognition
classification image point-cloud recognition
Last synced: 18 days ago
JSON representation
Go one dimension higher: can neural networks for point cloud analysis help in image recognition?
- Host: GitHub
- URL: https://github.com/chenzhaiyu/pointset-image-recognition
- Owner: chenzhaiyu
- License: mit
- Created: 2020-05-13T19:26:13.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2020-07-05T15:50:04.000Z (almost 5 years ago)
- Last Synced: 2024-05-06T00:02:57.715Z (12 months ago)
- Topics: classification, image, point-cloud, recognition
- Language: Python
- Homepage: https://hackmd.io/@zhaiyuchen/cs4245
- Size: 1020 KB
- Stars: 5
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Go One Dimension Higher: Can Neural Networks for Point Cloud Analysis Help in Image Recognition? [](https://github.com/chenzhaiyu/pointset-image-recognition/blob/master/LICENSE)

## Introduction
Inspired by the sanity check made by Qi et al., which treats an image from MNIST dataset as a 2D point cloud, in this project we discuss whether neural networks designed for point cloud analysis can help image recognition.
> *While we focus on 3D point cloud learning, a sanity check experiment is to apply our network on a 2D point clouds - pixel sets.*
Three neural networks originally for point cloud analysis are employed, namely PointNet, PointNet++ and PointCNN. We have no ambition to defeat the state-of-the-art CNNs. Instead, the goal of this project is to discover the potential of these networks designed for 3D point set on 2D pixel set. The impact of shape information and the shift variance characteristic are discussed. For more details, please refer to the [blog](https://hackmd.io/@zhaiyuchen/cs4245).
## Requirements
* PyTorch 1.2
* PyTorch Geometric 1.5
Please refer to [environment.yml](https://github.com/chenzhaiyu/pointset-image-recognition/blob/master/environment.yml) for a complete list of required packages.## Usage
Create the environment from the `environment.yml` file:
```bash
conda env create -f environment.yml
```### Classification
```bash
# example training
python train_cls.py --batch_size 64 --data_dir 'path/to/data' --log_dir 'path/to/log' --dataset_name 'fashion' --epoch 250 --model 'pointcnn_cls' --num_class 10 --num_point 256
```### Semantic Segmentation
```bash
# example training
python train_semseg.py --batch_size 64 --data_dir 'path/to/data' --log_dir 'path/to/log' --epoch 250 --model 'pointnet2_sem_seg' --num_class 20 --num_point 4096
```### Tensorboard
```bash
tensorboard --logdir 'path/to/log'
```