Preprocessed Stable ImageNet-1K datasets for efficient computer vision prototyping with Dlib.
This repository provides ready-to-use ImageNet-1K datasets preprocessed in multiple resolutions (32ร32 to 256ร256) for the Dlib machine learning library. Designed for rapid experimentation, benchmarking, and model training, these datasets eliminate preprocessing overhead while ensuring consistency across experiments.
๐ Immediately available:
- A ready-to-use 32ร32 resolution dataset (ideal for lightweight model prototyping) in the /dataset directory.
๐ ๏ธ Flexible generation - The included C++14 tool lets you create custom datasets in any resolution (e.g., 64ร64, 128ร128, 224ร224, etc.) from raw ImageNet-1K sources. Perfect for:
- Rapid experimentation
- Resolution-impact benchmarking
- Consistent model training pipelines
๐ง Usage - The raw "Stable ImageNet-1K" images can be downloaded from:
โ Kaggle Dataset
- Download and extract the compressed file locally
- Point the extraction root directory to our processing tool:
./create_dataset path/to/extracted_folder output_dataset.dat 224 # Example for 224x224
Compile and run the included tool to process raw ImageNet-1K images:
g++ -std=c++14 src/create_dataset.cpp -o create_dataset -ldlib -lpthread
./create_dataset path/to/imagenet_root datasets/128x128/imagenet_128.dat 128
Load pre-split training/testing sets:
std::vector<dlib::matrix<rgb_pixel>> train_images, test_images;
std::vector<unsigned long> train_labels, test_labels;
dlib::load_stable_imagenet_1k("datasets/64x64/imagenet_64.dat", train_images, train_labels, test_images, test_labels);