Tiny ImageNet-C
Overview
Tiny ImageNet-C is a corruption-benchmarked variant of Tiny ImageNet created by applying the common corruptions and perturbations introduced by Hendrycks & Dietterich (2019). The corrupted dataset is intended to evaluate model robustness to naturalistic corruptions: each image is processed with a corruption type at multiple severity levels.
Classes: 200 (same label set as Tiny ImageNet)
Corruptions: multiple corruption types (see the original ImageNet-C paper for the canonical list)
Severity levels: multiple levels (commonly 5 severity levels)
Data Structure
When accessing an example using ds[i] you will receive a dictionary with these keys:
Key |
Type |
Description |
|---|---|---|
|
|
Corrupted RGB image (64×64) |
|
int |
Class label (0-199) or string class id depending on dataset builder |
|
|
Name of the corruption applied (e.g., gaussian_noise, motion_blur) |
|
|
Severity level for the corruption (typically 1-5) |
Usage Example
from stable_datasets.images.tiny_imagenet_c import TinyImagenetC
# Loads the corrupted test split (download + prepare happens on first call)
ds = TinyImagenetC(split="test")
sample = ds[0]
print(sample.keys()) # {"image", "label", "corruption_name", "corruption_level"}
References
Hendrycks, D. and Dietterich, T. (2019). Benchmarking Neural Network Robustness to Common Corruptions and Perturbations. ICLR.
Zenodo archive: https://zenodo.org/records/2536630
Citation
@article{hendrycks2019robustness,
title={Benchmarking Neural Network Robustness to Common Corruptions and Perturbations},
author={Hendrycks, Dan and Dietterich, Thomas},
journal={Proceedings of the International Conference on Learning Representations},
year={2019}
}