HyperLPR简介
HyperLPR是一个开源的高性能中文车牌识别框架,由Jack Yu等人开发。它基于深度学习技术,能够快速准确地识别各种类型的中国车牌。HyperLPR具有以下主要特点:
识别速度快:在720p分辨率下,单核Intel 2.2GHz CPU平均识别时间不到100ms。
准确率高:在出入口场景下,准确率可达95%-97%。
支持多种车牌类型:包括单行蓝牌、单行黄牌、新能源车牌、教练车牌等。
跨平台支持:可在Windows、Linux、MacOS、Android等多个平台上运行。
端到端识别:无需字符分割,直接输出识别结果。
HyperLPR logo
快速安装与使用
Python版本安装
使用pip可以快速安装HyperLPR的Python版本:
python -m pip install hyperlpr3
支持Python 3,可在Windows、Mac、Linux、树莓派等平台上使用。
快速测试
安装完成后,可以使用以下命令进行快速测试:
使用网络图片
lpr3 sample -src https://example.com/test_img.jpg
使用本地图片
lpr3 sample -src images/test_img.jpg -det high
Python代码示例
import cv2
import hyperlpr3 as lpr3
实例化识别器
catcher = lpr3.LicensePlateCatcher()
读取图片
image = cv2.imread("images/test_img.jpg")
打印识别结果
print(catcher(image))
跨平台支持
HyperLPR支持多种平台:
Linux: x86、Armv7、Armv8
MacOS: x86
Android: arm64-v8a、armeabi-v7a
嵌入式开发板:如瑞芯微RV1109/RV1126(RKNPU)
C/C++版本编译与使用
编译依赖
编译C/C++项目需要使用第三方依赖库。主要依赖:
OpenCV 4.0以上版本
MNN 2.0以上版本
Linux/Mac共享库编译
将依赖库放置或链接到项目根目录
执行编译脚本:
sh command/build_release_linux_share.sh
编译后的文件位于build/linux/install/hyperlpr3目录。
Android共享库编译
安装第三方依赖
准备NDK并配置环境变量
执行编译脚本:
sh command/build_release_android_share.sh
编译后的文件位于build/release_android/目录。
Docker编译
也可以使用Docker进行编译,首先构建镜像:
docker build -t hyperlpr_build .
然后启动编译:
docker-compose up build_linux_x86_shared_lib
Android SDK使用
HyperLPR提供了Android SDK的演示项目:hyperlpr3-android-sdk
在Android项目中快速集成:
在根build.gradle中添加JitPack仓库:
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
添加依赖:
dependencies {
implementation 'com.github.HyperInspire:hyperlpr3-android-sdk:1.0.3'
}
在代码中使用:
// 初始化
HyperLPR3.getInstance().init(this, new HyperLPRParameter());
// 执行识别
Plate[] plates = HyperLPR3.getInstance().plateRecognition(bitmap, HyperLPR3.CAMERA_ROTATION_0, HyperLPR3.STREAM_BGRA);
支持的车牌类型
HyperLPR主要支持以下中国车牌类型:
单行蓝牌
单行黄牌
新能源车牌
教练车牌
有限支持:
白色警用车牌
使馆/港澳车牌
双层黄牌
武警车牌
未来计划支持更多类型,如民航车牌、双层军牌等。
技术原理
HyperLPR采用深度学习技术,主要包括以下步骤:
车牌检测:使用轻量级卷积神经网络定位图像中的车牌区域。
车牌矫正:对倾斜的车牌进行仿射变换,使其水平。
字符识别:采用端到端的OCR模型,直接输出车牌号码,无需字符分割。
整个过程采用端到端的方式,大大提高了识别速度和准确率。
应用场景
HyperLPR可广泛应用于以下场景:
智能交通:车辆出入口管理、停车场系统等
安防监控:车辆轨迹追踪、异常行为检测等
智慧城市:交通流量统计、违章抓拍等
移动应用:手机APP车牌识别功能
未来展望
HyperLPR团队计划在以下方面继续改进:
支持快速部署WebApi服务
支持多车牌和双层车牌识别
支持大角度车牌识别
开发更轻量级的识别模型
总结
HyperLPR作为一个高性能的开源车牌识别框架,具有识别速度快、准确率高、跨平台等优势。它为智能交通、安防等领域提供了有力的技术支持。随着深度学习技术的不断进步,相信HyperLPR未来会有更广阔的应用前景。
文章链接:www.dongaigc.com/a/hyperlpr-high-performance-plate-recognition
https://www.dongaigc.com/a/hyperlpr-high-performance-plate-recognition