车牌识别
功能说明
sdk型号:Raccoon 100-Plate
支持特性:
通用文字识别
识别方式:本地离线识别
支持车牌:黄牌/蓝牌等
授权说明:
授权方式:按设备台数终身授权,提交授权申请时需要提供设备SN和IMEI信息。
开发测试请联系技术支持开通。(测试授权有效期:自开通之日一个月内有效)
正常采购请联系商务下单采购。
资源下载:
请点击下载SDK开发包
请点击下载演示APP
1、 开发说明
1.1、开发流程:
- 服务初始化
- 拍照获取图片
- 调用识别接口
- 关闭接口

2、SDK 接口说明
2.1、获取SDK实例
Predictor predictor = Predictor.getInstance();
public Predictor getInstance();
| 参数 | 类型 | 说明 | |
|---|---|---|---|
| 输入参数 | 无 | ||
| 输出参数 | predictor | Predictor | Predictor 实例 |
2.2、SDK授权激活
predictor.initModel(appCtx);
public boolean initModel(Context appCtx));
| 参数 | 类型 | 说明 | |
|---|---|---|---|
| 输入参数 | context | Context | app运行Context |
| 输出参数 | result | boolean | true:授权成功 false:授权失败 |
备注. 首次执行授权激活时需要连接网络,请在执行前确保网络联通,否则会授权失败。 ↩
2.3、检测授权状态
public int getModelState()
| 参数 | 类型 | 说明 | |
|---|---|---|---|
| 输入参数 | 无 | ||
| 输出参数 | result | int | 0:初始化成功 -1:授权失败, -2:模型加载失败, -3:字典加载失败, |
2.4、SDK释放
predictor.releaseModel();
void releaseModel()
| 参数 | 类型 | 说明 | |
|---|---|---|---|
| 输入参数 | 无 | ||
| 输出参数 | 无 |
2.5、车牌识别-byte[]
public ArrayList
runOcrPredictor(byte[] nv21, int w, int h, int rotate)
| 参数 | 类型 | 说明 | |
|---|---|---|---|
| 输入参数 | nv21 | byte[] | Camera预览回调上来的图像数据nv21 |
| w | int | 预览图像宽度 | |
| h | int | 预览图像高度 | |
| rotate | int | 预览图像需要旋转的角度 | |
| 输出参数 | ocrResults | ArrayList |
识别结果 |
2.6、车牌识别-Bitmap
public ArrayList
runOcrPredictor(Bitmap image, int rotate);
| 参数 | 类型 | 说明 | |
|---|---|---|---|
| 输入参数 | imaige | Bitmap | 图片的bitmap |
| rotate | int | 预览图像需要旋转的角度 | |
| 输出参数 | ocrResults | ArrayList |
识别结果 |
2.7、获取SDK名称
String getSDKName()
| 参数 | 类型 | 说明 | |
|---|---|---|---|
| 输入参数 | 无 | ||
| 输出参数 | sdkNae | String | sdk名称 |
2.8、获取SDK版本号
String getVersionInfo()
| 参数 | 类型 | 说明 | |
|---|---|---|---|
| 输入参数 | 无 | ||
| 输出参数 | sdkVersion | String | sdk版本 |
2.9、开关debug
void enableDebug(boolean enable)
| 参数 | 类型 | 说明 | |
|---|---|---|---|
| 输入参数 | enable | boolean | true:打开debug功能 false:关闭debug功能 |
| 输出参数 | 无 |
备注. 打开debug时sdk开启详细日志,在调试时候使用。 ↩
3、开发集成
- 请先将厂商提供的lib库加项目依赖路径,如下图:
Raccoon_100_Plate_211021.aar

- Build.gradle中加增加如下配置:
dependencies {
implementation fileTree(include: ['*.jar','*.aar'], dir: 'libs')
}
- AndroidManifest.xml配置权限
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" />
- 需要在AndroidManifest.xml中增加如下配置方可访问网络: android:networkSecurityConfig="@xml/network_security_config"

- network_security_config.xml中内容如下:

4、附录
4.1、错误代码说明
| Code | 说明 | 建议 |
|---|---|---|
| 0 | 成功 | |
| -1 | SN授权失败 | 联系销售或者技术支持进行授权,需要提供SN和IMEI信息。 |
| -2 | 模型加载失败 |
4.2、类说明
4.2.1、OcrResult类说明
public class OcrResult {
public List<Point> points = new ArrayList();//坐标点
public String result = "";//识别到内容
public float confidence = 0.0F;//置信度
public OcrResult() {
}
// 返回文字矩形框坐标点
public List<Point> getPoints() {
return this.points;
}
// 返回识别的文字
public String getLabel() {
return this.result;
}
// 获取置信度
public float getConfidence() {
return this.confidence;
}
}