CoolFace
Datasetpublic

Alabi-Ayobami/rubiks-cube-obb

Rubik's Cube Oriented Bounding Box Detection A dataset of 148 images (143 train / 5 val) of Rubik's cubes annotated with oriented bounding boxes (OBB) for color and face detection. Classes ID Name 0 Blue 1 Green 2 Orange 3 Red 4 White 5 Yellow 6 cube_face 7 side_face Note: class 7 (side_face) is effectively unused (only 1 instance in training). Annotation Format Each image has a corresponding list of objects. Each… See the full description on the dataset page: https://huggingface.co/datasets/Alabi-Ayobami/rubiks-cube-obb.

sourceHugging Facemitupdated 2mo agoView on Hugging Face
0likes32downloads
Dataset Card

Rubik's Cube Oriented Bounding Box Detection

A dataset of 148 images (143 train / 5 val) of Rubik's cubes annotated with oriented bounding boxes (OBB) for color and face detection.

Classes

IDName
0Blue
1Green
2Orange
3Red
4White
5Yellow
6cube_face
7side_face

Note: class 7 (side_face) is effectively unused (only 1 instance in training).

Annotation Format

Each image has a corresponding list of objects. Each object is defined by:

  • category_id — integer class label (0–7)
  • bbox — 8 normalized floats [x1, y1, x2, y2, x3, y3, x4, y4] representing the four corner points of an oriented (rotated) bounding box. All coordinates are normalized to [0, 1] relative to image width and height.

Dataset Structure

  • train: 143 images, 1,706 annotated objects
  • val: 5 images, 40 annotated objects

⚠️ The validation set is extremely small and shares scenery with training data. Evaluate with caution.

Usage

python
from datasets import load_dataset

ds = load_dataset("Alabi-Ayobami/rubiks-cube-obb")

# Access an image and its objects
example = ds["train"][0]
image = example["image"]              # PIL Image
cats = example["objects_category_id"]  # list[int]
bboxes = example["objects_bbox"]       # list[list[float]]  — each inner list has 8 floats

Model

A YOLOv8n-OBB model trained on this dataset achieved ~0.95 mAP@50.