提交 fbbdbc3a 编写于 作者: qq_25193841's avatar qq_25193841

Merge remote-tracking branch 'origin/dygraph' into dygraph

...@@ -35,6 +35,7 @@ import numpy as np ...@@ -35,6 +35,7 @@ import numpy as np
sys.path.append(__dir__) sys.path.append(__dir__)
sys.path.append(os.path.abspath(os.path.join(__dir__, '../..'))) sys.path.append(os.path.abspath(os.path.join(__dir__, '../..')))
sys.path.append(os.path.abspath(os.path.join(__dir__, '../PaddleOCR')))
sys.path.append("..") sys.path.append("..")
from paddleocr import PaddleOCR from paddleocr import PaddleOCR
...@@ -390,7 +391,7 @@ class MainWindow(QMainWindow, WindowMixin): ...@@ -390,7 +391,7 @@ class MainWindow(QMainWindow, WindowMixin):
'Ctrl+J', 'edit', u'Move and edit Boxs', enabled=False) 'Ctrl+J', 'edit', u'Move and edit Boxs', enabled=False)
create = action(getStr('crtBox'), self.createShape, create = action(getStr('crtBox'), self.createShape,
'w', 'new', getStr('crtBoxDetail'), enabled=False) 'w', 'objects', getStr('crtBoxDetail'), enabled=False)
delete = action(getStr('delBox'), self.deleteSelectedShape, delete = action(getStr('delBox'), self.deleteSelectedShape,
'backspace', 'delete', getStr('delBoxDetail'), enabled=False) 'backspace', 'delete', getStr('delBoxDetail'), enabled=False)
......
...@@ -19,6 +19,9 @@ import sys ...@@ -19,6 +19,9 @@ import sys
import locale import locale
from libs.ustr import ustr from libs.ustr import ustr
__dir__ = os.path.dirname(os.path.abspath(__file__)) # 获取本程序文件路径
__dirpath__ = os.path.abspath(os.path.join(__dir__, '../resources/strings'))
try: try:
from PyQt5.QtCore import * from PyQt5.QtCore import *
except ImportError: except ImportError:
...@@ -57,14 +60,15 @@ class StringBundle: ...@@ -57,14 +60,15 @@ class StringBundle:
def __createLookupFallbackList(self, localeStr): def __createLookupFallbackList(self, localeStr):
resultPaths = [] resultPaths = []
basePath = ":/strings" basePath = "\strings"
resultPaths.append(basePath) resultPaths.append(basePath)
if localeStr is not None: if localeStr is not None:
# Don't follow standard BCP47. Simple fallback # Don't follow standard BCP47. Simple fallback
tags = re.split('[^a-zA-Z]', localeStr) tags = re.split('[^a-zA-Z]', localeStr)
for tag in tags: for tag in tags:
lastPath = resultPaths[-1] lastPath = resultPaths[-1]
resultPaths.append(lastPath + '-' + tag) resultPaths[-1] = lastPath + '-' + tag
resultPaths[-1] = __dirpath__ + resultPaths[-1] + ".properties"
return resultPaths return resultPaths
......
...@@ -17,6 +17,10 @@ import re ...@@ -17,6 +17,10 @@ import re
import sys import sys
import cv2 import cv2
import numpy as np import numpy as np
import os
__dir__ = os.path.dirname(os.path.abspath(__file__)) # 获取本程序文件路径
__iconpath__ = os.path.abspath(os.path.join(__dir__, '../resources/icons'))
try: try:
from PyQt5.QtGui import * from PyQt5.QtGui import *
...@@ -29,9 +33,9 @@ except ImportError: ...@@ -29,9 +33,9 @@ except ImportError:
def newIcon(icon, iconSize=None): def newIcon(icon, iconSize=None):
if iconSize is not None: if iconSize is not None:
return QIcon(QIcon(':/' + icon).pixmap(iconSize,iconSize)) return QIcon(QIcon(__iconpath__ + "\\" + icon + ".png").pixmap(iconSize,iconSize))
else: else:
return QIcon(':/' + icon) return QIcon(__iconpath__ + "\\" + icon + ".png")
def newButton(text, icon=None, slot=None): def newButton(text, icon=None, slot=None):
......
shapely
scikit-image==0.17.2
imgaug==0.4.0
pyclipper
lmdb
tqdm
numpy
visualdl
python-Levenshtein
opencv-contrib-python==4.2.0.32
PaddleOCR
\ No newline at end of file
# Copyright (c) <2015-Present> Tzutalin # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.
# Copyright (C) 2013 MIT, Computer Science and Artificial Intelligence Laboratory. Bryan Russell, Antonio Torralba, #
# William T. Freeman. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and # Licensed under the Apache License, Version 2.0 (the "License");
# associated documentation files (the "Software"), to deal in the Software without restriction, including without # you may not use this file except in compliance with the License.
# limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the # You may obtain a copy of the License at
# Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: #
# The above copyright notice and this permission notice shall be included in all copies or substantial portions of # http://www.apache.org/licenses/LICENSE-2.0
# the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT #
# NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT # Unless required by applicable law or agreed to in writing, software
# SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF # distributed under the License is distributed on an "AS IS" BASIS,
# CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# THE SOFTWARE. # See the License for the specific language governing permissions and
# limitations under the License.
#!/usr/bin/env python
# -*- coding: utf-8 -*- from setuptools import setup
from io import open
from setuptools import setup, find_packages, Command
from sys import platform as _platform with open('requirements.txt', encoding="utf-8-sig") as f:
from shutil import rmtree requirements = f.readlines()
import sys requirements.append('tqdm')
import os
here = os.path.abspath(os.path.dirname(__file__)) def readme():
NAME = 'labelImg' with open('README.md', encoding="utf-8-sig") as f:
REQUIRES_PYTHON = '>=3.0.0' README = f.read()
REQUIRED_DEP = ['pyqt5', 'lxml'] return README
about = {}
with open(os.path.join(here, 'libs', '__init__.py')) as f:
exec(f.read(), about)
with open('README.rst') as readme_file:
readme = readme_file.read()
with open('HISTORY.rst') as history_file:
history = history_file.read()
# OS specific settings
SET_REQUIRES = []
if _platform == "linux" or _platform == "linux2":
# linux
print('linux')
elif _platform == "darwin":
# MAC OS X
SET_REQUIRES.append('py2app')
required_packages = find_packages()
required_packages.append('labelImg')
APP = [NAME + '.py']
OPTIONS = {
'argv_emulation': True,
'iconfile': 'resources/icons/app.icns'
}
class UploadCommand(Command):
"""Support setup.py upload."""
description=readme + '\n\n' + history,
user_options = []
@staticmethod
def status(s):
"""Prints things in bold."""
print('\033[1m{0}\033[0m'.format(s))
def initialize_options(self):
pass
def finalize_options(self):
pass
def run(self):
try:
self.status('Removing previous builds…')
rmtree(os.path.join(here, 'dist'))
except OSError:
self.status('Fail to remove previous builds..')
pass
self.status('Building Source and Wheel (universal) distribution…')
os.system(
'{0} setup.py sdist bdist_wheel --universal'.format(sys.executable))
self.status('Uploading the package to PyPI via Twine…')
os.system('twine upload dist/*')
self.status('Pushing git tags…')
os.system('git tag -d v{0}'.format(about['__version__']))
os.system('git tag v{0}'.format(about['__version__']))
# os.system('git push --tags')
sys.exit()
setup( setup(
app=APP, name='PPOCRLabel',
name=NAME, packages=['PPOCRLabel'],
version=about['__version__'], package_data = {'PPOCRLabel': ['libs/*','resources/strings/*','resources/icons/*']},
description="LabelImg is a graphical image annotation tool and label object bounding boxes in images", package_dir={'PPOCRLabel': ''},
long_description=readme + '\n\n' + history,
author="TzuTa Lin",
author_email='tzu.ta.lin@gmail.com',
url='https://github.com/tzutalin/labelImg',
python_requires=REQUIRES_PYTHON,
package_dir={'labelImg': '.'},
packages=required_packages,
entry_points={
'console_scripts': [
'labelImg=labelImg.labelImg:main'
]
},
include_package_data=True, include_package_data=True,
install_requires=REQUIRED_DEP, entry_points={"console_scripts": ["PPOCRLabel= PPOCRLabel.PPOCRLabel:main"]},
license="MIT license", version='1.0.0',
zip_safe=False, install_requires=requirements,
keywords='labelImg labelTool development annotation deeplearning', license='Apache License 2.0',
description='PPOCRLabel is a semi-automatic graphic annotation tool suitable for OCR field, with built-in PPOCR model to automatically detect and re-recognize data. It is written in python3 and pyqt5, supporting rectangular box annotation and four-point annotation modes. Annotations can be directly used for the training of PPOCR detection and recognition models',
long_description=readme(),
long_description_content_type='text/markdown',
url='https://github.com/PaddlePaddle/PaddleOCR',
download_url='https://github.com/PaddlePaddle/PaddleOCR.git',
keywords=[
'ocr textdetection textrecognition paddleocr crnn east star-net rosetta ocrlite db chineseocr chinesetextdetection chinesetextrecognition'
],
classifiers=[ classifiers=[
'Development Status :: 5 - Production/Stable', 'Intended Audience :: Developers', 'Operating System :: OS Independent',
'Intended Audience :: Developers',
'License :: OSI Approved :: MIT License',
'Natural Language :: English', 'Natural Language :: English',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.3',
'Programming Language :: Python :: 3.4',
'Programming Language :: Python :: 3.5',
'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.6',
'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.7', 'Topic :: Utilities'
], ], )
package_data={'data/predefined_classes.txt': ['data/predefined_classes.txt']}, \ No newline at end of file
options={'py2app': OPTIONS},
setup_requires=SET_REQUIRES,
# $ setup.py publish support.
cmdclass={
'upload': UploadCommand,
}
)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册