public static JSONObject getVehicleLicense(String accessToken,String filePath,VehicleLicenseType vehicleLicenseType) throws Exception{ String image = Base64Util.fileToBase64(filePath); MultiValueMap<String, String> param = new LinkedMultiValueMap<>(); param.add("image",image); param.add("detect_direction","true"); //- false:默认值不进行图像方向自动矫正- true: 开启图像方向自动矫正功能 param.add("vehicle_license_side",vehicleLicenseType.name()); //- front:默认值,识别行驶证主页- back:识别行驶证副页 param.add("unified","true"); //- false:默认值,不进行归一化处理- true:对输出字段进行归一化处理,将新/老版行驶证的“注册登记日期/注册日期”统一为”注册日期“进行输出 String result = post("https://aip.baidubce.com/rest/2.0/ocr/v1/vehicle_license?access_token="+accessToken,param); JSONObject jsonObject = JSONObject.parseObject(result); return jsonObject; }
时间: 2025-06-19 08:21:23 浏览: 17
<think>好的,我现在需要帮助用户了解如何使用百度AI平台的车辆行驶证OCR API。用户的问题涉及接口的实现细节、参数设置和图片上传方法。首先,我得回忆一下百度AI平台的API调用流程,通常分为鉴权和接口调用两部分。
用户提到了参数如detect_direction、vehicle_license_side和unified,这些需要逐一解释。detect_direction可能用于检测图片方向,vehicle_license_side可能指定识别行驶证的主页或副页,unified可能控制返回格式是否统一。我需要确认这些参数的具体用途和可选值。
关于图片上传,百度API通常支持Base64编码或图片URL。用户可能想知道如何将本地图片转换为Base64,并正确传入。此外,还需要说明如何通过POST请求发送这些数据。
另外,用户提到了代码示例,可能需要展示如何构造请求,包括鉴权部分。记得百度API需要access_token,获取方式一般是使用API Key和Secret Key。这部分需要简要说明,但用户可能已经了解,所以可以引用现有文档或教程。
需要注意错误处理,比如参数设置错误可能导致的问题,或者图片不符合要求的常见错误。同时,返回结果的字段解析也很重要,用户可能需要知道如何提取识别后的信息,如车牌号、所有人等。
最后,要确保回答结构清晰,分步骤说明,并附上代码示例。如果有可选参数,要举例说明如何设置。此外,引用相关的帮助文档或链接,方便用户进一步查阅。</think>### 百度AI行驶证OCR接口实现详解
#### 一、接口调用流程
1. **获取access_token**
调用接口前需通过API Key和Secret Key获取访问凭证:
```python
import requests
API_KEY = "your_api_key"
SECRET_KEY = "your_secret_key"
auth_url = f"https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id={API_KEY}&client_secret={SECRET_KEY}"
response = requests.get(auth_url)
access_token = response.json()["access_token"]
```
2. **图片预处理**
支持两种方式上传图片:
- **Base64编码**:将图片转换为Base64字符串
```python
import base64
with open("vehicle_license.jpg", "rb") as f:
image = base64.b64encode(f.read()).decode()
```
- **URL直传**:使用图片网络地址(需公网可访问)
#### 二、核心参数说明
| 参数名 | 类型 | 说明 |
|--------|------|------|
| detect_direction | string | 是否检测图像朝向,可选"true"/"false" |
| vehicle_license_side | string | 指定识别面:"front"(主页)/ "back"(副页)[^3] |
| unified | string | 是否返回标准化结构数据,可选"true"/"false" |
| accuracy | string | 识别精度等级:"normal"/"high" |
#### 三、完整调用示例
```python
import json
service_url = f"https://aip.baidubce.com/rest/2.0/ocr/v1/vehicle_license?access_token={access_token}"
headers = {"Content-Type": "application/x-www-form-urlencoded"}
params = {
"image": image,
"detect_direction": "true",
"vehicle_license_side": "front",
"unified": "true"
}
response = requests.post(service_url, headers=headers, data=params)
result = response.json()
# 解析关键字段
print(f"号牌号码: {result['words_result']['号牌号码']['words']}")
print(f"所有人: {result['words_result']['所有人']['words']}")
```
#### 四、返回数据结构说明
返回结果为JSON格式,包含以下关键字段:
- `log_id`: 请求唯一标识符
- `words_result`: 识别结果字典,包含$13$个结构化字段[^1]
- `words_result_num`: 识别字段总数
- `direction`: 图片旋转角度(当开启detect_direction时返回)
#### 五、注意事项
1. 图片要求:建议分辨率$1280×720$以上,JPG/PNG/BMP格式
2. 错误代码处理:
- `216201`: 参数缺失错误
- `216460`: 图片解码失败
3. 性能指标:普通精度模式响应时间<$1s$,高精度模式<$2s$[^3]
阅读全文
相关推荐

















