1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
| package com.agentdriving.driver.modular.system.util.juhe;
|
| import com.alibaba.fastjson.JSON;
| import com.alibaba.fastjson.JSONObject;
| import com.agentdriving.driver.modular.system.util.httpClinet.HttpClientUtil;
| import com.agentdriving.driver.modular.system.util.httpClinet.HttpResult;
| import org.slf4j.Logger;
| import org.slf4j.LoggerFactory;
| import org.springframework.web.multipart.MultipartFile;
|
| import java.util.HashMap;
| import java.util.Map;
|
| /**
| * @author zhibing.pu
| * @date 2023/4/10 15:35
| */
| public class OCRUtil {
|
| static Logger logger = LoggerFactory.getLogger("ServiceLog");
|
| private final static String key = "5cc9622f299335639dbc046f3812c52a";
|
| private static HttpClientUtil httpClientUtil = new HttpClientUtil();
|
|
| /**
| * OCR证件识别
| * @param cardType
| * "1": "一代身份证",
| * "2": "二代身份证正面",
| * "3": "二代身份证证背面",
| * "4": "临时身份证",
| * "5": "驾照",
| * "6": "行驶证",
| * "7": "军官证1998版",
| * "9": "中华人民共和国往来港澳通行证2005版",
| * "10": "台湾居民往来大陆通行证1992版-照片页",
| * "11": "大陆居民往来台湾通行证1992版-照片页",
| * "12": "签证(护照幅面)",
| * "13": "护照(护照幅面)",
| * "14": "港澳居民来往内地通行证-照片页",
| * "15": "港澳居民来往内地通行证-机读码页",
| * "16": "户口本",
| * "17": "银行卡",
| * "22": "往来港澳通行证2014版-照片页(卡式港澳通行证)",
| * "25": "台湾居民来往大陆通行证2015版-照片页",
| * "26": "台湾居民往来大陆通行证2015版-机读码页",
| * "28": "中国驾驶证副页",
| * "29": "往来台湾通行证2017版-照片页",
| * "30": "行驶证副页",
| * "31": "港澳台居民居住证正面",
| * "32": "港澳台居民居住证反面",
| * "33": "外国人永久居留身份证",
| * "101": "二代身份证正面背面自动分类",
| * "102": "驾驶证正副页自动分类",
| * "103": "行驶证正副页自动分类",
| * "104": "身份证、驾驶证、行驶证自动分类",
| * "1000": "居住证",
| * "1001": "香港永久性居民身份证",
| * "1002": "登机牌(拍照设备目前不支持登机牌的识别)",
| * "1003": "边民证(A)(照片页)",
| * "2008":"营业执照"
| * @param file 图片文件
| * @return
| */
| public static JSONObject certificate(Integer cardType, MultipartFile file){
| String url = "http://v.juhe.cn/certificates/query";
| HttpResult httpResult = null;
| try {
| Map<String, Object> params = new HashMap<>();
| params.put("key", key);
| params.put("cardType", cardType.toString());
| params.put("pic", file);
| httpResult = httpClientUtil.pushHttpRequset("POST", url, params, null, "form");
| } catch (Exception e) {
| e.printStackTrace();
| }
| if(httpResult.getCode() != 200){
| logger.debug("查询证件失败:" + httpResult.getData());
| return null;
| }
| String data = httpResult.getData();
| JSONObject jsonObject = JSON.parseObject(data);
| Integer error_code = jsonObject.getInteger("error_code");
| if(0 != error_code){
| logger.debug("查询证件失败:" + jsonObject.getString("reason"));
| return null;
| }
| JSONObject result = jsonObject.getJSONObject("result");
| return result;
| }
|
|
| ////身份证识别返回示例
| //{
| // "error_code": 0,
| // "reason": "操作成功",
| // "result": {
| // "住址": "武汉市江岸区永清路****",
| // "保留": "",
| // "公民身份号码": "42010619510609****",
| // "出生": "1951-06-09",
| // "头像": "",/*Base64字符串*/
| // "姓名": "彭*",
| // "性别": "男",
| // "民族": "汉",
| // "orderid":"JH1531180126114835937669",
| // "userid":"1234567"
| // }
| //}
| //
| ////车牌识别返回示例
| //{
| // "reason": "操作成功",
| // "result": {
| // "车牌号": "粤N0***81",
| // "车牌颜色": "1",
| // "车牌类型": "1",
| // "整牌可信度": "86",
| // "亮度评价": "215",
| // "车牌运动方向": "0",
| // "车牌位置(left_top_right_bottom)": "30_118_498_222",
| // "orderid":"JH1531180126114835937669",
| // "userid":"1234567"
| // },
| // "error_code": 0
| //}
| ////港澳台居民居住证正面
| //{
| // "reason": "操作成功",
| // "result":{
| // "保留" : "",
| // "姓名" : "",
| // "性别" : "",
| // "民族" : "",
| // "住址" : "",
| // "出生" : "",
| // "公民身份号码" : "",
| // "复印件判别" : "",
| // "头像" : ""
| // }
| //}
| ////港澳台居民居住证反面
| //{
| // "reason": "操作成功",
| // "result":{
| // "保留" : "",
| // "签发机关" : "",
| // "有效期限" : "",
| // "签发日期" : "",
| // "有效期至" : "",
| // "通行证号码" : ""
| // }
| //}
| ////港澳居民来往内地通行证-照片页
| //{
| // "reason": "操作成功",
| // "result":{
| // "保留" : "",
| // "证件号码" : "",
| // "中文姓名" : "",
| // "英文姓名" : "",
| // "性别" : "",
| // "出生日期" : "",
| // "本证有效期至" : "",
| // "英文姓" : "",
| // "英文名" : "",
| // "港澳证件号码" : "",
| // "签发日期" : "",
| // "有效期限" : "",
| // "签发机关" : "",
| // "换证次数" : "",
| // "其他姓名" : "",
| // "归属地" : "",
| // "头像" : "",
| // }
| //}
| ////中国台湾居民来往内地通行证照片页
| //{
| // "reason": "操作成功",
| // "result":{
| // "保留" : "",
| // "中文姓名" : "",
| // "英文姓名" : "",
| // "出生日期" : "",
| // "性别" : "",
| // "有效期限" : "",
| // "签发地点" : "",
| // "证件号码" : "",
| // "签发次数" : "",
| // "签发机关" : "",
| // "头像" : "",
| // }
| //}
| ////针对车牌的信息:
| //1.车牌颜色类型:
| // 0 //未知车牌
| // 1 //蓝牌
| // 2 //黑牌
| // 3 //单排黄牌
| // 4 //双排黄牌(大车尾牌,农用车)
| // 5 //警车车牌
| // 6 //武警车牌
| // 7 //个性化车牌
| // 8 //单排军车
| // 9 //双排军车
| // 10 //使馆牌
| // 11 //香港牌
| // 12 //拖拉机
| // 13 //澳门牌
| // 14 //厂内牌
| // 15 //民航牌
| // 16 //领事馆车牌
| // 17 //新能源车牌-小型车
| // 18 //新能源车牌-大型车
| //
| //2.车牌可信度:
| // 当前识别结果的分数,分数越高识别对的可能越大
| //3.车牌位置:
| // 是指车牌在图像中的坐标值
| //4.车牌运动方向:
| // 0 unknown, 1 left, 2 right, 3 up , 4 down
| //
| ////行驶证查询返回:
| //{
| // "保留": "",
| // "号牌号码": "粤A4****",
| // "车辆类型": "小型轿车",
| // "所有人": "黄**",
| // "住址": "广东省从化市城郊街东风***********",
| // "品牌型号": "别克1B*******71801S",
| // "车辆识别代号": "LSGJ********44832",
| // "发动机号码": "T18S********C",
| // "注册日期": "2000-06-13",
| // "发证日期": "2020-07-11",
| // "使用性质": "非营运",
| // "orderid":"JH1531180126114835937669",
| // "userid":"1234567"
| //}
| ////VIN识别
| //{
| // "vin": "WBAFR7103BC727722",
| // "orderid": "JH1531180524123006771818"
| //}
| ////营业执照
| //{
| //"reason": "操作成功",
| //"result":{
| //"统一社会信用代码": "91110105MA01AMC6Q",
| //"组织机构代码": "",
| //"税务登记证号": "",
| //"社保登记号": "",
| //"统计证证号": "",
| //"名称": "北京数字传奇网络科技有限公司",
| //"类型": "有限责任公司(自然人投资或控股)",
| //"住所": "北京市朝阳区将台乡驼房营路8号新华科技大厦21层2106室",
| //"法定代表人": "吴发强",
| //"组成形式": "",
| //"注册资本": "100万元",
| //"成立日期": "2018年03月21日",
| //"营业期限": "2018年03月21日至长期",
| //"经营范围": "技术开发、技术推广、技术咨询、技术服务。(企业依法自主\n选择经营项目,开展经营活班依法须经批准的顼目,经相关\n部门批准后依批准的内容开展经营活班不得从事本市产业政\n策禁止和限制类顼目的经营活动。)",
| //"登记机关": "",
| //"登记日期": "",
| //"二维码": "http://qyxy.baic.gov.cn/wap/wap/creditWapAction!qr.dhtml?id=ff8080816242f1250162463d9d3168f3",
| //"副本": ""
| //},
| }
|
|