developer0hye / Yolo_Label

GUI for marking bounded boxes of objects in images for training neural network YOLO

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

YOLO-Label

Sponsors

WHAT IS THIS?!

Reinventing The Wheel?!!!!

1_hfyjxxcfingbcyzcgksaiq

In the world, there are many good image-labeling tools for object detection. -e.g. , (Yolo_mark, BBox-Label-Tool, labelImg).

But... I've reinvented one...

WHY DID YOU REINVENT THE WHEEL? ARE YOU STUPID?

When I used the pre-existing programs to annotate a training set for YOLO V3, I was sooooooooooo bored...

So I thought why it is so boring??

And I found an answer.

The answer is that pre-existing programs are not sensitive.

So I decided to make a sensitive image-labeling tool for object detection.

SHOW ME YOUR SENSITIVE IMAGE-LABELING TOOL!!

It's the SENSITIVE image-labeling tool for object detection!

image

YoloLabel.2023-01-10.22-06-06.mp4

cut (2)

HMM... I SAW THIS DESIGN SOMEWHERE

I refer to the website of Joseph Redmon who invented the YOLO.

redmon2

TUTORIAL / USAGE

Install and Run

  1. Download this project

For Windows

  1. Download YOLOLabel_v1.2.1.zip

  2. Unzip

  3. Run YoloLabel.exe

image

For Ubuntu 22.04

  1. Download YOLOLabel_v1.2.1.tar

  2. Unzip and download libraries

tar -xvf YoloLabel_v1.2.1.tar
sudo apt update
sudo apt-get install -y libgl1-mesa-dev
sudo apt-get install libxcb-*
sudo apt-get install libxkb*
  1. Run YoloLabel.sh
./YoloLabel.sh

image

For macOS

  1. Clone or download the source code of this repository

  2. Open terminal and type command in the downloaded directory.

yourMacOS:Yolo_Label you$ qmake
yourMacOS:Yolo_Label you$ make
  1. Run YoloLabel.app/Contents/MacOS/YoloLabel in terminal or double click YoloLabel.app to run
yourMacOS:Yolo_Label you$ ./YoloLabel.app/MacOS/YoloLabel

Prepare Custom Dataset and Load

  1. Put your .jpg, .png -images into a directory (In this tutorial I will use the Kangarooo and the Raccoon Images. These images are in the 'Samples' folder.)

dataset

  1. Put the names of the objects, each name on a separate line and save the file( .txt, .names).

objnames

  1. Run Yolo Label!

image

  1. Click the button 'Open Files' and open the folder with the images and the file(''.names or ''.txt) with the names of the objects.

image

  1. And... Label!... Welcome to Hell... I really hate this work in the world.

This program has adopted a different labeling method from other programs that adopt "drag and drop" method.

To minimize wrist strain when labeling, I adopted the method "twice left button click" method more convenient than

"drag and drop" method.

drag and drop

draganddrop

twice left button click

twiceleftbuttonclickmethod

ezgif-5-805073516651

  1. End

endimage

SHORTCUTS

Key Action
A Save and Prev Image
D, Space Save and Next Image
S Next Label
ezgif-5-f7ee77cd24c3
W Prev Label
ezgif-5-ee915c66dad8
O Open Files
V Visualize Calss Name
Ctrl + S Save
Ctrl + C Delete all existing bounding boxes in the image
Ctrl + D Delete current image
Mouse Action
Right Click Delete Focused Bounding Box in the image
ezgif-5-8d0fb51bec75
Wheel Down Save and Next Image
Wheel Up Save and Prev Image

Button Events

Remove

It was replaced by the shortcut Ctrl + D.

ezgif-2-90fb8205437e

ETC

You can access all image by moving horizontal slider bar. But when you control horizontal slider bar, the last processed image will not be saved automatically. So if you want not to lose your work, you should save before moving the horizontal slider bar.

ezgif-5-53abf38b3387

CONCLUSIONS

I've reinvented the wheel.

dont-reinvent-the-wheel

TO DO LISTS

Upload binary file for easy usage for windows and ubuntu

deployment for ubuntu

Image zoom

About

GUI for marking bounded boxes of objects in images for training neural network YOLO

License:MIT License


Languages

Language:C++ 96.2%Language:QMake 3.8%