api.datasources.virtual_datasources package

Submodules

api.datasources.virtual_datasources.cylindrical_projection module

class api.datasources.virtual_datasources.cylindrical_projection.FlirCylindricalProjection(reference_sensor: str, dependencies: list, radius=50.0, fov_h=3.6651914291880923, fov_v=1.1780972450961724, image_h=2000, image_v=500, fusion_overlap_ratio=0.25)

Bases: pioneer.das.api.datasources.virtual_datasources.virtual_datasource.VirtualDatasource

Merges the images of three cameras in a single one.

__getitem__(key)
__init__(reference_sensor: str, dependencies: list, radius=50.0, fov_h=3.6651914291880923, fov_v=1.1780972450961724, image_h=2000, image_v=500, fusion_overlap_ratio=0.25)

Constructor :param reference_sensor: The name of the central camera (e.g. ‘flir_bfc’). :type reference_sensor: str :param dependencies: A list of the image datasource names from left to right.

(e.g. [‘flir_bfl_img’,’flir_bfc_img’,’flir_bfr_img’])

api.datasources.virtual_datasources.echoes_from_traces module

class api.datasources.virtual_datasources.echoes_from_traces.Echoes_from_Traces(reference_sensor: str, dependencies: list, nb_detections_max: int = 3, min_amplitude: float = 0)

Bases: pioneer.das.api.datasources.virtual_datasources.virtual_datasource.VirtualDatasource

Non official implementation of the peak detector. Also measures the widths and the skews for each echo.

__getitem__(key: Any)
__init__(reference_sensor: str, dependencies: list, nb_detections_max: int = 3, min_amplitude: float = 0)

Constructor :param reference_sensor: The name of the sensor (e.g. ‘pixell_bfc’). :type reference_sensor: str :param dependencies: A list of the datasource names.

The only element should be a Trace datasource (e.g. ‘pixell_bfc_ftrr’)

Parameters
  • nb_detections_max (int) – The maximum number of echoes per waveform.

  • min_amplitude (float) – Amplitude threshold under which the echoes are filtered out.

get_at_timestamp(timestamp)

Default implementation

get_echoes(processed_traces)
get_echoes_from_fast_traces(processed_fast_traces)
initialize_local_cache(data)

api.datasources.virtual_datasources.echoes_with_pulses module

class api.datasources.virtual_datasources.echoes_with_pulses.EchoesWithPulses(reference_sensor: str, dependencies: list, pulse_sample_size: int = 10, zero_baseline: bool = True)

Bases: pioneer.das.api.datasources.virtual_datasources.virtual_datasource.VirtualDatasource

Echoes, with a number of data points from the waveforms corresponding to the pulses that resulted in each echo.

__getitem__(key: Any)
__init__(reference_sensor: str, dependencies: list, pulse_sample_size: int = 10, zero_baseline: bool = True)

Constructor :param reference_sensor: The name of the sensor (e.g. ‘pixell_bfc’). :type reference_sensor: str :param dependencies: A list of the datasource names.

First element should be an Echo datasource (e.g. ‘pixell_bfc_ech’) Second element should be a Trace datasource (e.g. ‘pixell_bfc_ftrr’)

Parameters
  • pulse_sample_size (int) – The number of data points to gather before and after each echo in the waveforms. For example, with pulse_sample_size=10, the pulses will be 21 points, because the highest point is taken in addition to the 10 points before and the 10 points after.

  • zero_baseline (bool) – If True, the baseline of the waveforms are re-calibrated to be around zero.

api.datasources.virtual_datasources.hdr_waveform module

class api.datasources.virtual_datasources.hdr_waveform.HDRWaveform(reference_sensor: str, dependencies: list)

Bases: pioneer.das.api.datasources.virtual_datasources.virtual_datasource.VirtualDatasource

High Dynamic Range waveforms are created by combining both sets of waveforms from FastTraces.

__getitem__(key: Any)
__init__(reference_sensor: str, dependencies: list)

Constructor :param reference_sensor: The name of the sensor (e.g. ‘pixell_bfc’). :type reference_sensor: str :param dependencies: A list of the datasource names.

The only element should be a FastTrace datasource (e.g. ‘pixell_bfc_ftrr’)

api.datasources.virtual_datasources.virtual_datasource module

class api.datasources.virtual_datasources.virtual_datasource.VirtualDatasource(ds_type: str, dependencies: List[str], callback: Optional[Callable[[Dict[str, pioneer.das.api.datasources.abstract_datasource.AbstractDatasource], Any], Sample]], timestamps_source=None)

Bases: pioneer.das.api.datasources.abstract_datasource.AbstractDatasource

__getitem__(key)
__init__(ds_type: str, dependencies: List[str], callback: Optional[Callable[[Dict[str, pioneer.das.api.datasources.abstract_datasource.AbstractDatasource], Any], Sample]], timestamps_source=None)

Constructor :param ds_type: the datasource type, e.g. ‘ech-bbox’ :param dependencies: a list of datasource names used to compute this datasources, e.g. [‘eagle_tfc_ech’, ‘flir_tfc_img’, …]. :param callback: a method that will be called with arguments:

‘datasources’: a dict with dependencies as keys and corresponding datasources as values ‘key’: the argument passed to the virtual datasource’s __getitem__().

Parameters

timestamps_source – datasource used as timestamps, If None first one dependencies used

get_at_timestamp(timestamp: int)

Default implementation

get_first_datasource() → pioneer.das.api.datasources.abstract_datasource.AbstractDatasource
invalidate_caches()
property label
property timestamps

api.datasources.virtual_datasources.voxel_map module

class api.datasources.virtual_datasources.voxel_map.VoxelMap(reference_sensor: str, dependencies: list, memory: int = 5, skip: int = 1, voxel_size: float = 0.0)

Bases: pioneer.das.api.datasources.virtual_datasources.virtual_datasource.VirtualDatasource

Merges multiple past points clouds in a single one, in the same present referential (mapping). Optionally, the merged point cloud can be voxelized (one averaged point per voxel, or volume unit).

In order to work, the platform needs to have an egomotion_provider.

__getitem__(key: Any)
__init__(reference_sensor: str, dependencies: list, memory: int = 5, skip: int = 1, voxel_size: float = 0.0)

Constructor :param reference_sensor: The name of the sensor (e.g. ‘pixell_bfc’). :type reference_sensor: str :param dependencies: A list of the datasource names.

The only element should be an echo or point cloud datasource (e.g. ‘pixell_bfc_ech’)

Parameters
  • memory (int) – The number of past frames to merge.

  • skip (int) – If higher than 1, frames will be skipped. For example, with memory=10 and skip=2, the frames N=0,-2,-4,-6,-8,-10 will be merged. The present frame (N=0) is always included.

  • voxel_size (float) – If greater than 0, the merged point cloud will be voxelized.

clear_cache()
get_at_timestamp(timestamp)

Default implementation

static stack_point_cloud(stack, point_cloud)
voxelize(pc)

api.datasources.virtual_datasources.waveform_cloud module

class api.datasources.virtual_datasources.waveform_cloud.WaveformCloud(reference_sensor: str, dependencies: list, zero_baseline: bool = False, remove_negative_distances: bool = True)

Bases: pioneer.das.api.datasources.virtual_datasources.virtual_datasource.VirtualDatasource

Makes a point cloud from each data point of each waveforms.

__getitem__(key: Any)
__init__(reference_sensor: str, dependencies: list, zero_baseline: bool = False, remove_negative_distances: bool = True)

Constructor :param reference_sensor: The name of the sensor (e.g. ‘pixell_bfc’). :type reference_sensor: str :param dependencies: A list of the datasource names.

The only element should be a Trace datasource (e.g. ‘pixell_bfc_ftrr’)

Parameters
  • zero_baseline (bool) – If True, the baseline of the waveforms are re-calibrated to be around zero.

  • remove_negative_distances (bool) – If True, the points behind the sensor are filtered out.

get_extrema_positions(sensor, distances, ts, time_base_delays)

Module contents