All Projects → WangRongsheng → make-your-yolov5_dataset

WangRongsheng / make-your-yolov5_dataset

Licence: other
💥Make your yolov5 dataset by using labelimg.I hope my work can help you make your yolov5 datasets more quickly.

Programming Languages

python
139335 projects - #7 most used programming language
Batchfile
5799 projects

Projects that are alternatives of or similar to make-your-yolov5 dataset

etiketai
Etiketai is an online tool designed to label images, useful for training AI models
Stars: ✭ 63 (+5%)
Mutual labels:  yolo, labelimg
realtime-object-detection
Detects objects in images/streaming video
Stars: ✭ 16 (-73.33%)
Mutual labels:  yolo, yolov5
YOLOv4MLNet
Use the YOLO v4 and v5 (ONNX) models for object detection in C# using ML.Net
Stars: ✭ 61 (+1.67%)
Mutual labels:  yolo, yolov5
simpleAICV-pytorch-ImageNet-COCO-training
SimpleAICV:pytorch training example on ImageNet(ILSVRC2012)/COCO2017/VOC2007+2012 datasets.Include ResNet/DarkNet/RetinaNet/FCOS/CenterNet/TTFNet/YOLOv3/YOLOv4/YOLOv5/YOLOX.
Stars: ✭ 276 (+360%)
Mutual labels:  voc, yolov5
Vehicle-Detection
Vehicle Detection Using Deep Learning and YOLO Algorithm
Stars: ✭ 96 (+60%)
Mutual labels:  yolo, yolov5
YOLOX deepsort tracker
using yolox+deepsort for object-tracking
Stars: ✭ 228 (+280%)
Mutual labels:  yolo, yolov5
TNN Demo
🍉 移动端TNN部署学习笔记,支持Android与iOS。
Stars: ✭ 51 (-15%)
Mutual labels:  yolo, yolov5
Custom-Object-Detection-using-Darkflow
Make custom objects dataset and detect them using darkflow. Darkflow is a tensorflow translation of Darknet.
Stars: ✭ 21 (-65%)
Mutual labels:  yolo, labelimg
Yolov5
YOLOv5 🚀 in PyTorch > ONNX > CoreML > TFLite
Stars: ✭ 19,914 (+33090%)
Mutual labels:  yolo, yolov5
Yolov3
YOLOv3 in PyTorch > ONNX > CoreML > TFLite
Stars: ✭ 8,159 (+13498.33%)
Mutual labels:  yolo, yolov5
ros-yolo-sort
YOLO v3, v4, v5, v6, v7 + SORT tracking + ROS platform. Supporting: YOLO with Darknet, OpenCV(DNN), OpenVINO, TensorRT(tkDNN). SORT supports python(original) and C++. (Not Deep SORT)
Stars: ✭ 162 (+170%)
Mutual labels:  yolo, yolov5
food-detection-yolov5
🍔🍟🍗 Food analysis baseline with Theseus. Integrate object detection, image classification and multi-class semantic segmentation. 🍞🍖🍕
Stars: ✭ 68 (+13.33%)
Mutual labels:  yolo, yolov5
JSON2YOLO
Convert JSON annotations into YOLO format.
Stars: ✭ 222 (+270%)
Mutual labels:  yolo, yolov5
yolov5 cpp openvino
用c++实现了yolov5使用openvino的部署
Stars: ✭ 222 (+270%)
Mutual labels:  yolov5
dofbot-jetson nano
Yahboom DOFBOT AI Vision Robotic Arm with ROS for Jetson NANO 4GB B01
Stars: ✭ 24 (-60%)
Mutual labels:  yolov5
pytorch yolov1
Yolov1 pytorch implement
Stars: ✭ 49 (-18.33%)
Mutual labels:  yolo
YOLO.jl
YOLO Object Detection in Julia
Stars: ✭ 41 (-31.67%)
Mutual labels:  yolo
datumaro
Dataset Management Framework, a Python library and a CLI tool to build, analyze and manage Computer Vision datasets.
Stars: ✭ 274 (+356.67%)
Mutual labels:  yolo
darknet.js
A NodeJS wrapper of pjreddie's darknet / yolo.
Stars: ✭ 61 (+1.67%)
Mutual labels:  yolo
tfjs-yolo
YOLO v3 and Tiny YOLO v1, v2, v3 with Tensorflow.js
Stars: ✭ 108 (+80%)
Mutual labels:  yolo

