一,总览
具体细节请见上一篇博文
二,不同之处
2.1,接口
1 package com.bill99.coe.ocr.service; 2 3 import java.util.Map; 4 5 import org.springframework.web.multipart.MultipartFile; 6 7 public interface OcrService { 8 9 10 /** 11 * 身份证识别 12 * 13 * @param imageFile 14 * @return 15 */ 16 Map<String, Object> idCardRecognize(MultipartFile imageFile); 17 18 /** 19 * 银行卡识别 20 * 21 * @param imageFile 22 * @return 23 */ 24 Map<String, Object> bankCardRecognize(MultipartFile imageFile); 25 26 /** 27 * 行驶证识别 28 * 29 * @param imageFile 30 * @return 31 */ 32 Map<String, Object> veCardRecognize(MultipartFile imageFile); 33 34 /** 35 * 驾驶证识别 36 * 37 * @param imageFile 38 * @return 39 */ 40 Map<String, Object> driverCardRecognize(MultipartFile imageFile); 41 42 /** 43 * 营业执照识别 44 * 45 * @param imageFile 46 * @return 47 */ 48 Map<String, Object> businessLicenseRecognize(MultipartFile imageFile); 49 50 /** 51 * 通用类型识别 52 * @param recotype 53 * @param imageFile 54 * @return 55 */ 56 Map<String, Object> ocrRecognize(String recotype, MultipartFile imageFile); 57 }
2.2,实现类OcrServiceImpl
1 package com.bill99.coe.ocr.service.impl; 2 3 import java.util.Map; 4 5 import org.springframework.web.multipart.MultipartFile; 6 7 import com.bill99.coe.ocr.client.OcrServer; 8 import com.bill99.coe.ocr.service.OcrService; 9 10 public class OcrServiceImpl implements OcrService { 11 /** 12 * ocr服务调用 13 */ 14 private OcrServer ocrServer = null; 15 16 @Override 17 public Map<String, Object> idCardRecognize(MultipartFile imageFile) { 18 return ocrServer.pictureRecognition("IdCard", imageFile); 19 } 20 21 @Override 22 public Map<String, Object> bankCardRecognize(MultipartFile imageFile) { 23 return ocrServer.pictureRecognition("BankCard", imageFile); 24 } 25 26 @Override 27 public Map<String, Object> veCardRecognize(MultipartFile imageFile) { 28 return ocrServer.pictureRecognition("VeCard", imageFile); 29 } 30 31 @Override 32 public Map<String, Object> driverCardRecognize(MultipartFile imageFile) { 33 return ocrServer.pictureRecognition("DriverCard", imageFile); 34 } 35 36 @Override 37 public Map<String, Object> businessLicenseRecognize(MultipartFile imageFile) { 38 return ocrServer.pictureRecognition("BusinessLicense", imageFile); 39 } 40 41 @Override 42 public Map<String, Object> ocrRecognize(String recotype, 43 MultipartFile imageFile) { 44 return ocrServer.pictureRecognition(recotype, imageFile); 45 } 46 47 public void setOcrServer(OcrServer ocrServer) { 48 this.ocrServer = ocrServer; 49 } 50 51 }
2.3,返回json结果
1 /* 身份证识别结果JSON数据定义: 2 "name" --------------姓名 3 "gender" --------------性别 4 "nation" --------------民族 5 “birthdate” -------------生日 6 “address” ---------------住址 7 “idno” -----------------身份证号码 8 “issuedby” -------------------签发机关 9 “validthru” -------------------有效期限 10 "cropped_image" ---------------切割图 11 "head_portrait" -------------------头像 12 13 14 银行卡识别结果JSON数据定义: 15 "bankname" --------------银行名称 16 "cardname" --------------卡名 17 "cardtype" --------------卡类型 18 “cardno” -------------卡号 19 “expmonth” ---------------有效期截止月份 20 “expyear” ----------------有效期截止年份 21 "cropped_image" ---------------切割图 22 23 行驶证识别结果JSON数据定义: 24 "plateno" ------------车牌号码 25 " vehicletype " --------------车辆类型 26 "veaddress" --------------住址 27 “usecharacter” -------------使用性质 28 “engineno” ---------------发动机号码 29 “model” ----------------品牌型号 30 “vin” -------------------车辆识别代码 31 “registerdate” -------------------注册日期 32 “issuedate” -------------------发证日期 33 "cropped_image" ---------------切割图 34 35 驾驶证识别结果JSON数据定义: 36 "name" --------------姓名 37 "gender" --------------性别 38 "nation" --------------国籍 39 "cardno" --------------证号 40 “address” -------------住址 41 “birthdate” -------------出生日期 42 “issuedate” -------------------初次领证日期 43 “driverclass” -------------------准驾车型 44 “validdate” -------------------有效期限 45 "cropped_image" ---------------切割图 46 47 营业执照识别结果JSON数据定义: 48 统一社会信用代码 : 49 名称 : 50 类型 : 51 法定代表人 : 52 注册资本 : 53 成立日期 : 年-月-日 54 住所 : 55 营业期限自 : 年-月-日 56 营业期限至 : 年-月-日 57 经营范围 : 58 登记机关 : 59 核准日期 : 年-月-日 60 经营状态 : */ 61 62 63 /* 64 错误码 具体错误信息 65 0 正确 66 1 识别错误 67 2 登录失败 68 3 服务器忙 69 4 服务未启动 70 5 服务器异常 71 6 数据库错误 72 7 无合格图像 73 8 识别次数已经用完*/
最主要的就是返回的json格式的结果不一样