完成图片识别
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>
结果:

网友评论