Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
周伟奇
/
bmw-ocr
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Graphs
Network
Create a new issue
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
862a3a8c
authored
2021-04-14 17:28:06 +0800
by
周伟奇
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
fix bug
1 parent
d6fe9c9d
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
41 additions
and
6 deletions
src/apps/doc/consts.py
src/celery_compare/tasks.py
src/apps/doc/consts.py
View file @
862a3a8
...
...
@@ -1069,11 +1069,10 @@ ITHKM_ITTID = [
# 居住证
ITRES
=
[
(
'customerChineseName'
,
'姓名'
,
'common_compare'
,
{},
'customerChineseName'
),
(
'idNum'
,
'公民身份号码'
,
'common_compare'
,
{},
'idNum'
),
(
'secondIdNum'
,
'通行证号码'
,
'common_compare'
,
{},
'secondIdNum'
),
(
'idExpiryDate'
,
'有效期限'
,
'date_compare'
,
{
'ocr_split'
:
True
,
'input_replace'
:
''
},
'idExpiryDate'
),
# 20200410-20250410
(
'dateOfBirth'
,
'出生年月'
,
'date_compare'
,
{
'input_replace'
:
''
},
'dateOfBirth'
),
# 20231023
(
'customerChineseName'
,
'姓名'
,
'common_compare'
,
{},
'customerChineseNameResult'
),
(
'idNum'
,
'公民身份号码'
,
'common_compare'
,
{},
'idNumResult'
),
(
'idExpiryDate'
,
'有效期限'
,
'date_compare'
,
{
'ocr_split'
:
True
,
'input_replace'
:
''
},
'idExpiryDateResult'
),
# 20200410-20250410
(
'dateOfBirth'
,
'出生年月'
,
'date_compare'
,
{
'input_replace'
:
''
},
'dateOfBirthResult'
),
# 20231023
]
ID_TYPE_COMPARE
=
{
...
...
@@ -1084,6 +1083,33 @@ ID_TYPE_COMPARE = {
'ITRES'
:
[
RP_OCR_FIELD
,
ITRES
],
}
SECOND_ITPRC
=
[
(
'secondIdNum'
,
'公民身份号码'
,
'common_compare'
,
{},
'secondIdNumResult'
),
]
# 护照
SECOND_ITPSP
=
[
(
'secondIdNum'
,
'护照号码'
,
'common_compare'
,
{},
'secondIdNumResult'
),
]
# 港澳台通行证
SECOND_ITHKM_ITTID
=
[
(
'secondIdNum'
,
'证件号码'
,
'common_compare'
,
{},
'secondIdNumResult'
),
]
# 居住证
SECOND_ITRES
=
[
(
'secondIdNum'
,
'公民身份号码'
,
'common_compare'
,
{},
'secondIdNumResult'
),
]
SECOND_ID_TYPE_COMPARE
=
{
'ITPRC'
:
[
IC_OCR_FIELD
,
SECOND_ITPRC
],
'ITPSP'
:
[
PP_OCR_FIELD
,
SECOND_ITPSP
],
'ITHKM'
:
[
EEP_OCR_FIELD
,
SECOND_ITHKM_ITTID
],
'ITTID'
:
[
EEP_OCR_FIELD
,
SECOND_ITHKM_ITTID
],
'ITRES'
:
[
RP_OCR_FIELD
,
SECOND_ITRES
],
}
# 1. 分别对比 POS车架号 vs 车辆登记正,POS车架号 vs 行驶证
# a)两种比对 均一致:Y
# b)其中一个 不一致:N,向GCAP发送:不一致的OCR识别结果
...
...
src/celery_compare/tasks.py
View file @
862a3a8
...
...
@@ -38,6 +38,7 @@ def field_compare(info_dict, ocr_res_dict, ocr_field, compare_list, res_set):
ocr_str
=
ocr_res
.
get
(
compare_tuple
[
1
])
compare_res
,
ocr_output
=
getattr
(
cp
,
compare_tuple
[
2
])(
input_str
,
ocr_str
,
idx
,
**
compare_tuple
[
3
])
print
(
'type: {0}, idx: {1}, field: {2}, input: {3}, ocr: {4}, res: {5}, out: {6}'
.
format
(
ocr_field
,
idx
,
compare_tuple
[
0
],
input_str
,
ocr_str
,
compare_res
,
ocr_output
))
if
idx
==
0
and
compare_res
in
[
consts
.
RESULT_N
,
consts
.
RESULT_NA
]:
break
is_find
=
True
...
...
@@ -70,6 +71,7 @@ def usedcar_info_compare(info_dict, ocr_res_dict, ocr_field, compare_list, res_s
ocr_str
=
ocr_res
.
get
(
compare_tuple
[
1
])
compare_res
,
ocr_output
=
getattr
(
cp
,
compare_tuple
[
2
])(
input_str
,
ocr_str
,
idx
,
**
compare_tuple
[
3
])
print
(
'type: {0}, idx: {1}, field: {2}, input: {3}, ocr: {4}, res: {5}, out: {6}'
.
format
(
ocr_field
,
idx
,
compare_tuple
[
0
],
input_str
,
ocr_str
,
compare_res
,
ocr_output
))
if
idx
==
0
and
compare_res
in
[
consts
.
RESULT_N
,
consts
.
RESULT_NA
]:
if
ocr_str
is
not
None
:
no_match_vino
.
append
(
ocr_str
)
...
...
@@ -132,7 +134,7 @@ def compare(application_id, application_entity, uniq_seq, ocr_res_id):
'vehicleStatus'
:
last_obj
.
vehicle_status
,
'wholeResult'
:
'Y'
,
'wholeResultMessage'
:
''
,
'applicationLink'
:
r'
\\china.bmw.corp\WINFS\SF-CN-data\SF3-CN-S\SF3-CN-S-1-New Business\CA\
OCR II test'
,
'applicationLink'
:
r'
file://china.bmw.corp/WINFS/SF-CN-data/SF3-CN-S/SF3-CN-S-1-New Business/CA/
OCR II test'
,
}
})
...
...
@@ -152,6 +154,13 @@ def compare(application_id, application_entity, uniq_seq, ocr_res_id):
continue
field_compare
(
order_individual_cus_info
,
ocr_res_dict
,
compare_info_list
[
0
],
compare_info_list
[
1
],
res_set
)
# 第二证件
second_id_type
=
order_individual_cus_info
.
get
(
'secondIdType'
)
second_compare_info_list
=
consts
.
SECOND_ID_TYPE_COMPARE
.
get
(
second_id_type
)
if
second_compare_info_list
is
None
:
continue
field_compare
(
order_individual_cus_info
,
ocr_res_dict
,
second_compare_info_list
[
0
],
second_compare_info_list
[
1
],
res_set
)
# sep营业执照
if
order_individual_cus_info
.
get
(
'customerType'
)
==
consts
.
CUSTOMER_TYPE
[
5
]:
field_compare
(
order_individual_cus_info
,
ocr_res_dict
,
consts
.
BL_OCR_FIELD
,
consts
.
TCSEP
,
res_set
)
...
...
Write
Preview
Styling with
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment