更新记录

1.0.0(2026-08-17)

  • 纯本地离线中国大陆车牌识别:可以使用SDK自带的选图、***(可配置 UI),也可以自己获取图片后调用接口上传图片识别;
  • 支持蓝/绿/黄/白/黑牌、新能源、警/学/挂/使/领、军牌/武警、双层牌;
  • 返回车牌文本、类型(中文)、置信度、总耗时、矫正车牌图;

平台兼容性

uni-app(3.8.2)

Vue2 Vue3 Vue3插件版本 Chrome Safari app-vue app-vue插件版本 app-nvue Android Android插件版本 iOS iOS插件版本 鸿蒙
- 1.0.0 × × 1.0.0 × 7.0 1.0.0 15 1.0.0 ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × × × ×

其他

多语言 暗黑模式 宽屏模式
× ×

LPR 车牌识别(ad-lpr-ocr)

本地离线车牌识别 UTS 插件:摄像头实时识别、选图识别、车牌类型判定(中文)。

  • 纯本地推理:识别过程完全在设备上完成,不采集、不上传任何数据;
  • 全流程内置:相册选图、摄像头扫描、车牌矫正图、调试日志都由 SDK 完成,业务方只需接收结果。

安装

在 uni-app 项目的 uni_modules 目录导入本插件(HBuilderX 插件市场安装或 手动拷贝 ad-lpr-ocr 目录)。

快速开始

uni-app Demo 已提供三个入口:SDK 选图、SDK 摄像头实时识别、自定义图片识别 (页面内含拍摄/相册两种取图方式)。运行 platforms/uni_plugin/demo 即可体验。

import {
  recognizeImage,
  recognizeImagePath,
  startScan,
  setLicense,
  getVersion
} from '@/uni_modules/ad-lpr-ocr'

// 选图识别:拉起系统相册 → 自动识别 → 回调
recognizeImage({
  debug: false,
  success: (res) => {
    console.log(res.plateText, res.plateType, res.confidence)
  },
  fail: (err) => {
    console.error(err.errCode, err.errMsg)
  }
})

// 自定义图片识别:不弹系统相册,直接识别本地图片文件
recognizeImagePath({
  path: '/storage/emulated/0/plate.jpg',
  success: (res) => {
    console.log(res.plateText, res.plateType)
  }
})

// 摄像头实时识别:弹出 SDK 扫描页 → 识别成功自动关闭并回调
startScan({
  presentMode: 'sheet',        // 'sheet' 底部弹出 / 'push' 导航栈 push
  showFrame: true,             // 是否显示识别框
  frameColor: '#00FF00',       // 识别框颜色
  hintText: '请将车牌对准框内', // 提示文字(自动换行)
  maxZoom: 10,                 // 最大放大倍率
  showZoomLabel: true,         // 是否显示当前倍率
  closeButtonText: '关闭',      // 底部弹出模式的关闭按钮文字
  success: (res) => {
    console.log(res.plateText, res.plateType)
  }
})

// 版本号
console.log(getVersion())

API

recognizeImage(options)

拉起系统相册选择图片并识别。

参数:

字段 类型 默认 说明
debug boolean false 是否采集调试日志(含模型精度、分段耗时)
success (res) => void - 识别成功回调
fail (err) => void - 识别失败回调

recognizeImagePath(options)

自定义选图/拍照识别:不拉起系统相册,直接识别本地图片文件。

参数:

字段 类型 默认 说明
path string - 本地图片绝对路径;支持 file:// 前缀和 content://(Android)
debug boolean false 是否采集调试日志
success (res) => void - 识别成功回调
fail (err) => void - 识别失败回调

示例(自己选图后拿到路径再识别):

uni.chooseImage({
  count: 1,
  success: (res) => {
    recognizeImagePath({
      path: res.tempFilePaths[0],
      success: (r) => console.log(r.plateText, r.plateType)
    })
  }
})

startScan(options)

弹出 SDK 摄像头实时识别页面,识别成功后自动关闭并回调。

recognizeImage 参数基础上增加:

字段 类型 默认 说明
presentMode string sheet 底部弹出 / 导航栈 push
showFrame boolean true 是否显示识别框边框
frameColor string #00FF00 识别框颜色(#RRGGBB / #AARRGGBB)
hintText string 请将车牌对准框内 框下方提示文字
maxZoom number 10 最大放大倍率
showZoomLabel boolean true 是否显示当前倍率标签
closeButtonText string 关闭 底部弹出模式关闭按钮文字

getVersion()

返回 SDK 版本号字符串。

识别结果

{
  plateText: '沪A12345',        // 车牌文本
  plateType: '小型汽车',        // 车牌类型中文名
  confidence: 0.99,             // 置信度 0~1
  totalMs: 386,                 // 识别总耗时(毫秒)
  plateImagePath: '/tmp/...',   // 矫正后的车牌图(400x120),可为空
  debugLog: ''                  // debug=true 时的完整调试日志
}

授权说明

当前版本由插件市场授权:购买后绑定 appid + 包名,换项目/换包名需重新购买; 购买后即可长期使用,无需任何授权配置。SDK 内 setLicense 为未来 订阅版本预留接口,当前版本不影响使用。

错误码

错误码 含义
9010001 未授权或授权已过期
9010002 模型缺失
9010003 未检测到车牌
9010004 识别失败
9010005 相机不可用或权限被拒绝
9010006 参数错误

平台支持

  • app-ios:支持
  • app-android:支持

隐私

插件不采集任何数据:识别在本地离线完成,不包含广告 SDK、统计 SDK, 仅申请相机权限(摄像头实时识别)与相册访问(选图)。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

相机(扫一扫识别车牌)

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据,识别过程完全在本地离线完成

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。