Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleOCR
提交
afe8ed19
P
PaddleOCR
项目概览
PaddlePaddle
/
PaddleOCR
大约 1 年 前同步成功
通知
1528
Star
32962
Fork
6643
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
108
列表
看板
标记
里程碑
合并请求
7
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleOCR
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
108
Issue
108
列表
看板
标记
里程碑
合并请求
7
合并请求
7
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
afe8ed19
编写于
11月 04, 2021
作者:
天涯古巷
提交者:
GitHub
11月 04, 2021
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'PaddlePaddle:release/2.3' into release/2.3
上级
61f3a3af
4cbb0ee8
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
5 addition
and
13 deletion
+5
-13
doc/doc_ch/inference_ppocr.md
doc/doc_ch/inference_ppocr.md
+1
-1
doc/doc_ch/recognition.md
doc/doc_ch/recognition.md
+1
-1
ppocr/losses/rec_nrtr_loss.py
ppocr/losses/rec_nrtr_loss.py
+1
-1
ppocr/postprocess/rec_postprocess.py
ppocr/postprocess/rec_postprocess.py
+0
-8
ppocr/utils/utility.py
ppocr/utils/utility.py
+2
-2
未找到文件。
doc/doc_ch/inference_ppocr.md
浏览文件 @
afe8ed19
...
@@ -20,7 +20,7 @@
...
@@ -20,7 +20,7 @@
# 下载超轻量中文检测模型:
# 下载超轻量中文检测模型:
wget https://paddleocr.bj.bcebos.com/PP-OCRv2/chinese/ch_PP-OCRv2_det_infer.tar
wget https://paddleocr.bj.bcebos.com/PP-OCRv2/chinese/ch_PP-OCRv2_det_infer.tar
tar xf ch_PP-OCRv2_det_infer.tar
tar xf ch_PP-OCRv2_det_infer.tar
python3 tools/infer/predict_det.py --image_dir="./doc/imgs/00018069.jpg" --det_model_dir="./ch_PP-OCRv2_det_infer
.tar
/"
python3 tools/infer/predict_det.py --image_dir="./doc/imgs/00018069.jpg" --det_model_dir="./ch_PP-OCRv2_det_infer/"
```
```
...
...
doc/doc_ch/recognition.md
浏览文件 @
afe8ed19
...
@@ -33,7 +33,7 @@ ln -sf <path/to/dataset> <path/to/paddle_ocr>/train_data/dataset
...
@@ -33,7 +33,7 @@ ln -sf <path/to/dataset> <path/to/paddle_ocr>/train_data/dataset
mklink /d <path/to/paddle_ocr>/train_data/dataset <path/to/dataset>
mklink /d <path/to/paddle_ocr>/train_data/dataset <path/to/dataset>
```
```
<a
name=
"
准备
数据集"
></a>
<a
name=
"
自定义
数据集"
></a>
### 1.1 自定义数据集
### 1.1 自定义数据集
下面以通用数据集为例, 介绍如何准备数据集:
下面以通用数据集为例, 介绍如何准备数据集:
...
...
ppocr/losses/rec_nrtr_loss.py
浏览文件 @
afe8ed19
...
@@ -22,7 +22,7 @@ class NRTRLoss(nn.Layer):
...
@@ -22,7 +22,7 @@ class NRTRLoss(nn.Layer):
log_prb
=
F
.
log_softmax
(
pred
,
axis
=
1
)
log_prb
=
F
.
log_softmax
(
pred
,
axis
=
1
)
non_pad_mask
=
paddle
.
not_equal
(
non_pad_mask
=
paddle
.
not_equal
(
tgt
,
paddle
.
zeros
(
tgt
,
paddle
.
zeros
(
tgt
.
shape
,
dtype
=
'int64'
))
tgt
.
shape
,
dtype
=
tgt
.
dtype
))
loss
=
-
(
one_hot
*
log_prb
).
sum
(
axis
=
1
)
loss
=
-
(
one_hot
*
log_prb
).
sum
(
axis
=
1
)
loss
=
loss
.
masked_select
(
non_pad_mask
).
mean
()
loss
=
loss
.
masked_select
(
non_pad_mask
).
mean
()
else
:
else
:
...
...
ppocr/postprocess/rec_postprocess.py
浏览文件 @
afe8ed19
...
@@ -168,14 +168,6 @@ class NRTRLabelDecode(BaseRecLabelDecode):
...
@@ -168,14 +168,6 @@ class NRTRLabelDecode(BaseRecLabelDecode):
character_type
,
use_space_char
)
character_type
,
use_space_char
)
def
__call__
(
self
,
preds
,
label
=
None
,
*
args
,
**
kwargs
):
def
__call__
(
self
,
preds
,
label
=
None
,
*
args
,
**
kwargs
):
if
preds
.
dtype
==
paddle
.
int64
:
if
isinstance
(
preds
,
paddle
.
Tensor
):
preds
=
preds
.
numpy
()
if
preds
[
0
][
0
]
==
2
:
preds_idx
=
preds
[:,
1
:]
else
:
preds_idx
=
preds
if
len
(
preds
)
==
2
:
if
len
(
preds
)
==
2
:
preds_id
=
preds
[
0
]
preds_id
=
preds
[
0
]
preds_prob
=
preds
[
1
]
preds_prob
=
preds
[
1
]
...
...
ppocr/utils/utility.py
浏览文件 @
afe8ed19
...
@@ -51,7 +51,7 @@ def get_image_file_list(img_file):
...
@@ -51,7 +51,7 @@ def get_image_file_list(img_file):
if
img_file
is
None
or
not
os
.
path
.
exists
(
img_file
):
if
img_file
is
None
or
not
os
.
path
.
exists
(
img_file
):
raise
Exception
(
"not found any img file in {}"
.
format
(
img_file
))
raise
Exception
(
"not found any img file in {}"
.
format
(
img_file
))
img_end
=
{
'jpg'
,
'bmp'
,
'png'
,
'jpeg'
,
'rgb'
,
'tif'
,
'tiff'
,
'gif'
,
'GIF'
}
img_end
=
{
'jpg'
,
'bmp'
,
'png'
,
'jpeg'
,
'rgb'
,
'tif'
,
'tiff'
,
'gif'
,
'GIF'
,
'webp'
,
'ppm'
}
if
os
.
path
.
isfile
(
img_file
)
and
imghdr
.
what
(
img_file
)
in
img_end
:
if
os
.
path
.
isfile
(
img_file
)
and
imghdr
.
what
(
img_file
)
in
img_end
:
imgs_lists
.
append
(
img_file
)
imgs_lists
.
append
(
img_file
)
elif
os
.
path
.
isdir
(
img_file
):
elif
os
.
path
.
isdir
(
img_file
):
...
@@ -77,4 +77,4 @@ def check_and_read_gif(img_path):
...
@@ -77,4 +77,4 @@ def check_and_read_gif(img_path):
frame
=
cv2
.
cvtColor
(
frame
,
cv2
.
COLOR_GRAY2RGB
)
frame
=
cv2
.
cvtColor
(
frame
,
cv2
.
COLOR_GRAY2RGB
)
imgvalue
=
frame
[:,
:,
::
-
1
]
imgvalue
=
frame
[:,
:,
::
-
1
]
return
imgvalue
,
True
return
imgvalue
,
True
return
None
,
False
return
None
,
False
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录