完成图片识别
OCR上传银行卡/身份证号/车牌号等等
阿里云:OCR框架 手机美颜/直播啊都是调的接口
上传带有车牌号的图片,自动识别出图片中的车牌号
接口的获取
打开阿里云/百度云/自己喜欢的云服务,本人是在阿里云购买的免费接口
搜索OCR,找到可以识别的车牌号的接口,然后可以购买免费版本
购买后如下图所示:
购买成功得到上述图片,其中Appkey/AppSecret是我们需要的
在购买服务的下方:
点击上方:
API简单身份认证调用方法(APPCODE)
滑到签名认证
点击登录API网关控制台
右侧栏的调用API,已授权的sdk,有node.js版
在编译器中:
新建空项目不需要初始化
在此项目的终端打开
npm install aliyun-api-gateway express -s
(不需要下载body-parser)
Express作为后端
当输入图片的base64参数太时,加上:
app.use(bodyParser.json({limit:'50mb'}));加上这个限制
var urlencodedParser=bodyParser.urlencoded({extended:false,limit:'50mb'});
代码:
index.js中:
```
let express=require('express');
let app=express();
var bodyParser=require('body-parser');
//var jsonParser=bodyParser.json();
app.use(bodyParser.json({limit:'50mb'}));
var urlencodedParser=bodyParser.urlencoded({extended:false,limit:'50mb'});
app.use(urlencodedParser);
const Client =require('aliyun-api-gateway').Client;
const client =new Client('你的AppKey','你的AppSecret');
app.all("*",function(req,res,next){
//设置允许跨域的域名,*代表允许任意域名跨域
res.header("Access-Control-Allow-Origin","*");
//允许的header类型
res.header("Access-Control-Allow-Headers","content-type");
//跨域允许的请求方式
res.header("Access-Control-Allow-Methods","DELETE,PUT,POST,GET,OPTIONS");
if(req.method.toLowerCase()=='options')
res.send(200);//让options请求快速结束
else
next();
});
app.post('/getCarId',async (req,res)=>{
//res.send('成功');
console.log(req.body.img);
var url ='https://vin.market.alicloudapi.com/api/predict/ocr_vin';//为接口的地址
//try{
var result =await client.post(url, {
data: {
//有车牌号的图片base64代码/url地址
'image': req.body.img
},
headers: {
accept:'application/json'
}
});
// }catch (e) {
// res.send(e);
// }
//console.log(JSON.stringify(result));
res.send(result);
});
app.listen(9999);
```
getCarId.html中:
````
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>识别车牌号</title>
</head>
<body>
<div class="container">
<input type="file" class="file">
<div>
<img src="" id="img" alt="" style="width:200px;height:200px">
<input type="text" name="" id="type">
<input type="text" name="" id="no">
</div>
</div>
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.js"></script>
<script>
//监听文本框事件
$('.file').on('change',function(){
//console.log(this.files[0]);
//图片file类型转base64
let reader=new FileReader();
reader.readAsDataURL(this.files[0]);
//回调函数
reader.onload=(res)=>{
$('#img').attr('src',reader.result);
let base64=reader.result.substring(reader.result.indexOf(',')+1);
//console.log(base64);
$.post('http://localhost:9999/getCarId',{img:base64},data=>{
console.log(data);
})
}
})
</script>
</body>
</html>
````
网友评论