百度车牌识别

来自CloudWiki
跳转至: 导航搜索

功能描述

对机动车蓝牌、绿牌、单/双行黄牌的地域编号和车牌号进行识别,并能同时识别图像中的多张车牌。

准备工作

创建百度AI应用

在此网页中创建一个新的百度AI应用,

https://console.bce.baidu.com/ai/?fromai=1#/ai/ocr/overview/index

百度会为你的应用生成对应的参数值,如下图:

Ai2-1.png

生成许可Token

CMD窗口打开:

pip3 install requests -i https://pypi.tuna.tsinghua.edu.cn/simple

利用如下代码可生成Token:

import requests

url = "https://aip.baidubce.com/oauth/2.0/token"

data = {
    'grant_type':'client_credentials',
    'client_id':API Key,
    'client_secret':Secret Key,
}

response = requests.post(url=url,data=data)
print(response.text)

操作步骤

请求说明

请求图片需经过base64编码:图片的base64编码指将一副图片数据编码成一串字符串,使用该字符串代替图像地址。您可以首先得到图片的二进制,然后再进行urlencode。 =

请求代码示例

提示一:使用示例代码前,请记得替换其中的示例Token、图片地址或Base64信息。

提示二:部分语言依赖的类或库,请在代码注释中查看下载地址。

bash版本

curl -i -k 'https://aip.baidubce.com/rest/2.0/ocr/v1/license_plate?access_token=【调用鉴权接口获取的token】' --data 'image=【图片Base64编码,需UrlEncode】' -H 'Content-Type:application/x-www-form-urlencoded'

python版本

# coding:utf-8
import urllib, base64
#from urllib.request import urlopen
import urllib.parse  
import urllib.request 

access_token ='#####调用鉴权接口获取的token#####'
url = 'https://aip.baidubce.com/rest/2.0/ocr/v1/license_plate?access_token=' + access_token
# 二进制方式打开图文件
f = open(r'chepai.jpg', 'rb')
# 参数image:图像base64编码
img = base64.b64encode(f.read())
params = {"image": img}
params = urllib.parse.urlencode(params)
params =  bytes(params, encoding='utf8')
#request = urllib2.Request(url, params)
request = urllib.request.Request(url, params)
request.add_header('Content-Type', 'application/x-www-form-urlencoded')
#response = urllib2.urlopen(request)
response = urllib.request.urlopen(request)
content = response.read()
if (content):
    print(content.decode())

返回说明

返回参数

返回示例

{
	"errno": 0,
	"msg": "success",
	"data": {
		"log_id": "5327722537189137631",
		"words_result": {
			"color": "green",
			"number": "苏AD12267",
			"probability": [
				1,
				0.9999977350235,
				0.99999630451202,
				0.99999868869781,
				0.99998331069946,
				0.99999988079071,
				0.9531751871109,
				0.99922955036163
			],
			"vertexes_location": [
				{
					"y": 223,
					"x": 170
				},
				{
					"y": 223,
					"x": 282
				},
				{
					"y": 256,
					"x": 282
				},
				{
					"y": 256,
					"x": 170
				}
			]
		}
	}
}