# LabelImg [![Build Status](https://travis-ci.org/tzutalin/labelImg.png)](https://travis-ci.org/tzutalin/labelImg) LabelImg is a graphical image annotation tool. It is written in Python and uses Qt for its graphical interface. Annotations are saved as XML files in PASCAL VOC format, the format used by [ImageNet](http://www.image-net.org/). ![](demo/demo3.jpg) [Watch a demo video by author tzutalin](https://youtu.be/p0nR2YsCY_U) ## Get it ### Download prebuilt binaries * Windows * [Download LabelImg 1.2.1 for Windows](https://raw.githubusercontent.com/tzutalin/LabelImg/gh-pages/windows/windows_v1.2.1.zip) * [Download LabelImg 1.2 for Windows](https://raw.githubusercontent.com/tzutalin/LabelImg/gh-pages/windows/windows_v1.2.zip) * Linux * [Download LabelImg 1.2.1 for Linux](https://raw.githubusercontent.com/tzutalin/LabelImg/gh-pages/linux/linux_v1.2.1.zip) * [Download LabelImg 1.2 for Linux](https://raw.githubusercontent.com/tzutalin/LabelImg/gh-pages/linux/linux_v1.2.zip) * OS X * Binaries for OS X are not yet available. Help would be appreciated. At present it must be [built from source](#os-x). ### Build from source Linux/Ubuntu/Mac requires at least [Python 2.6](http://www.python.org/getit/) and has been tested with [PyQt 4.8](http://www.riverbankcomputing.co.uk/software/pyqt/intro). #### Ubuntu Linux sudo apt-get install pyqt4-dev-tools sudo pip install lxml make all ./labelImg.py #### OS X brew install qt qt4 brew install libxml2 make all ./labelImg.py #### Windows Download and setup [Python 2.6 or later](https://www.python.org/downloads/windows/), [PyQt4](https://www.riverbankcomputing.com/software/pyqt/download) and [install lxml](http://lxml.de/installation.html). Open cmd and go to [labelImg] pyrcc4 -o resources.py resources.qrc python labelImg.py ## Usage ### Steps 1. Build and launch using the instructions above. 2. Click 'Change default saved annotation folder' in Menu/File 3. Click 'Open Dir' 4. Click 'Create RectBox' The annotation will be saved to the folder you specify. ### Create pre-defined classes You can edit the [data/predefined_classes.txt](https://github.com/tzutalin/labelImg/blob/master/data/predefined_classes.txt) to load pre-defined classes ### Hotkeys | | | |----------|------------------------------------------| | Ctrl + r | Change the default annotation target dir | | Ctrl + s | Save | | w | Create a bounding box | | d | Next image | | a | Previous image | ### How to contribute Send a pull request ### License [License](LICENSE.md) ### Related 1. [ImageNet Utils](https://github.com/tzutalin/ImageNet_Utils) to download image, create a label text for machine learning, etc