💥💥💥重大更新💥💥💥:最新版本的全面标注工具集KDAT发布!!!👉前往

数据集标注软件

更多的标注工具你可以去看:深度学习图像标注工具汇总十个最常用深度学习图像/视频数据标注工具百度一下

在这里我选择使用labelImg

数据集大小重置工具:Image_tool.exe 百度网盘下载(提取码:2tmv)

数据集标注

  1. 下载labelImg
  2. 解压,直接打开labelimg.exe
  3. labelImg标注数据

标注完成后即可获得VOC格式(生成.xml文件)的数据

dataset
│
├─Annotations
│      train_29635.xml
│      train_29641.xml
│      train_30090.xml
│	   ...
│
└─JPEGImages
        train_29635.jpg
        train_29641.jpg
        train_30090.jpg
        ...

yolov5数据集制作

0、数据图片重命名

对于rename.bat

命名从01开始,设置
set count=100

命名从0001开始,设置
set count=10000

如果我们想要从038开始排序,可以将第三行代码:
set count=10037

1.voc格式数据集转化yolov5格式数据集

运行voc_to_yoloV5.py【该脚本实现将voc格式的数据转化为yoloV5需要的.txt标注文件,运行该脚本,会在dataset/voc/目录下生成 worktxt/目录(yolo需要的格式)】

运行代码之前,修改里面相关文件路径。

dataset
│
├─Annotations
│      train_29635.xml
│      train_29641.xml
│      train_30090.xml
│	   ...
│
├─JPEGImages
│       train_29635.jpg
│       train_29641.jpg
│       train_30090.jpg
│       ...
│
└─worktxt
       train_29635.txt
       train_29641.txt
       train_30090.txt
 	   ...

2.数据集划分训练、测试、验证

运行voc_split_trainValTest.py【该脚本用于生成voc/目录下的ImageSets/..目录,分割了训练和验证集】

dataset
│
├─Annotations
│      train_29635.xml
│      train_29641.xml
│      train_30090.xml
│	   ...
│
├─ImageSets
│	└─Main
│      train.txt
│      test.txt
│      valid.txt
│      img_train.txt
│      img_test.txt
│      img_valid.txt
│
├─JPEGImages
│       train_29635.jpg
│       train_29641.jpg
│       train_30090.jpg
│       ...
│
└─worktxt
       train_29635.txt
       train_29641.txt
       train_30090.txt
 	   ...

3.重构数据集

运行dataset_cg.py【该脚本将会生成yolov5可以训练的数据布局】

主要进行一个copy或者move的操作:

# 小数据建议:copy 大数据建议:move
for i in range(len(img_txt_cg_train)):
    shutil.copy(fimg+str(img_txt_cg_train[i]),new_dataset_train)
    shutil.copy(flable+str(label_txt_cg_train[i]),new_dataset_trainl)
for j in range(len(img_txt_cg_test)):
    shutil.copy(fimg+str(img_txt_cg_test[j]),new_dataset_test)
    shutil.copy(flable+str(label_txt_cg_test[j]),new_dataset_testl)
for q in range(len(img_txt_cg_valid)):
    shutil.copy(fimg+str(img_txt_cg_valid[q]),new_dataset_valid)
    shutil.copy(flable+str(label_txt_cg_valid[q]),new_dataset_validl)
dataset
│
├─Annotations
│      train_29635.xml
│      train_29641.xml
│      train_30090.xml
│	   ...
│
├─ImageSets
│	└─Main
│      train.txt
│      test.txt
│      valid.txt
│      img_train.txt
│      img_test.txt
│      img_valid.txt
│
├─data
│   ├─train
│   ├─test
│   └─valid
│
├─JPEGImages
│       train_29635.jpg
│       train_29641.jpg
│       train_30090.jpg
│       ...
│
└─worktxt
       train_29635.txt
       train_29641.txt
       train_30090.txt
 	   ...

4.开始利用yolov5训练你的数据

git clone https://github.com/ultralytics/yolov5.git

5.txt格式数据回改成voc格式

修改yolo2voc.py文件中第6,7,8,10行相应内容即可得到VOC数据

参考

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].