Added instructions on building stand-alone Mac OS X binary
- Build occurs inside a virtualenv - Added new icon - Updated README.md and Icon GPL Attribution
This commit is contained in:
parent
8d1bd68ab6
commit
f48e13ad5f
18
README.rst
18
README.rst
@ -84,6 +84,22 @@ Python 3 + Qt5 (Works on macOS High Sierra)
|
||||
python labelImg.py
|
||||
python labelImg.py [IMAGE_PATH] [PRE-DEFINED CLASS FILE]
|
||||
|
||||
*NEW* Python 3 Virtualenv + Binary
|
||||
This avoids a lot of the QT / Python version issues,
|
||||
and gives you a nice .app file with a new SVG Icon
|
||||
in your /Applications folder.
|
||||
|
||||
.. code::
|
||||
|
||||
brew install python3
|
||||
pip install pipenv
|
||||
pipenv --three
|
||||
pipenv shell
|
||||
pip install pyqt5 lxml
|
||||
make qt5py3
|
||||
rm -rf build dist
|
||||
python setup.py py2app
|
||||
cp -rf dist/labelImg.app /Applications
|
||||
|
||||
Windows
|
||||
^^^^^^^
|
||||
@ -239,3 +255,5 @@ Related
|
||||
download image, create a label text for machine learning, etc
|
||||
2. `Use Docker to run labelImg <https://hub.docker.com/r/tzutalin/py2qt4>`__
|
||||
3. `Generating the PASCAL VOC TFRecord files <https://github.com/tensorflow/models/blob/4f32535fe7040bb1e429ad0e3c948a492a89482d/research/object_detection/g3doc/preparing_inputs.md#generating-the-pascal-voc-tfrecord-files>`__
|
||||
4. `App Icon based on Icon by Nick Roach (GPL)` <https://www.elegantthemes.com/> <https://www.iconfinder.com/icons/1054978/shop_tag_icon> __
|
||||
|
||||
|
||||
BIN
icons/app.icns
Normal file
BIN
icons/app.icns
Normal file
Binary file not shown.
BIN
icons/app.png
Normal file
BIN
icons/app.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 30 KiB |
19
icons/app.svg
Normal file
19
icons/app.svg
Normal file
@ -0,0 +1,19 @@
|
||||
<svg width="64" height="64" xmlns="http://www.w3.org/2000/svg">
|
||||
<defs>
|
||||
<filter id="svg_10_blur">
|
||||
<feGaussianBlur stdDeviation="0" in="SourceGraphic"/>
|
||||
</filter>
|
||||
</defs>
|
||||
<g>
|
||||
<title>background</title>
|
||||
<rect fill="none" id="canvas_background" height="402" width="582" y="-1" x="-1"/>
|
||||
</g>
|
||||
<g>
|
||||
<title>Layer 1</title>
|
||||
<g stroke="null" id="svg_19">
|
||||
<path stroke="null" opacity="0.2" id="svg_5" fill="#231F20" d="m58.941458,5.713441c-0.033833,0 -0.067666,0 -0.103037,0c-0.030757,0 -0.056901,-0.003076 -0.087658,0l-23.846159,0c-0.579776,0.026144 -1.900803,0.933485 -2.071506,1.104188l-27.895362,27.904589c-1.479428,1.479428 -1.479428,3.878499 0,5.357927l21.41633,21.425557c0.744327,0.739714 1.711645,1.107264 2.678964,1.107264c0.967318,0 1.937712,-0.36755 2.677426,-1.107264l27.893824,-27.904589c0.170703,-0.170703 1.122643,-1.342558 1.122643,-2.071506l0,-23.933817c0.053825,-1.058052 -0.747403,-1.882349 -1.785463,-1.882349zm-5.900794,10.763528c-1.697805,0 -3.075733,-1.377928 -3.075733,-3.075733s1.377928,-3.075733 3.075733,-3.075733s3.075733,1.377928 3.075733,3.075733s-1.377928,3.075733 -3.075733,3.075733z"/>
|
||||
<path stroke="#00bf00" id="svg_8" fill="#2e6fd1" d="m58.941458,2.637708c-0.033833,0 -0.067666,0 -0.103037,0c-0.030757,0 -0.056901,-0.003076 -0.087658,0l-23.846159,0c-0.579776,0.026144 -1.900803,0.933485 -2.071506,1.104188l-27.895362,27.904589c-1.479428,1.479428 -1.479428,3.878499 0,5.357927l21.41633,21.425557c0.744327,0.739714 1.711645,1.107264 2.678964,1.107264c0.967318,0 1.937712,-0.36755 2.677426,-1.107264l27.893824,-27.904589c0.170703,-0.170703 1.122643,-1.342558 1.122643,-2.071506l0,-23.933817c0.053825,-1.058052 -0.747403,-1.882349 -1.785463,-1.882349zm-5.900794,10.763528c-1.697805,0 -3.075733,-1.377928 -3.075733,-3.075733s1.377928,-3.075733 3.075733,-3.075733s3.075733,1.377928 3.075733,3.075733s-1.377928,3.075733 -3.075733,3.075733z"/>
|
||||
<text filter="url(#svg_10_blur)" stroke="#000000" transform="matrix(0.5447929800652447,-0.5343019017094763,0.5343019017094763,0.5447929800652447,-3.424396520826477,36.238999138928264) " font-weight="bold" xml:space="preserve" text-anchor="start" font-family="Oswald, sans-serif" font-size="24" id="svg_10" y="36.27526" x="14.460123" stroke-width="0" fill="#ffffff">VOC</text>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.2 KiB |
@ -2,7 +2,7 @@
|
||||
<qresource>
|
||||
|
||||
<file alias="help">icons/help.png</file>
|
||||
<file alias="app">icons/expert2.png</file>
|
||||
<file alias="app">icons/app.png</file>
|
||||
<file alias="expert">icons/expert2.png</file>
|
||||
<file alias="done">icons/done.png</file>
|
||||
<file alias="file">icons/file.png</file>
|
||||
|
||||
11
setup.py
11
setup.py
@ -17,7 +17,14 @@ requirements = [
|
||||
required_packages = find_packages()
|
||||
required_packages.append('labelImg')
|
||||
|
||||
APP = ['labelImg.py']
|
||||
OPTIONS = {
|
||||
'argv_emulation': True,
|
||||
'iconfile': 'icons/app.icns'
|
||||
}
|
||||
|
||||
setup(
|
||||
app=APP,
|
||||
name='labelImg',
|
||||
version=__version__,
|
||||
description="LabelImg is a graphical image annotation tool and label object bounding boxes in images",
|
||||
@ -51,5 +58,7 @@ setup(
|
||||
'Programming Language :: Python :: 3.5',
|
||||
'Programming Language :: Python :: 3.6',
|
||||
],
|
||||
package_data={'data/predefined_classes.txt': ['data/predefined_classes.txt']}
|
||||
package_data={'data/predefined_classes.txt': ['data/predefined_classes.txt']},
|
||||
options={'py2app': OPTIONS},
|
||||
setup_requires=['py2app']
|
||||
)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user