Code and data (Incidents Dataset) for ECCV 2020 Paper "Detecting natural disasters, damage, and incidents in the wild".

Overview

Incidents Dataset

See the following pages for more details:

  • Project page: IncidentsDataset.csail.mit.edu.
  • ECCV 2020 Paper "Detecting natural disasters, damage, and incidents in the wild" here.
  • Extended Paper "Incidents1M: a large-scale dataset of images with natural disasters, damage, and incidents" here.

Obtain the data

Please fill out this form and then email/notify [email protected] to request the data.

The data structure is in JSON with URLs and labels. The files are in the following form:

# single-label multi-class (ECCV 2020 version):
eccv_train.json
eccv_val.json

# multi-label multi-class (latest version):
multi_label_train.json
multi_label_val.json
  1. Download chosen JSON files and move to the data folder.

  2. Look at VisualizeDataset.ipynb to see the composition of the dataset files.

  3. Download the images at the URLs specified in the JSON files.

  4. Take note of image download location. This is param --images_path in parser.py.

Setup environment

git clone https://github.com/ethanweber/IncidentsDataset
cd IncidentsDataset

conda create -n incidents python=3.8.2
conda activate incidents
pip install -r requirements.txt

Using the Incident Model

  1. Download pretrained weights here. Place desired files in the pretrained_weights folder. Note that these take the following structure:

    # run this script to download everything
    python run_download_weights.py
    
    # pretrained weights with Places 365
    resnet18_places365.pth.tar
    resnet50_places365.pth.tar
    
    # ECCV baseline model weights
    eccv_baseline_model_trunk.pth.tar
    eccv_baseline_model_incident.pth.tar
    eccv_baseline_model_place.pth.tar
    
    # ECCV final model weights
    eccv_final_model_trunk.pth.tar
    eccv_final_model_incident.pth.tar
    eccv_final_model_place.pth.tar
    
    # multi-label final model weights
    multi_label_final_model_trunk.pth.tar
    multi_label_final_model_incident.pth.tar
    multi_label_final_model_place.pth.tar
    
  2. Run inference with the model with RunModel.ipynb.

  3. Compute mAP and report numbers.

    # test the model on the validation set
    python run_model.py \
        --config=configs/eccv_final_model \
        --mode=val \
        --checkpoint_path=pretrained_weights \
        --images_path=/path/to/downloaded/images/folder/
    
  4. Train a model.

    # train the model
    python run_model.py \
        --config=configs/eccv_final_model \
        --mode=train \
        --checkpoint_path=runs/eccv_final_model
    
    # visualize tensorboard
    tensorboard --samples_per_plugin scalars=100,images=10 --port 8880 --bind_all --logdir runs/eccv_final_model
    

    See the configs/ folder for more details.

Citation

If you find this work helpful for your research, please consider citing our paper:

@InProceedings{weber2020eccv,
  title={Detecting natural disasters, damage, and incidents in the wild},
  author={Weber, Ethan and Marzo, Nuria and Papadopoulos, Dim P. and Biswas, Aritro and Lapedriza, Agata and Ofli, Ferda and Imran, Muhammad and Torralba, Antonio},
  booktitle={The European Conference on Computer Vision (ECCV)},
  month = {August},
  year={2020}
}

License

This work is licensed with the MIT License. See LICENSE for details.

Acknowledgements

This work is supported by the CSAIL-QCRI collaboration project and RTI2018-095232-B-C22 grant from the Spanish Ministry of Science, Innovation and Universities.

Owner
Ethan Weber
Currently PhD student at Berkeley. Previously EECS at MIT BS '20 & MEng '21.
Ethan Weber
Split your patch similarly to `git add -p` but supporting multiple buckets

split-patch.py This is git add -p on steroids for patches. Given a my.patch you can run ./split-patch.py my.patch You can choose in which bucket to p

102 Oct 06, 2022
Code for sound field predictions in domains with impedance boundaries. Used for generating results from the paper

Code for sound field predictions in domains with impedance boundaries. Used for generating results from the paper

DTU Acoustic Technology Group 11 Dec 17, 2022
[ICLR2021] Unlearnable Examples: Making Personal Data Unexploitable

Unlearnable Examples Code for ICLR2021 Spotlight Paper "Unlearnable Examples: Making Personal Data Unexploitable " by Hanxun Huang, Xingjun Ma, Sarah

Hanxun Huang 98 Dec 07, 2022
CSD: Consistency-based Semi-supervised learning for object Detection

CSD: Consistency-based Semi-supervised learning for object Detection (NeurIPS 2019) By Jisoo Jeong, Seungeui Lee, Jee-soo Kim, Nojun Kwak Installation

80 Dec 15, 2022
A Deep Reinforcement Learning Framework for Stock Market Trading

DQN-Trading This is a framework based on deep reinforcement learning for stock market trading. This project is the implementation code for the two pap

61 Jan 01, 2023
code for "AttentiveNAS Improving Neural Architecture Search via Attentive Sampling"

code for "AttentiveNAS Improving Neural Architecture Search via Attentive Sampling"

Facebook Research 94 Oct 26, 2022
In this project, we create and implement a deep learning library from scratch.

ARA In this project, we create and implement a deep learning library from scratch. Table of Contents Deep Leaning Library Table of Contents About The

22 Aug 23, 2022
The implementation of "Optimizing Shoulder to Shoulder: A Coordinated Sub-Band Fusion Model for Real-Time Full-Band Speech Enhancement"

SF-Net for fullband SE This is the repo of the manuscript "Optimizing Shoulder to Shoulder: A Coordinated Sub-Band Fusion Model for Real-Time Full-Ban

Guochen Yu 36 Dec 02, 2022
code for EMNLP 2019 paper Text Summarization with Pretrained Encoders

PreSumm This code is for EMNLP 2019 paper Text Summarization with Pretrained Encoders Updates Jan 22 2020: Now you can Summarize Raw Text Input!. Swit

Yang Liu 1.2k Dec 28, 2022
Deep Learning Slide Captcha

滑动验证码深度学习识别 本项目使用深度学习 YOLOV3 模型来识别滑动验证码缺口,基于 https://github.com/eriklindernoren/PyTorch-YOLOv3 修改。 只需要几百张缺口标注图片即可训练出精度高的识别模型,识别效果样例: 克隆项目 运行命令: git cl

Python3WebSpider 55 Jan 02, 2023
Multi-Output Gaussian Process Toolkit

Multi-Output Gaussian Process Toolkit Paper - API Documentation - Tutorials & Examples The Multi-Output Gaussian Process Toolkit is a Python toolkit f

GAMES 113 Nov 25, 2022
[Preprint] ConvMLP: Hierarchical Convolutional MLPs for Vision, 2021

Convolutional MLP ConvMLP: Hierarchical Convolutional MLPs for Vision Preprint link: ConvMLP: Hierarchical Convolutional MLPs for Vision By Jiachen Li

SHI Lab 143 Jan 03, 2023
CATE: Computation-aware Neural Architecture Encoding with Transformers

CATE: Computation-aware Neural Architecture Encoding with Transformers Code for paper: CATE: Computation-aware Neural Architecture Encoding with Trans

16 Dec 27, 2022
Tensorflow 2.x implementation of Vision-Transformer model

Vision Transformer Unofficial Tensorflow 2.x implementation of the Transformer based Image Classification model proposed by the paper AN IMAGE IS WORT

Soumik Rakshit 16 Jul 20, 2022
Pytorch Implementation of "Desigining Network Design Spaces", Radosavovic et al. CVPR 2020.

RegNet Pytorch Implementation of "Desigining Network Design Spaces", Radosavovic et al. CVPR 2020. Paper | Official Implementation RegNet offer a very

Vishal R 2 Feb 11, 2022
基于AlphaPose的TensorRT加速

1. Requirements CUDA 11.1 TensorRT 7.2.2 Python 3.8.5 Cython PyTorch 1.8.1 torchvision 0.9.1 numpy 1.17.4 (numpy版本过高会出报错 this issue ) python-package s

52 Dec 06, 2022
Fast and robust certifiable relative pose estimation

Fast and Robust Relative Pose Estimation for Calibrated Cameras This repository contains the code for the relative pose estimation between two central

42 Dec 06, 2022
Using knowledge-informed machine learning on the PRONOSTIA (FEMTO) and IMS bearing data sets. Predict remaining-useful-life (RUL).

Knowledge Informed Machine Learning using a Weibull-based Loss Function Exploring the concept of knowledge-informed machine learning with the use of a

Tim 43 Dec 14, 2022
YOLOv2 in PyTorch

YOLOv2 in PyTorch NOTE: This project is no longer maintained and may not compatible with the newest pytorch (after 0.4.0). This is a PyTorch implement

Long Chen 1.5k Jan 02, 2023
Proof-Of-Concept Piano-Drums Music AI Model/Implementation

Rock Piano "When all is one and one is all, that's what it is to be a rock and not to roll." ---Led Zeppelin, "Stairway To Heaven" Proof-Of-Concept Pi

Alex 4 Nov 28, 2021