Fix PPOCRLabel bugs, release PPOCRLabel 2.1.3 ()

* Fix PPOCRLabel bugs, release PPOCRLabel 2.1.3

Fix PPOCRLabel bugs due to the upgrade of paddleocr, release PPOCRLabel 2.1.3

* Update PPOCRLabel's requirements

Update PPOCRLabel's requirements

* Update PPOCRLabel README

Update PPOCRLabel README

* Update PPOCRLabel

Update PPOCRLabel
pull/8414/head
Evezerest 2022-11-21 20:45:24 +08:00 committed by GitHub
parent d1a3c1bc1f
commit 0dc1556699
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 15 additions and 14 deletions

View File

@ -1617,8 +1617,9 @@ class MainWindow(QMainWindow):
key_cls = 'None' if not self.kie_mode else box.get('key_cls', 'None')
shapes.append((box['transcription'], box['points'], None, key_cls, box.get('difficult', False)))
self.loadLabels(shapes)
self.canvas.verified = False
if shapes != []:
self.loadLabels(shapes)
self.canvas.verified = False
def validFilestate(self, filePath):
if filePath not in self.fileStatedict.keys():
@ -2203,7 +2204,7 @@ class MainWindow(QMainWindow):
msg = 'Can not recognise the detection box in ' + self.filePath + '. Please change manually'
QMessageBox.information(self, "Information", msg)
return
result = self.ocr.ocr(img_crop, cls=True, det=False)
result = self.ocr.ocr(img_crop, cls=True, det=False)[0]
if result[0][0] != '':
if shape.line_color == DEFAULT_LOCK_COLOR:
shape.label = result[0][0]
@ -2264,7 +2265,7 @@ class MainWindow(QMainWindow):
msg = 'Can not recognise the detection box in ' + self.filePath + '. Please change manually'
QMessageBox.information(self, "Information", msg)
return
result = self.ocr.ocr(img_crop, cls=True, det=False)
result = self.ocr.ocr(img_crop, cls=True, det=False)[0]
if result[0][0] != '':
result.insert(0, box)
print('result in reRec is ', result)
@ -2415,12 +2416,12 @@ class MainWindow(QMainWindow):
# merge the text result in the cell
texts = ''
probs = 0. # the probability of the cell is avgerage prob of every text box in the cell
bboxes = self.ocr.ocr(img_crop, det=True, rec=False, cls=False)
bboxes = self.ocr.ocr(img_crop, det=True, rec=False, cls=False)[0]
if len(bboxes) > 0:
bboxes.reverse() # top row text at first
for _bbox in bboxes:
patch = get_rotate_crop_image(img_crop, np.array(_bbox, np.float32))
rec_res = self.ocr.ocr(patch, det=False, rec=True, cls=False)
rec_res = self.ocr.ocr(patch, det=False, rec=True, cls=False)[0]
text = rec_res[0][0]
if text != '':
texts += text + ('' if text[0].isalpha() else ' ') # add space between english word

View File

@ -103,11 +103,11 @@ python PPOCRLabel.py --kie True # [KIE mode] for [detection + recognition + keyw
```
#### 1.2.3 Build and Install the Whl Package Locally
Compile and install a new whl package, where 1.0.2 is the version number, you can specify the new version in 'setup.py'.
Compile and install a new whl package, where 0.0.0 is the version number, you can specify the new version in 'setup.py'.
```bash
cd ./PPOCRLabel
python3 setup.py bdist_wheel
pip3 install dist/PPOCRLabel-2.1.2-py2.py3-none-any.whl
pip3 install dist/PPOCRLabel-0.0.0-py2.py3-none-any.whl
```

View File

@ -101,12 +101,12 @@ python PPOCRLabel.py --lang ch
#### 1.2.3 本地构建whl包并安装
编译与安装新的whl包其中1.0.2为版本号,可在 `setup.py` 中指定新版本。
编译与安装新的whl包其中0.0.0为版本号,可在 `setup.py` 中指定新版本。
```bash
cd ./PPOCRLabel
python3 setup.py bdist_wheel
pip3 install dist/PPOCRLabel-2.1.2-py2.py3-none-any.whl -i https://mirror.baidu.com/pypi/simple
pip3 install dist/PPOCRLabel-0.0.0-py2.py3-none-any.whl -i https://mirror.baidu.com/pypi/simple
```

View File

@ -40,7 +40,7 @@ class Worker(QThread):
if self.model == 'paddle':
h, w, _ = cv2.imdecode(np.fromfile(Imgpath, dtype=np.uint8), 1).shape
if h > 32 and w > 32:
self.result_dic = self.ocr.ocr(Imgpath, cls=True, det=True)
self.result_dic = self.ocr.ocr(Imgpath, cls=True, det=True)[0]
else:
print('The size of', Imgpath, 'is too small to be recognised')
self.result_dic = None

View File

@ -1,3 +1,3 @@
pyqt5
paddleocr==2.6.0.0
paddleocr
xlrd==1.2.0

View File

@ -33,10 +33,10 @@ setup(
package_dir={'PPOCRLabel': ''},
include_package_data=True,
entry_points={"console_scripts": ["PPOCRLabel= PPOCRLabel.PPOCRLabel:main"]},
version='2.1.2',
version='2.1.3',
install_requires=requirements,
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',
description='PPOCRLabelv2 is a semi-automatic graphic annotation tool suitable for OCR field, with built-in PP-OCR model to automatically detect and re-recognize data. It is written in Python3 and PyQT5, supporting rectangular box, table, irregular text and key information annotation modes. Annotations can be directly used for the training of PP-OCR detection and recognition models.',
long_description=readme(),
long_description_content_type='text/markdown',
url='https://github.com/PaddlePaddle/PaddleOCR',