← Open Source
open-gigaai

giga-datasets

GigaDatasets: A Unified and Lightweight Framework for Data Processing, Curation, and Visualization.

Model DevelopmentDataset engineeringPython
Open on GitHub
Momentum
+0stars in 24 hours0.0%
643
Stars
76
Forks
+-1
This week
2
Contributors
Created 2025-09-26 · Updated 2026-10-13 · #15620 today
Top developers
501177639GigaAI-OpenSource

open-gigaai/giga-datasets is ranked 15,620 with 643 stars.

Same-category comparison

open-gigaai/giga-datasets is ranked 15,620 among these 8 peers; autonomousvision/shape_as_points is ranked 15,616.

Same-category comparison
NameRankMetrics
JIA-Lab-research/Seg-Zero15,611
Language:
Python
Stars:
643
Forks:
31
Description:
Project Page For "Seg-Zero: Reasoning-Chain Guided Segmentation via Cognitive Reinforcement".
PlayVoice/lora-svc15,612
Language:
Python
Stars:
643
Forks:
79
Description:
singing voice change based on whisper, and lora for singing voice clone.
aditya-vora/FCHD-Fully-Convolutional-Head-Detector15,614
Language:
Python
Stars:
643
Forks:
180
Description:
Code for FCHD - A fast and accurate head detector.
autonomousvision/shape_as_points15,616
Language:
Python
Stars:
643
Forks:
52
Description:
[NeurIPS'21] Shape As Points: A Differentiable Poisson Solver.
PaddlePaddle/Paddle3D15,627
Language:
Python
Stars:
642
Forks:
148
Description:
A 3D computer vision development toolkit based on PaddlePaddle. It supports point-cloud object detection, segmentation, and monocular 3D object detection models.
AnacletoLAB/grape15,636
Language:
Jupyter Notebook
Stars:
641
Forks:
39
Description:
🍇 GRAPE is a Rust/Python Graph Representation Learning library for Predictions and Evaluations.
BobLiu20/YOLOv3_PyTorch15,639
Language:
Python
Stars:
641
Forks:
186
Description:
Full implementation of YOLOv3 in PyTorch.
NVlabs/EmerNeRF15,644
Language:
Python
Stars:
641
Forks:
49
Description:
PyTorch Implementation of EmerNeRF: Emergent Spatial-Temporal Scene Decomposition via Self-Supervision.
Key parameters and specifications
Key parameters and specifications
ParameterValue
LanguagePython
CategoryModel Development
SubcategoryDataset engineering
KeywordsData processing, Evals, Visualization
Stars643
Forks76
Contributors2
Created date2025-09-26
Updated date2026-10-13
Stars in 1 day0
Stars in 7 days-1
Rank15,620
Previous rank15,432
Rank change-188
7-day stars rank17,798
Previous 7-day stars rank19,160
7-day stars rank change1,362
Total stars rank15,912
Previous total stars rank15,886
Total stars rank change-26
CountryChina
README summary

A Unified and Lightweight Framework for Data Curation, Evaluation and Visualization ✨ Introduction GigaDatasets is a unified and lightweight framework for data curation, evaluation and visualization. Designed to make handling massive datasets simple, efficient, and consistent. Major features 🔍 **Unified Workflow**: Unify all steps from data curation and packaging to loading, evaluation, and visualization. ⚡ **Lightweight and Easy to Use**: Simple pip/source install , one line of code for data loading , one line of code for data evaluation . 🗂️ **Multi-format and Multi-structure

Data Support**: File, LMDB, Pickle, and LeRobot datasets with flexible loading. Unified support for images, videos, 2D/3D boxes, 2D/3D points, and other structured data. 🚀 **Efficient Processing**: Optimized for speed and memory, suitable for large-scale data processing needs. ⚡ Installation GigaDatasets can be installed from PyPi and has to be installed in a virtual environment (venv or conda for instance) or you can install directly from source for the latest updates: 🚀 Usage We provide accessible demo data and Jupyter

notebooks in getting_started. Utility scripts can be found in the scripts folder. load dataset There is a simple way to load datasets using the function from the library. We provide a demo dataset in the directory for you to try out. Here is a quick example, and the full code is available here: The directory contains the following structure: The file in the directory contains the following structure: This file specifies: \_class_name: Indicates the class type used for

the dataset, which is Dataset in this case. config_paths: Lists paths to additional configuration files for specific components of the dataset, such as labels/config. package dataset For an unstructured dataset, you can use the Writer classes (including , and to package your data into a structured format. Below is an example of how to package a dataset consisting of images and labels. The directory contains the following structure: You can run the following python code to package the dataset

, the full code is available here: We supports packaging and reading different data formats. In addition to packaging images, we also provide an example of packaging video data, where we store the video's metadata. add new field In models' training or inference, a sample is often represented as a dictionary with multiple fields. Our framework is designed to be easily extensible to accommodate new data fields. 🤝 Contributing We welcome contributions! Please see our Contributing Guide for details. 📄 License This project

is licensed under the Apache License 2.

Frequently asked questions

How many stars and forks are recorded?

open-gigaai/giga-datasets has 643 stars and 76 forks.

What is the repository rank?

open-gigaai/giga-datasets is ranked 15,620.

What language and category are recorded?

open-gigaai/giga-datasets has 643 stars, uses Python and belongs to Model Development.

Which repository is closest in rank?

open-gigaai/giga-datasets is compared with autonomousvision/shape_as_points, ranked 15,616 with 643 stars.

README

A Unified and Lightweight Framework for Data Curation, Evaluation and Visualization

| [Quick Start](#-installation)
| [Contributing](#-contributing)
| [License](#-license)
| [Citation](#-citation) |

✨ Introduction

GigaDatasets is a unified and lightweight framework for data curation, evaluation and visualization. Designed to make handling massive datasets simple, efficient, and consistent.

Major features

  • 🔍 Unified Workflow: Unify all steps from data curation and packaging to loading, evaluation, and visualization.
  • ⚡ Lightweight and Easy to Use: Simple pip/source install pip3 install giga-datasets, one line of code for data loading dataset = load_dataset(data_path), one line of code for data evaluation eval_results = FIDEvaluator(datasets)(pred_results).
  • 🗂️ Multi-format and Multi-structure Data Support: File, LMDB, Pickle, and LeRobot datasets with flexible loading. Unified support for images, videos, 2D/3D boxes, 2D/3D points, and other structured data.
  • 🚀 Efficient Processing: Optimized for speed and memory, suitable for large-scale data processing needs.

⚡ Installation

GigaDatasets can be installed from PyPi and has to be installed in a virtual environment (venv or conda for instance)

pip3 install giga-datasets

or you can install directly from source for the latest updates:

conda create -n giga_datasets python=3.11.10
conda activate giga_datasets
git clone https://github.com/open-gigaai/giga-datasets.git
cd giga-datasets
pip3 install -e .

🚀 Usage

We provide accessible demo data and Jupyter notebooks in getting_started. Utility scripts can be found in the scripts folder.

1. load dataset

There is a simple way to load datasets using the load_dataset function from the giga_datasets library. We provide a demo dataset in the giga_data directory for you to try out. Here is a quick example, and the full code is available here:

from giga_datasets import load_dataset

dataset = load_dataset('./getting_started/giga_data')
data_dict = dataset[0]
print('Dataset size:', len(dataset))
print('First item in dataset:', data_dict)

The giga_data directory contains the following structure:

giga_data/
├── config.json          # Configuration file describing the dataset
├── labels/              # Directory containing label files
│   ├── config.json      # Additional configuration for labels
│   ├── data.pkl         # Serialized label data
├── images/              # Directory containing image files
│   ├──config.json       # Additional configuration for images
│   ├──data.mdb          # Lmdb format for images
├   ├──lock.mdb

The config.json file in the giga_data directory contains the following structure:

{
    "_class_name": "Dataset",
    "config_paths": [
        "labels/config.json",
        "images/config.json"
    ]
}

This file specifies:

  • _class_name: Indicates the class type used for the dataset, which is Dataset in this case.
  • config_paths: Lists paths to additional configuration files for specific components of the dataset, such as labels/config.json and images/config.json.

2. package dataset

For an unstructured dataset, you can use the Writer classes (including PklWriter, FileWriter and LmdbWriter to package your data into a structured format. Below is an example of how to package a dataset consisting of images and labels.

The raw_data directory contains the following structure:

raw_data/
├── 0.json               # Annotation file for image 0
├── 0.png                # Image file 0
├── 1.json               # Annotation file for image 1
├── 1.png                # Image file 1
├── ...

You can run the following python code to package the dataset, the full code is available here:

image_paths = utils.list_dir(image_dir, recursive=True, exts=['.png', '.jpg', '.jpeg'])
label_writer = PklWriter(os.path.join(save_dir, 'labels'))
image_writer = LmdbWriter(os.path.join(save_dir, 'images'))
for idx in tqdm(range(len(image_paths))):
    label_path = image_paths[idx].replace('.png', '.json')
    label_dict = json.load(open(label_path))
    label_dict['data_index'] = idx
    label_writer.write_dict(label_dict)
    image_writer.write_image(idx, image_paths[idx])
label_writer.write_config()
image_writer.write_config()
label_writer.close()
image_writer.close()
label_dataset = load_dataset(os.path.join(save_dir, 'labels'))
image_dataset = load_dataset(os.path.join(save_dir, 'images'))
dataset = Dataset([label_dataset, image_dataset])
dataset.save(save_dir)

We supports packaging and reading different data formats. In addition to packaging images, we also provide an example of packaging video data, where we store the video's metadata.

# package video samples in the input directory to the output directory
python getting_started/pack_videos.py --video_dir /path/to/your/raw_videos --save_dir ./giga_videos

# if you want to package videos into lmdb format for better read performance
python getting_started/pack_videos.py --video_dir /path/to/your/raw_videos --save_dir ./giga_videos --pack-lmdb

# if you want to package samples, but not copy the video files and only store the metadata and absolute paths
python getting_started/pack_videos.py --video_dir /path/to/your/raw_videos --save_dir ./giga_videos --only_path

3. add new field

In models' training or inference, a sample is often represented as a dictionary with multiple fields. Our framework is designed to be easily extensible to accommodate new data fields. Below is an example of how to add canny maps as a new field:

python getting_started/add_new_filed.py --data_dir getting_started/giga_data

Additional Usage Examples

Note: More usage examples and feature documentation will be added in future updates—stay tuned!

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details.

📄 License

This project is licensed under the Apache License 2.0 - see the LICENSE file for details.

📖 Citation

@misc{gigaai2025gigadatasets,
    author = {GigaAI},
    title = {GigaDatasets: A Unified and Lightweight Framework for Data Curation, Evaluation and Visualization},
    year = {2025},
    publisher = {GitHub},
    journal = {GitHub repository},
    howpublished = {\url{https://github.com/open-gigaai/giga-datasets}}
}
Nearby in the ranking
Similar items