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
Federated Deep Reinforcement Learning for the Distributed Control of NextG Wireless Networks.

FDRL-PC-Dyspan Federated Deep Reinforcement Learning for the Distributed Control of NextG Wireless Networks. This repository contains the entire code

Peyman Tehrani 17 Nov 18, 2022
GEA - Code for Guided Evolution for Neural Architecture Search

Efficient Guided Evolution for Neural Architecture Search Usage Create a conda e

6 Jan 03, 2023
Hands-On Machine Learning for Algorithmic Trading, published by Packt

Hands-On Machine Learning for Algorithmic Trading Hands-On Machine Learning for Algorithmic Trading, published by Packt This is the code repository fo

Packt 981 Dec 29, 2022
This program presents convolutional kernel density estimation, a method used to detect intercritical epilpetic spikes (IEDs)

Description This program presents convolutional kernel density estimation, a method used to detect intercritical epilpetic spikes (IEDs) in [Gardy et

Ludovic Gardy 0 Feb 09, 2022
The 1st Place Solution of the Facebook AI Image Similarity Challenge (ISC21) : Descriptor Track.

ISC21-Descriptor-Track-1st The 1st Place Solution of the Facebook AI Image Similarity Challenge (ISC21) : Descriptor Track. You can check our solution

lyakaap 75 Jan 08, 2023
Source code for GNN-LSPE (Graph Neural Networks with Learnable Structural and Positional Representations)

Graph Neural Networks with Learnable Structural and Positional Representations Source code for the paper "Graph Neural Networks with Learnable Structu

Vijay Prakash Dwivedi 180 Dec 22, 2022
Implementation of DocFormer: End-to-End Transformer for Document Understanding, a multi-modal transformer based architecture for the task of Visual Document Understanding (VDU)

DocFormer - PyTorch Implementation of DocFormer: End-to-End Transformer for Document Understanding, a multi-modal transformer based architecture for t

171 Jan 06, 2023
Joint Discriminative and Generative Learning for Person Re-identification. CVPR'19 (Oral)

Joint Discriminative and Generative Learning for Person Re-identification [Project] [Paper] [YouTube] [Bilibili] [Poster] [Supp] Joint Discriminative

NVIDIA Research Projects 1.2k Dec 30, 2022
Deep Halftoning with Reversible Binary Pattern

Deep Halftoning with Reversible Binary Pattern ICCV Paper | Project Website | BibTex Overview Existing halftoning algorithms usually drop colors and f

Menghan Xia 17 Nov 22, 2022
GANSketchingJittor - Implementation of Sketch Your Own GAN in Jittor

GANSketching in Jittor Implementation of (Sketch Your Own GAN) in Jittor(计图). Or

Bernard Tan 10 Jul 02, 2022
Learning Representational Invariances for Data-Efficient Action Recognition

Learning Representational Invariances for Data-Efficient Action Recognition Official PyTorch implementation for Learning Representational Invariances

Virginia Tech Vision and Learning Lab 27 Nov 22, 2022
DyNet: The Dynamic Neural Network Toolkit

The Dynamic Neural Network Toolkit General Installation C++ Python Getting Started Citing Releases and Contributing General DyNet is a neural network

Chris Dyer's lab @ LTI/CMU 3.3k Jan 06, 2023
Dynamics-aware Adversarial Attack of 3D Sparse Convolution Network

Leaded Gradient Method (LGM) This repository contains the PyTorch implementation for paper Dynamics-aware Adversarial Attack of 3D Sparse Convolution

An Tao 2 Oct 18, 2022
Learning To Have An Ear For Face Super-Resolution

Learning To Have An Ear For Face Super-Resolution [Project Page] This repository contains demo code of our CVPR2020 paper. Training and evaluation on

50 Nov 16, 2022
Repository for the Bias Benchmark for QA dataset.

BBQ Repository for the Bias Benchmark for QA dataset. Authors: Alicia Parrish, Angelica Chen, Nikita Nangia, Vishakh Padmakumar, Jason Phang, Jana Tho

ML² AT CILVR 18 Nov 18, 2022
A Conditional Point Diffusion-Refinement Paradigm for 3D Point Cloud Completion

A Conditional Point Diffusion-Refinement Paradigm for 3D Point Cloud Completion This repo intends to release code for our work: Zhaoyang Lyu*, Zhifeng

Zhaoyang Lyu 68 Jan 03, 2023
EdiBERT, a generative model for image editing

EdiBERT, a generative model for image editing EdiBERT is a generative model based on a bi-directional transformer, suited for image manipulation. The

16 Dec 07, 2022
[NeurIPS 2021] Well-tuned Simple Nets Excel on Tabular Datasets

[NeurIPS 2021] Well-tuned Simple Nets Excel on Tabular Datasets Introduction This repo contains the source code accompanying the paper: Well-tuned Sim

52 Jan 04, 2023
Deep motion generator collections

GenMotion GenMotion (/gen’motion/) is a Python library for making skeletal animations. It enables easy dataset loading and experiment sharing for synt

23 May 24, 2022
Functional TensorFlow Implementation of Singular Value Decomposition for paper Fast Graph Learning

tf-fsvd TensorFlow Implementation of Functional Singular Value Decomposition for paper Fast Graph Learning with Unique Optimal Solutions Cite If you f

Sami Abu-El-Haija 14 Nov 25, 2021