Skip to content
This repository has been archived by the owner on Dec 19, 2022. It is now read-only.
/ camolo Public archive

Camouflage YOLO - (CAMOLO) trains adversarial patches to confuse the YOLO family of object detectors.

License

Notifications You must be signed in to change notification settings

IQTLabs/camolo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CAMOLO

Camouflage YOLO - (CAMOLO) trains adversarial patches to confuse the YOLO family of object detection algorithms. This repository is an extension of adversarial-yolo, with a number of bespoke enhancements as well as incorporation of data pre-processing and evaluation scripts from yoltv4.

1. Build Docker

First intall nvidia-docker, then run the following commands to create a docker image and environment:

# build
cd /camolo/docker
docker build -t camolo_image .

# run
nvidia-docker run -itd -v /local_data:/local_data  -p 9111:9111 -ti --ipc=host --name camolo camolo_image
docker start camolo
docker attach camolo
conda activate solaris

# run jupyter notebooks
cd /camolo/
jupyter notebook --ip 0.0.0.0 --port=9111 --no-browser --allow-root &
# now visit:
http://server_url:9111

2. Train

Edit patch_config.py and then run train_patch.py.

docker attach camolo
conda activate solaris
cd /camolo/camolo
python train_patch.py visdrone_v1_4cat_obj_only_v2

This will train an adversarial patch that when overlaid on an object will (hopefully) fool YOLO. For example:

Alt text

3. See notebooks for details on training and testing patches.

About

Camouflage YOLO - (CAMOLO) trains adversarial patches to confuse the YOLO family of object detectors.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages