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)¶
-