You can upload a full dataset to Roboflow using the Python SDK and CLI.
The upload_dataset method lets you upload a dataset to a project that already exists within Roboflow. If you need to create a project, refer to the Create a Project documentation.
To upload a dataset using the Python SDK, use the following code:
import roboflowrf = roboflow.Roboflow(api_key=YOUR_API_KEY_HERE)# get a projectproject = rf.workspace().project("PROJECT_ID")# Upload image to datasetproject.upload_dataset( dataset_path="./dataset/", num_workers=10, dataset_format="yolov8", project_license="MIT", project_type="object-detection")
The supported dataset_format values are:
voc
yolov5
yolov8
The num_workers value allows you to set how many images should be uploaded concurrently. We recommend setting a value no greater than 25.
You can import an entire dataset from your local file system using the import subcommand. This is a way to import your pre-existing datasets or any dataset from Roboflow Universe into your Roboflow Projects.
Let’s say you download a dataset from Roboflow Universe in the COCO format. Unzip the dataset you downloaded from Roboflow Universe, and then import the project into one of your own projects by pointing the roboflow import command at the folder:
roboflow import ./Aerial\ Maritime.v24i.coco/
This will understand most common computer vision dataset formats and assign train/valid/test splits and annotation metadata to the images being uploaded.
Learn more details about this CLI command in the relevant section of our CLI docs.