Skip to content

Latest commit

 

History

History
96 lines (55 loc) · 5.62 KB

File metadata and controls

96 lines (55 loc) · 5.62 KB
graph LR
    Dataset_Interface["Dataset Interface"]
    Concrete_Dataset_Implementations["Concrete Dataset Implementations"]
    Data_Augmentation["Data Augmentation"]
    Data_Samplers["Data Samplers"]
    Data_Preprocessing_Utilities["Data Preprocessing Utilities"]
    Geometric_Operations["Geometric Operations"]
    BEV_Bounding_Box_Utilities["BEV Bounding Box Utilities"]
    Concrete_Dataset_Implementations -- "implements" --> Dataset_Interface
    Data_Samplers -- "leverages" --> Dataset_Interface
    Concrete_Dataset_Implementations -- "leverages" --> Data_Preprocessing_Utilities
    Concrete_Dataset_Implementations -- "provides data to" --> Data_Augmentation
    Data_Samplers -- "interacts with" --> Concrete_Dataset_Implementations
    Data_Augmentation -- "processes data from" --> Concrete_Dataset_Implementations
    Data_Augmentation -- "calls methods from" --> Geometric_Operations
    Data_Preprocessing_Utilities -- "calls" --> Geometric_Operations
    BEV_Bounding_Box_Utilities -- "uses" --> Geometric_Operations
    Concrete_Dataset_Implementations -- "uses" --> BEV_Bounding_Box_Utilities
Loading

CodeBoardingDemoContact

Details

The ml3d.datasets subsystem is designed around a flexible Dataset Interface that standardizes how 3D datasets are handled. Concrete Dataset Implementations provide specific dataset loading and parsing, adhering to this interface. Data flow from these implementations can be further processed by Data Augmentation for diversity and prepared by Data Preprocessing Utilities for consistency. Data Samplers then organize this data into batches for model consumption. Underlying these operations, Geometric Operations provides fundamental 3D mathematical functions, which are utilized by both Data Augmentation and Data Preprocessing Utilities, and critically, by BEV Bounding Box Utilities for specialized bounding box manipulations. This modular design ensures robust and extensible data handling for 3D machine learning tasks.

Dataset Interface

Defines the foundational abstract interface and common structure that all 3D dataset classes must adhere to. It ensures data consistency across different dataset implementations.

Related Classes/Methods:

Concrete Dataset Implementations

A conceptual grouping of specific dataset handlers (e.g., SemanticKITTI, S3DIS, KITTI, CustomDataset) that implement the ml3d.datasets interface. These components are responsible for dataset-specific parsing, loading, and initial data structuring.

Related Classes/Methods:

Data Augmentation

Provides a collection of methods and classes for applying various transformations (e.g., rotation, scaling, noise) to 3D data, enhancing dataset diversity and model robustness.

Related Classes/Methods:

Data Samplers

Defines strategies and mechanisms for sampling points or data clouds from datasets, crucial for creating mini-batches for training and inference.

Related Classes/Methods:

Data Preprocessing Utilities

Manages common preprocessing tasks such as transformations between 3D coordinate systems, point cloud filtering, and normalization.

Related Classes/Methods:

Geometric Operations

Offers low-level, fundamental functions for 3D geometric manipulations, serving as a foundational utility for other components requiring basic 3D math.

Related Classes/Methods:

BEV Bounding Box Utilities

Encapsulates logic for handling and converting 3D bounding boxes, particularly for Bird's Eye View (BEV) representations, which are common in autonomous driving datasets.

Related Classes/Methods: