Skip to content

MathiasPechinger/MatlabOcclusionSimulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Matlab Occlusion Simulator

Installation

install git lfs for large files

sudo apt-get -y install git-lfs

Note: if you did not install git-lfs before cloning the repo, you can use:

git lfs fetch
git lfs get

This will update the lfs tagged files

initialize git submodules

git submodule update --init

Usage

Getting Started

To get started you can chose to run "RunEvaluationManual_staticOcclusion.m" in Matlab. This will automatically start the simulation on a small dataset.

In the script you can adjust several parameters such as:

  • Field of View of the automated vehicles
  • AV percentage
  • enable visualization
  • enable further visualization for debugging

Further Usage

The same applies for the dynamic simulation. If you want to run several simulation at once, you can use the "RunEvaluationParallel*.mat." It is configured to run the several evaluations on serveral CPUs. To check the current status of the evaluation, type "job" in the command window and check your cpu load to see if it is running.

Methodology

An occlusion evaluation software using Matlab was developed to evaluate possible dynamic occlusions. The input for this software uses simulation data generated by Aimsun Next. The methodology comprises three main steps: Running the Aimsun simulation, Evaluating the occlusions, and Generating the resulting heat map.

  1. Evaluating Occlusion Based on Generated Data: The collected vehicle positions from an Aimsun simultion are used to evaluate occlusion generated by moving objects. The occlusion evaluation approach is illustrated in the figure below, showing a top-down view of an intersection with cars and buildings. The occlusion of one specific timestep is shown, based on all cars and buildings in the road network at that time.

Small black boxes represent manually driven cars without environment-observing sensors, generating dynamic occlusion for connected automated vehicles (CAVs). Small red boxes highlight the CAVs currently in the road network. A circle around each CAV indicates the occlusion it is subjected to by non-CAVs, represented by green and red circles.

The next figure shows an illustration of the ray traycing approach.

Buildings in the image are downloaded from Open Street Maps OpenStreetMap - Published under referring to "Produced Work" ODbL

  1. Generating an Occlusion Heat Map: A resulting heat map is generated based on an occupancy grid map with a one-meter resolution. Every time one or more CAVs observe a bin of this grid map during a timestep, the bin counter is increased by one. After the entire simulation run, a heat map is generated, showing which locations of the road network are dynamically occluded.

From the heat map, this approach can reveal dynamic occlusions in a road network and adjust the penetration rate of connected automated vehicles (CAVs) in a mixed-traffic scenario. The red arrow indicates where a dynamically occluded spot in the road network was observed. In summary, this methodology enables the evaluation of static and dynamic occlusions in urban intersections by running an Aimsun simulation of a road network, evaluating occlusion based on generated data, and generating an occlusion heat map.

Requirements

The software requires the following dependencies:

Hard Requirements:

  • MATLAB (tested using 2023a)
  • Automated Driving Toolbox
  • Mapping Toolbox

Soft Requirements:

  • Parallel Computing Toolbox

Limitations

The algorithm runs quite slow. Do not expect realtime capabilities. The "ray-tracing" approach in this repository is utilized using basic mathematical equations wihtout advanced acceleration techniques. A small increase in performance was introdced using the Intersections algortihm from Douglas M. Schwarz.

License

This software is released under the MIT License.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages