2024-01-15
本文介绍利用云服务进行图像识别的方法。整个系统包括终端、后台服务器、云服务器。终端利用VC++开发,后台服务器为Tomcat + JAVA,云服务利用华为云服务
云服务使用前需要鉴别身份,可使用Token。首先利用postman获取Token,如下图所示:X-Subject-Token即为Token。
Token有效期24小时,在后台服务器上存储为txt文件,随时调用即可。后台服务器运行Tomcat,接收终端提交的图像标签(检测)申请(含图片url),将图片url,Token一并提交至图像标签API,之后将API的返回值返回终端
String apiUrl = request.getParameter("apiUrl");
String body = request.getParameter("body");
URL url = new URL(apiUrl);
URLConnection connection = url.openConnection();
connection.addRequestProperty("Content-Type", application/json") connection.addRequestProperty("X-Auth-Token", tokenStr);
connection.setDoInput(true);
connection.setDoOutput(true);
connection.connect();
PrintWriter outConn = new PrintWriter(connection.getOutputStream());
outConn.write(body);
outConn.flush();
BufferedReader in = new BufferedReader(newInputStreamReader(connection.getInputStream(),"utf-8"));
String line,recv="";
while ((line = in.readLine()) != null)
{
System.out.println("recv:"+line);
recv += line;
}
out.println(recv);
终端使用VC++开发,基于CHttpFile封装一个CHttpClient类,用于http的POST功能。调用后台服务器的API后,获得的返回值如下
利用OpenCV,绘制目标方框,并显示标签,绘图显示后
注:因OpenCV不便于显示中文,识别结果以英文显示,实际上云API可以返回分类结果的中文信息。
相对YOLO模型,使用云API可以识别的目标种类更多,模型无需自己训练,具有更加方便的特点
丁斗科技可为您开发配套的图像标签及其他利用云API的程序,具体可联系丁斗科技