/image-driven

Primary LanguagePythonOtherNOASSERTION

Probabilistic Image-Driven Traffic
Modeling via Remote Sensing

arXiv Project Page

Scott Workman and Armin Hadzic, ECCV 2024

Highlighted results

Table of Contents

Get started

Installation

  1. Clone the repository.
git clone https://github.com/scottworkman/image-driven
cd image-driven
  1. Create and activate the environment (e.g., using conda).
conda env create -f resources/environment.yml
conda activate image-driven

Download Weights

We release several models to enable training and evaluating our methods. To use them with the scripts in this repo, create a top-level logs/ directory and extract the archives inside.

Model Description Link
Ours Model from our ECCV 2024 paper. model.zip
Pretrain Weights used to initialize the image backbone during training. pretrain.zip

Train and Evaluate

To train our approach:

python main.py --pretrain="./logs/pretrain.ckpt"

To train other variants of our approach, as described in the paper, adjust the input arguments:

python main.py --help

For example:

python main.py --method=metadata

To evaluate:

cd eval
python compute_speed_metrics.py

For visualizing results, see the example notebooks in the visualize subdirectory.

Dynamic Traffic Speeds++ Dataset

Our dataset can be obtained using the links below. The scripts in this repository asume the dataset lives at dts++/ under the root directory. Extract the dataset wherever you like and then create a symbolic link:

ln -s /path/to/dataset dts++

Disclaimer: The overhead imagery is owned and copyrighted by Microsoft and must not be used for any commercial purposes.

Dense Variant of DTS++

The original version of DTS introduced the notion of sampling to enable angle-dependent traffic speed prediction. We trained and evaluated our approach following the same methodology (i.e., using a precomputed set of sparse points). However, we also release a new dense variant of DTS++, which completely removes the notion of sampling as well as provides new dense angle masks.

Note that evaluating our method (trained sparsely) in a dense manner, i.e., aggregating over all road segment pixels, achieves similar performance:

python compute_speed_metrics.py --dense=True

For ease of use, we suggest that follow-on work build from the dense variant of DTS++.

Download

Publications

Please cite our paper if you find this work helpful:

@inproceedings{workman2024probabilistic,
  title={{Probabilistic Image-Driven Traffic Modeling via Remote Sensing}},
  author={Scott Workman and Armin Hadzic},
  booktitle={{European Conference on Computer Vision (ECCV)}},
  year=2024
}

This project builds on our prior work:

@inproceedings{workman2020dynamic,
  author={Scott Workman and Nathan Jacobs},
  title={{Dynamic Traffic Modeling from Overhead Imagery}},
  booktitle={{IEEE Conference on Computer Vision and Pattern Recognition (CVPR)}},
  year=2020,
}

License

The code is distributed under the CC BY-NC-SA 4.0 License. See LICENSE for more information.

# Copyright © Scott Workman. 2024. All rights reserved.
# Licensed under CC BY-NC-SA 4.0 (non-commercial use only).