Skip to content

PeterWANGHK/Benchmark-RiskField

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

164 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A Comparative Study of Risk Field Modeling for Interactive Driving in Mixed Traffic

(repo under continuous updating)

This interim repo contains packages for modelling of state-of-the-art Interaction Fields with Social Value Orientation based on various BEV datasets (My sample exiD dataset has been archived in "C:\exiD-tools\data", so the data directory needs to be tailored for other users)

The core research objectives

GVF Modeling

The Gaussian Velocity Field (GVF) is a mathematical model used to represent interactions between multiple vehicles during lane-change scenarios. The GVF is defined in a Region of Interest (ROI) around an ego vehicle and captures the relative velocity field generated by surrounding vehicles. referenced: "Spatiotemporal learning of multivehicle interaction patterns in lane-change scenarios" (IEEE-TITS)

Key Features:

  • Data Loading: Parse exiD dataset CSV files (tracks, tracksMeta, recordingMeta)
  • GVF Construction: Build velocity fields using Gaussian Process regression
  • Visualization: Plot GVF with vehicle positions and background images
  • Logging: Save GVF data in multiple formats (NPZ, CSV, JSON)
  • Analysis: Compute features and statistics from velocity fields

visualization of Gaussian Velocity Fields of ego truck and surrounding vehicles:

python exid_gvf_svo_visualization.py --data_dir "C:\exiD-tools\data" --recording 25
#sample usage with logged csv recording the occlusion scenario in exiD:
python exid_gvf_svo_visualization.py --data_dir C:\field_modeling\data\exiD --occlusion-csv "C:\field_modeling\src\output_roles\rec35_ego13_frame140\occlusion_log.csv" --occlusion-row 5 --occlusion-ego-role blocked --output_dir ./output_occlusion_gvf_exid

The example visualization of Gaussian Velocity Fields of ego truck and surrounding vehicles in exiD merging scenarios

Mechanical Wave (Aggressiveness) Modeling

visualization of Aggressiveness Distributions of ego truck and surrounding vehicles:

python exid_mech_svo_visualization.py --data_dir "C:\exiD-tools\data" --recording 25

The example visualization of Aggressiveness Distributions of ego truck and surrounding vehicles in exiD merging scenarios

Group Aggressiveness Modeling

visualization of Aggressiveness Distributions of ego truck and surrounding vehicles (aggregated as a group):

python exid_mech_group_visualization.py --data_dir "C:\exiD-tools\data" --recording 25

The example visualization of Aggressiveness Distributions of ego truck and surrounding vehicles as a group in exiD merging scenarios

APF Modeling

visualization of mutual SVO with symmetric evaluations:

python exid_enhanced_svo_visualization.py --data_dir "C:\exiD-tools\data" --recording 25 --output_dir "./enhanced_output"

visualization of SVO with APF in selected recording frame (example: 25):

python exid_svo_apf_visualization.py --data_dir "C:\exiD-tools\data" --recording 25 --output_dir "./output"

EDRF Modeling

integrating deep learning-based multimodal trajectory prediction results with Gaussian distribution models to quantitatively capture the uncertainty of traffic entities’ behavior (ITSC 2024)

python exid_erdf_visualization.py --data_dir C:\field_modeling\data\exiD --occlusion-csv "C:\field_modeling\src\output_roles\rec35_ego13_frame140\occlusion_log.csv" --occlusion-row 5 --occlusion-ego-role blocked --output_dir ./output_occlusion_gvf_exid --light-theme

car interaction visualization (enhanced version, pending frame enhancements):

# Interactive visualization (main program)
python exid_optimized_visualization.py --data_dir /path/to/exid/data --recording 25

# Static analysis plots
python exid_corrected_svo_visualization.py --data_dir /path/to/exid/data --recording 25

Bayseian Survival Analysis:

referenced: "Bayesian survival analysis of interactions between truck platoons and surrounding vehicles through a two-dimensional surrogate safety measure"

python exid_bayesian_platoon.py --data_dir C:\exiD-tools\data --recording 25 --output_dir ./your_defined_subfolder

Classification of agent roles and occlusion analysis

python exid_role_occlusion_analysis.py --data_dir C:\exiD-tools\data --recording 25  --ego_id 101 --output_dir ./your_defined_subfolder
# sample usage:
python exid_role_occlusion_analysis.py --data_dir C:\field_modeling\data\exiD --recording 32 --no-animation --display-neighbors 3 --max-ego-occlusions 3 --align-horizontal

The example visualization of the role classification and occlusion scenarios in exiD merging scenarios The example visualization of the role classification and occlusion scenarios in exiD merging scenarios

The following programs need the activation of "drone-dataset-tool38":

cd "C:\exiD-tools\data"
cd src
conda activate drone-dataset-tools38

detailed instructions found at: https://github.com/zxc-tju/exiD-tools/tree/master

Dataset structure:

C:\exiD-tools\data\
├── 00_tracks.csv
├── 00_tracksMeta.csv
├── 00_recordingMeta.csv
├── 00_background.png
├── 01_tracks.csv
├── ...
├── 25_tracks.csv          ← recording
├── 25_tracksMeta.csv      ← Vehicle metadata
├── 25_recordingMeta.csv   ← Recording info
├── 25_background.png      ← Aerial image
├── ...
└── Maps/
    ├── location1.osm      ← Lanelet2 HD map
    └── location1.xodr     ← OpenDrive HD map

Citation of the exiD dataset:

@inproceedings{exiDdataset,
               title={The exiD Dataset: A Real-World Trajectory Dataset of Highly Interactive Highway Scenarios in Germany},
               author={Moers, Tobias and Vater, Lennart and Krajewski, Robert and Bock, Julian and Zlocki, Adrian and Eckstein, Lutz},
               booktitle={2022 IEEE Intelligent Vehicles Symposium (IV)},
               pages={958-964},
               year={2022},
               doi={10.1109/IV51971.2022.9827305}}

About

A Comparative Study of Risk Field Modeling for Interactive Driving in Mixed Traffic

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors