一、获取OCR的SDK的Maven坐标(Java)
进入https://vision.aliyun.com/
通过文字识别中查看产品文档,得知SDK支持包括Java、Java(本地接入)、Python、Node.js、PHP四种常用语言。通过检索Java(支持本地上传)的SDK,获取OCR的Maven代码(version=1.0.3):
<artifactId>ocr</artifactId>
<version>1.0.3</version>
二、框架分析
建立Springboot项目,Application为启动类;Controller为控制器层,负责模板的渲染和路由等;Ocrservice负责通过SDK调用视觉识别的能力。上传表单只允许后缀为.jpg,.jpeg,.png的文件,且不为空。
输入限制:
·图片格式:JPEG、JPG、PNG、BMP、GIF。
·图像大小:图像大小不超过3M。
·图像分辨率:不限制图片分辨率,但图片分辨率太高可能会导致API识别超时,超时时间为5秒。
·URL地址中不能包含中文字符。
三、示例代码
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.profile.DefaultProfile;
import com.google.gson.Gson;
import java.util.*;
import com.aliyuncs.ocr.model.v20191230.*;
public class RecognizeIdentityCard {
public static void main(String[] args) {
DefaultProfile profile = DefaultProfile.getProfile("cn-shanghai", "<accessKeyId>", "<accessSecret>");
IAcsClient client = new DefaultAcsClient(profile);
RecognizeIdentityCardRequest request = new RecognizeIdentityCardRequest();
request.setRegionId("cn-shanghai");
request.setSide("face");
try {
RecognizeIdentityCardResponse response = client.getAcsResponse(request);
System.out.println(new Gson().toJson(response));
} catch (ServerException e) {
e.printStackTrace();
} catch (ClientException e) {
System.out.println("ErrCode:" + e.getErrCode());
System.out.println("ErrMsg:" + e.getErrMsg());
System.out.println("RequestId:" + e.getRequestId());
}
}
}
四、举例示范
五、代码展示:
五、总结
第二天的学习感觉很跨越,要通过Springboot框架开始调用SDK,进度有点跳跃,需要查阅资料,更近一步理解视频讲的专有术语和名词。