Comments (16)
Hey!
I implemented that feature (#20, #347) when I was considering to work with the labelImg tool. I did however decide against using it and thus did not entirely finish a minor part of the implementation (that can most likely be omitted). The version shipped in the referenced pull request is completely functional (should however be tested).
Two minor things I did not take care of:
- I did not finish the implementation of a rectangle angle check mechanism, that checks if the rectangle angle that is to be applied leads to a valid outcome having all edges in range of the image. The mechanism I implemented does not detect some cases where the rectangle is out of range and therefore I removed it via flag.
- The rectangle coordinates are floating point now, I am not sure if that can be used for the rest of the pipelines / if that works in accordance with the output formats. In case it does not, simple conversion to
int
on export is required.
Tested only via python3.
My fork with open pull requests be found at https://github.com/juliusHuelsmann/labelImg
Quick demo
- sorry for the bad resolution
- The stuff I commented out (see 1. above) is shown last (it is possible to rotate the rectangle beyond the shape of the image because I disabled that feature)
from labelimg.
@taopanpan Hi, you want to detect rotation bounding box? I am working on it, can we work together?
from labelimg.
Hey! I completed the work done by @juliusHuelsmann and added an additional output format for the rotated bounding box (type center_x center_y width height rotation). Specifically, the work is based on the latest version of labelImg and adds a 'KITTI BEV' format writer and reader. Please check it out: labelImg-kitti 😁
from labelimg.
@taopanpan ,
Have you tried to implement it?
from labelimg.
@tzutalin I tried,but failed. can you help me?
from labelimg.
@taopanpan ,
How can I help you?
from labelimg.
@taopanpan @tzutalin
I think we can work on it together to add this very valuable extension.
Let us continue here:
tzutalin/ImageNet_Utils#7
I have prepared a segmentation tool which is very good and efficient. Then we can integrate that into this tool to make it a multi-function tool.
Then let us make the whole tool webbased which annotators do not need to install anything except a web browser :)
from labelimg.
@smajida ,
Cool. Web based tool is nice for most of the people.
from labelimg.
@ujsyehao ,
If you can add this feature, it will be helpful to others._
from labelimg.
I am trying to implement this function, But I am new in PyQt. It's so hard for me````````````
from labelimg.
@tzutalin @smajida Are rotated bounding boxes valid to use for training the tensorflow object detection api?
from labelimg.
This guy has implemented a rotated Bbox function but it does not offer a YOLO format output.
https://github.com/cgvict/roLabelImg
Similar to @fastlater , I would also like to know if rotated bounding box would affect training for YOLO?Since YOLO only requires center coordinates, width and height of the Bbox, I assume it wouldn't affect
the training right?
from labelimg.
@juliusHuelsmann wonderful job. Could you share your windows binaries?
from labelimg.
@MarStarck
I am sorry, I do not use Windows as my operating system on any of my computers and did not manage to setup a cross-compile workflow with wine (because the python3 installer always crashes).
If you are able to compile the project on windows however, making the exe
file should work straight out of the box:
If you can build the project (the link includes the patch I submitted), it suffices to (in case you have installed pip) execute the following two commands in the labelImg directory:
> pip install pyinstaller
> pyinstaller --onefile labelimg.py
after you have build the project once (with either qt5 or qt5) as described in the readme:
> pyrcc5 -o resources.py resources.qrc
> python labelImg.py
Edit:
Please be aware that it is very likely that the export function has to be adapted (I 'store' the coordinates as floating point numbers along with the rotation angle in memory, and depending on the future workflow the export output (which I did not touch at all) has to be changed), so do not start to label a lot of data before checking that everything really works out.
I did not use the patch myself because when I finished implementing it, it turned out that I did not need a labeling tool for my work anymore.
from labelimg.
@taopanpan @tzutalin
I think we can work on it together to add this very valuable extension.
Let us continue here:tzutalin/ImageNet_Utils#7
I have prepared a segmentation tool which is very good and efficient. Then we can integrate that into this tool to make it a multi-function tool.
Then let us make the whole tool webbased which annotators do not need to install anything except a web browser :)
@arasharchor
Hello, is the “webbased” completed?
from labelimg.
Hi @zexihan . I have checked the tool but some images appeared to be rotated while the source image is not.
Do you mind to pull the latest changes at the master branch from the original repository and merged.
from labelimg.
Related Issues (20)
- Open directory issue HOT 2
- Issue with Semi Automatic Classification Plugin in QGIS - Python error HOT 1
- Question: How to use 'best.pt' file trained from Google Colab on VScode?
- Crashing in Ubuntu 22.04 LTS HOT 1
- unexpected type 'float' HOT 4
- [suggestion] Some suggestions for improving the usability of the software [建議] 提高軟件易用性的一些建議
- Glib Critical Error After running labelimg.py
- Classes I wrote previously don't come as option after re-opening labelImg in PASCAL VOC format. How do I open/start where I left after closing labelImg ?
- Not able to labeling after openning LabelImg envirnment
- lib.resoures are not found
- labelImg crashing when scrolling (Windows, Python 3.10)
- Cannot install labellmg
- error HOT 1
- mac os m1 from PyQt5.QtCore import PYQT_VERSION_STR, QDir, QFile HOT 1
- How to change the box color of every class? HOT 1
- Difficult Hotkey
- How to use labelImg again for annotation with previusly annotaed some classes.
- no module named 'libs.resources'
- How to add polygon shape instead of rectangle
- Why exit and reopen the labelimg program without any issues with the annotated information, while all the newly created annotation information is lost.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from labelimg.