Skip to main content

Omega-Prime-Visibility: Compute Visibility of Objects Polygons

Project description

Omega-Prime-Visibility

This packages uses VisiLibity1 through visilibity (LGPL) to comptue the visibility of MovingObjects of omega-prime-Recordings. For every object it computes the visibilty as a float (1.0 for fully visible and 0.0 for not visible) (assuming 2D-brids-eye-view geometries) from the point of view of one object (assumed as a point in the center of the object). In addition the objects occluding the view (occluders) are computed.

This package also provides the computation of visibility as an omega-prime Metric: from omega_prime_visibility import visibility.

The example file highway_merge.mcap is taken from omega-prime and derived from esmini and is under MPL-2.0 license.

License

This python package is distributed under MIT license but the linked libraries visilibity and VisiLibity1 are under the GNU Lesser General Public License (LGPL).

Requirements

You need to have installed swig, boost and cython to be able to install visilibity

On windows you need to additonally install Buildtools:

  1. Download Buildtools für Visual Studio 2022
  2. Select C++ Tools for Linux Development and install

Installation

pip install omega-prime-visibility

Usage

See ./tutorial.ipynb for detailed instructions.

from omega_prime_visibility import get_visibility_df
import omega_prime
import shapely

r = omega_prime.Recording.from_file('highway_merge.mcap', compute_polygons=True)

obstruction_poly = shapely.Polygon([
    [-220,10],
    [-120,10],
    [-120,-0],
    [-220,-0],
])
df = get_visibility_df(r._df, ego_idx=0, static_occluder_polys=[obstruction_poly])

returns

frame idx occluder_idxs static_occluder_idxs visibility
0 1 [] [0] 0.42
0 2 [] [0] 0
0 3 [] [0] 0
0 4 [] [0] 0
0 5 [3] [0] 0
1 1 [] [0] 0.53
1 2 [] [0] 0
1 3 [] [0] 0
1 4 [] [0] 0
1 5 [3] [0] 0
2 1 [] [0] 0.63
2 2 [] [0] 0
2 3 [] [0] 0
2 4 [] [0] 0
2 5 [3] [0] 0
3 1 [] [0] 0.74
... ... ... ... ...
432 3 [] [] 1
432 4 [1 2 5] [] 0
432 5 [1 2] [] 0

Notice

[!IMPORTANT] The project is open-sourced and maintained by the Institute for Automotive Engineering (ika) at RWTH Aachen University. We cover a wide variety of research topics within our Vehicle Intelligence & Automated Driving domain. If you would like to learn more about how we can support your automated driving or robotics efforts, feel free to reach out to us! :email: opensource@ika.rwth-aachen.de

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

omega_prime_visibility-0.1.0.tar.gz (369.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

omega_prime_visibility-0.1.0-py3-none-any.whl (6.7 kB view details)

Uploaded Python 3

File details

Details for the file omega_prime_visibility-0.1.0.tar.gz.

File metadata

File hashes

Hashes for omega_prime_visibility-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d68982e6cf5a988408c832aeb8da442ed0a06ca4b174ef622e0c68d66c1658b9
MD5 dca66d48ae9f01150f2dc9fe08dd0723
BLAKE2b-256 0b1c06bca5e6cafe83aff0ff4afd6bafb63eed8005050fc5898a14e0632274f5

See more details on using hashes here.

File details

Details for the file omega_prime_visibility-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for omega_prime_visibility-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b19df20aa663397a63a944d6ba4ade65d35fbb49722bb5880621fbbc7c6633be
MD5 40e656cef1c033430a0b7c4658a910b1
BLAKE2b-256 35a25d39eb9e8b6a23985630ac87a9a207e982ed6795c549ebee5955cf7fd0c2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page