Skip to content

asafhaddad/radarsimpy

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status DOI

RadarSimPy

logo

A Radar Simulator for Python

This module needs to be built/used together with RadarSimC (the C++ engine for radar simulator)

Key Features

  1. Radar: Classes to define a radar system
    • radarsimpy.Transmitter: Radar transmitter
    • radarsimpy.Receiver: Radar receiver
    • radarsimpy.Radar: Radar system
  2. Simulator: Radar baseband signal simulator
    • radarsimpy.simulator.simpy: Simulates and generates raw time domain baseband data (Python engine)
    • radarsimpy.simulator.simc: Simulates and generates raw time domain baseband data (C++ engine)
  3. Raytracing: Raytracing module for radar scene simulation
    • radarsimpy.rt.lidar_scene: Simulates LiDAR's point cloud based on a 3D environment model with ray tracing
    • radarsimpy.rt.rcs_sbr: Simulates target's radar cross section (RCS) based on the 3D model with ray tracing
    • radarsimpy.rt.scene: Simulates radar's response signal in a 3D environment model with ray tracing
  4. Processing: Basic radar signal processing module
  5. Tools: Receiver operating characteristic analysis

This module supports CPU/GPU parallelization. CPU parallelization is implemented through OpenMP. GPU parallelization (CUDA) has been added since v6.0.0.

performance

Dependence

Installation

Contact me if you are interested in this module.

To use the module, please put the radarsimpy folder within your project folder as shown below.

Windows

  • your_project.py
  • your_project.ipynb
  • radarsimpy
    • __init__.py
    • radarsimc.dll
    • scene.xxx.pyd
    • ...

Linux

  • your_project.py
  • your_project.ipynb
  • radarsimpy
    • __init__.py
    • libradarsimc.so
    • scene.xxx.so
    • ...

Coordinate Systems

Scene Coordinate

  • axis (m): [x, y, z]
  • phi (deg): angle on x-y plane. Positive x-axis is 0 deg, positive y-axis is 90 deg
  • theta (deg): angle on z-x plane. Positive z-axis is 0 deg, x-y plane is 90 deg
  • azimuth (deg): azimuth -90 ~ 90 deg equal to phi -90 ~ 90 deg
  • elevation (deg): elevation -90 ~ 90 deg equal to theta 180 ~ 0 deg

Object's Local Coordinate

  • axis (m): [x, y, z]
  • yaw (deg): rotation along z-axis. Positive yaw rotates object from positive x-axis to positive y-axis
  • pitch (deg): rotation along y-axis. Positive pitch rotates object from positive x-axis to positive z-axis
  • roll (deg): rotation along x-axis. Positive roll rotates object from positive z-axis to negative y-axis
  • origin (m): [x, y, z]
  • rotation (deg): [yaw, pitch, roll]
  • rotation (deg/s): rate [yaw rate, pitch rate, roll rate]

Usage

About

Radar Simulator built with Python and C++

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 56.2%
  • Cython 43.8%