Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/daniel-liu-c0deb0t/3d-neural-network-adversarial-attacks
Research on adversarial attacks and defenses for deep neural network 3D point cloud classifiers like PointNet and PointNet++.
https://github.com/daniel-liu-c0deb0t/3d-neural-network-adversarial-attacks
3d-point-clouds adversarial-attacks algorithms deep-learning matplotlib numpy pointnet python tensorflow
Last synced: 2 months ago
JSON representation
Research on adversarial attacks and defenses for deep neural network 3D point cloud classifiers like PointNet and PointNet++.
- Host: GitHub
- URL: https://github.com/daniel-liu-c0deb0t/3d-neural-network-adversarial-attacks
- Owner: Daniel-Liu-c0deb0t
- Created: 2018-07-15T19:15:52.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2020-05-22T05:40:50.000Z (over 4 years ago)
- Last Synced: 2024-08-05T10:08:06.232Z (5 months ago)
- Topics: 3d-point-clouds, adversarial-attacks, algorithms, deep-learning, matplotlib, numpy, pointnet, python, tensorflow
- Language: Python
- Homepage:
- Size: 82 KB
- Stars: 23
- Watchers: 5
- Forks: 9
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 3D Point Cloud Adversarial Attacks and Defenses
Adversarial attacks and defenses on neural networks that process 3D point cloud data, namely PointNet and PointNet++. The preprint paper is available on Arxiv [**here**](https://arxiv.org/abs/1901.03006). A shortened version is accepted at the 2019 IEEE ICIP. If you use this code, please cite```
@article{liu2019extending,
title={Extending Adversarial Attacks and Defenses to Deep 3D Point Cloud Classifiers},
author={Liu, Daniel and Yu, Ronald and Su, Hao},
journal={arXiv preprint arXiv:1901.03006},
year={2019}
}
```A continuation of this research is in [this paper](https://arxiv.org/abs/1908.06062), and its code is available [here](https://github.com/Daniel-Liu-c0deb0t/Adversarial-point-perturbations-on-3D-objects).
Note that files modified from the PointNet and PointNet++ source codes are included. Some files may need to be moved to the correct location before running experiments. Clone the PointNet and PointNet++ repositories, train the models, and place the code in `src/` into each of those repositories. The code in the `src/pointnet` and `src/pointnet2` directories have to replace the corresponding files in the PointNet and PointNet++ repositories. The files `src/adversarial_pointnet.py` and `src/adversarial_pointnet2.py` should be ran for attacks and defenses. Get the `.npz` file required for gradient projection attacks from [here](https://github.com/Daniel-Liu-c0deb0t/Adversarial-point-perturbations-on-3D-objects/releases/download/Data/point_clouds.npz).
## Highlights
### Attacks
- Fast/iterative gradient sign
- Jacobian-based saliency map attack
- Gradient projection
- Clipping L2 norms
### Defenses
- Adversarial training
- Outlier removal
- Salient point removal
### Conclusions
- Adversarial attacks are effective against deep 3D point cloud classifiers
- It is more easy to defend point cloud classifiers than 2D image classifiers