jeeva0810/engineering-software-ui
Engineering Software UI Dataset Screenshots (frames) of real engineering software UIs, extracted from tutorial videos, for training a vision encoder that recognizes software interfaces across engineering domains. Contents 4 software tools (of a 1386-tool master list), 420 UI frames (~0.1 GB so far), covering 4 engineering domains. Each software is a folder: meta.json — software name, domain, category, vendor, source video id, resolution, frame counts… See the full description on the dataset page: https://huggingface.co/datasets/jeeva0810/engineering-software-ui.
Engineering Software UI Dataset
Screenshots (frames) of real engineering software UIs, extracted from tutorial videos, for training a vision encoder that recognizes software interfaces across engineering domains.
Contents
4 software tools (of a 1386-tool master list), 420 UI frames (~0.1 GB so far), covering 4 engineering domains.
Each software is a folder:
meta.json— software name, domain, category, vendor, source video id, resolution, frame countsvideo_info.json— yt-dlp extraction info (video id, channel, duration, candidates)frames/frame_*.jpg— JPEG q90 screenshots of the software UIframes/frames.jsonl— per-frame quality stats (brightness, sharpness, edge density, timestamp)
Domains
CAD/EDA/Mechanical, Data Science/ML/Analytics, Design/Graphics/3D, Video/Audio/Media
How frames were collected
- Master list of the most-used engineering software per domain (1386 tools), researched via headless-browser scraping of authoritative listicles.
- For each software, a "how to use" tutorial video is found on YouTube (4K preferred, 1080p fallback; AV1 excluded — no HW accel).
- The video is downloaded and frames sampled at 0.5 fps.
- A quality gate keeps only frames that look like a real software UI (rejects too-dark / too-bright / too-blurry / too-empty frames — intro cards, transitions, blank screens).
- Frames are pushed to HuggingFace in batches; local frames are cleaned after push to free disk.
Usage
from huggingface_hub import HfApi
api = HfApi()
files = api.list_repo_tree("jeeva0810/engineering-software-ui",
repo_type="dataset", recursive=True)Load frames/frame_*.jpg as images; use meta.json for the software label.
Notes
- 4K frames are downscaled to 1080p where the source only offers 60fps AV1 (undecodable here); 4K 30fps is used when available.
- This is a growing dataset: more software are added in batches.
