https://github.com/farhad-here/image-dataset-splitter
A simple Streamlit app that splits a zipped image dataset into train, validation, and test folders automatically.
https://github.com/farhad-here/image-dataset-splitter
deep-learning io os python random shutil streamlit zipfile
Last synced: 14 days ago
JSON representation
A simple Streamlit app that splits a zipped image dataset into train, validation, and test folders automatically.
- Host: GitHub
- URL: https://github.com/farhad-here/image-dataset-splitter
- Owner: farhad-here
- License: mit
- Created: 2025-05-13T12:33:05.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-05-29T07:46:03.000Z (12 months ago)
- Last Synced: 2025-05-29T08:57:27.895Z (12 months ago)
- Topics: deep-learning, io, os, python, random, shutil, streamlit, zipfile
- Language: Python
- Homepage: https://image-dataset-splitter.streamlit.app/
- Size: 11.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ๐ Image Dataset Splitter
This Streamlit app allows you to split any labeled image dataset into `train`, `validation`, and `test` sets โ all with a single click. Simply upload a `.zip` file where each folder represents a class, and the app will generate a downloadable zip with the organized dataset structure.
---
## ๐ Features
โ
Upload a `.zip` file with folders of images (each folder is treated as a class)
โ
Automatically split into `train`, `val`, and `test` folders
โ
Random shuffling of images for fair distribution
โ
Download the final dataset as a ready-to-use `.zip`
โ
Clean UI with Streamlit
---
## ๐ Expected Input Format
Your input `.zip` file should be structured like this:
Each folder is interpreted as a separate class label.
---
## ๐งพ Output Format
After splitting, the app generates a `.zip` file like this:
---
## โ๏ธ Configuration
You can modify the train/val/test split ratios by editing this line in `app.py`:
```python
SPLIT_RATIO = (0.7, 0.15, 0.15)
git clone https://github.com/your-username/image-dataset-splitter.git
cd image-dataset-splitter
```
```python
pip install streamlit
streamlit run app.py
```
---
๐ Use Cases
- Preparing image datasets for machine learning / deep learning
- Organizing animal or object classification datasets
- Creating train/val/test splits without writing custom scripts