前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >一款开源的车牌号码识别系统OpenALPR

一款开源的车牌号码识别系统OpenALPR

作者头像
mythsman
发布于 2022-11-14 07:36:12
发布于 2022-11-14 07:36:12
2.3K01
代码可运行
举报
运行总次数:1
代码可运行

关于车牌号码的识别,其实研究也很多了。但是对于普通的开发者而言,本身不想去研究这些算法层面的东西,只是想能够直接应用来做我们自己需要的事情。虽然很多网站提供了Api接口,但是毫无疑问这是要money的。之前看到国人发的一片博客介绍他自己写的开源车牌识别系统叫Easypr,我自己也下载下来研究了一下。然而使用的时候发现错误有很多,而且没有正规的接口文档,做的也特别粗糙,显然不太适合直接使用。百度不到我就直接去google,果然还是发现了老外写的一款开源的识别软件--openalpr(Open Automatic License Plate Recognition 开源自动车牌识别),发布在github上。拿过来测试之后发现效果还挺好的,而且文档清楚,虽然不能识别中文,但是对字母和数字的识别准确性还是挺好的。不管怎么说,先记下来以防以后用到。

这个程序有很多版本,有各种语言的接口,也有Linux下的二进制文件。鉴于现在不需要用来开发,我们直接用他编译成的二进制命令即可。当然如果有需要,也可以去下载他的源码,调用他的函数库。如果有闲工夫的话也可以尝试这改一改。。。。让他能识别中文,造福国人。

安装:

使用github上提供的最简单的方法--

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
wget -O - http://deb.openalpr.com/openalpr.gpg.key | sudo apt-key add -
echo "deb http://deb.openalpr.com/master/ openalpr main" | sudo tee /etc/apt/sources.list.d/openalpr.list
sudo apt-get update
sudo apt-get install openalpr openalpr-daemon openalpr-utils libopenalpr-dev

帮助:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
alpr  [-c <country_code>] [--config <config_file>] [-n <topN>] [--seek
         <integer_ms>] [-p <pattern code>] [--clock] [-d] [-j] [--]
         [--version] [-h] <image_file_path>

Where: 

   -c <country_code>,  --country <country_code>
     Country code to identify (either us for USA or eu for Europe). 
     Default=us

   --config <config_file>
     Path to the openalpr.conf file

   -n <topN>,  --topn <topN>
     Max number of possible plate numbers to return.  Default=10

   --seek <integer_ms>
     Seek to the specified millisecond in a video file. Default=0

   -p <pattern code>,  --pattern <pattern code>
     Attempt to match the plate number against a plate pattern (e.g., md
     for Maryland, ca for California)

   --clock
     Measure/print the total time to process image and all plates. 
     Default=off

   -d,  --detect_region
     Attempt to detect the region of the plate image.  [Experimental] 
     Default=off

   -j,  --json
     Output recognition results in JSON format.  Default=off

   --,  --ignore_rest
     Ignores the rest of the labeled arguments following this flag.

   --version
     Displays version information and exits.

   -h,  --help
     Displays usage information and exits.

   <image_file_path>
     Image containing license plates

   OpenAlpr Command Line Utility

效果:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
myths@myths-X450LD:~/Download$ alpr a.jpg
plate0: 10 results
    - EHL5747	 confidence: 90.5541
    - EHL577	 confidence: 83.4746
    - EHLS747	 confidence: 82.0519
    - EH5747	 confidence: 80.6372
    - EHLB747	 confidence: 78.9456
    - EHE5747	 confidence: 78.337
    - EHC5747	 confidence: 77.903
    - EHL747	 confidence: 77.4477
    - EBL5747	 confidence: 76.8316
    - EL5747	 confidence: 75.6551

对于正面的牌照识别的效果还是很好的,但是对于中国的车牌来说识别的效果就很差了。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
程序常用配置文件格式介绍
不管是移动应用、桌面程序还是后台服务,经常需要从配置文件中读取配置信息,进行程序初始化和改变运行时的状态。以什么要的格式来存储配置信息,这是开发人员需要面临的一个问题。常用的配置文件格式主要有:
恋喵大鲤鱼
2022/05/09
3.3K0
程序常用配置文件格式介绍
INI配置文件格式详解与实战指南
本文深入解析INI配置文件的格式规范,涵盖基本语法、段落结构、转义机制等核心要素,并提供Python/Go/Node.js等多语言解析方案。通过实际案例演示INI文件的编写技巧,帮助开发者快速掌握这一经典配置格式的应用。
奶油话梅糖
2025/04/30
1220
Springboot配置文件
• key: value;kv之间有空格 • 大小写敏感 • 使用缩进表示层级关系 • 用:来表示一个层级的结束 • 缩进不允许使用tab,只允许空格 • 缩进的空格数不重要,只要相同层级的元素左对齐即可 • '#'表示注释 • 字符串无需加引号,如果要加,''与""表示字符串内容 会被 转义/不转义
名字是乱打的
2021/12/23
2980
配置文件格式 JSON 快速上手
JSON(JavaScript Object Notation) 是轻量级的文本数据交换格式,独立于语言,具有自我描述性。JSON 类似于 XML,但比 XML 更小、更快,更易解析。
恋喵大鲤鱼
2024/07/21
1520
配置文件格式 XML 快速上手
XML 文档结构是一种树结构,它从“根部”开始,然后扩展到“枝叶”。XML 文档必须有一个唯一的根结点,根结点包含所有其它结点。所有结点均可拥有文本内容和属性(名称/值的对)。XML 结点也叫做 XML 元素。
恋喵大鲤鱼
2024/07/21
1430
YAML 快速上手
连字符前可以没有缩进,也就是说下面这种写法也是 OK 的,但是还是建议缩进,因为更加易读。
恋喵大鲤鱼
2024/06/17
3210
配置文件格式 INI 快速上手
INI 的全称是 Initialization,即为初始化文件,最早是 Windows 系统配置文件所采用的格式。
恋喵大鲤鱼
2024/07/22
4920
TOML语言配置文件入门
最近在配置算子的时候,一直用着一种配置文件,而且有着自己奇奇怪怪的语法,起初没想多以为是公司自己独创的语言。后来经提醒发现是TOML语言,由于没怎么做过开发,之前从来没听说过这个语言,趁此机会了解学习一下。
Mirza Zhao
2023/10/26
1.9K2
JSON5 格式标准 Data Exchange Format 官方文档 中英双语
The JSON5 Data Interchange Format is a proposed extension to JSON that aims to make it easier for humans to write and maintain by hand. It does this by adding some minimal syntax features directly from ECMAScript 5.1.JSON5 数据交换格式是一个提议的 JSON 扩展,旨在通过直接添加一些来自 ECMAScript 5.1 的最小语法特性,使人类更容易手动编写和维护。
WTSolutions
2025/03/30
1290
【Spring Boot】003-yaml语法
YAML是 "YAML Ain't a Markup Language" (YAML不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:"Yet Another Markup Language"(仍是一种标记语言);
訾博ZiBo
2025/01/06
810
SpringBoot系列之YAML配置用法学习笔记
配置文件的作用:修改SpringBoot自动配置的默认值,主要是默认值,因为SpringBoot启动时会自动加载很多默认配置,详细的可以参考我之前博客源码学习系列之SpringBoot自动配置
SmileNicky
2019/11/04
6970
配置文件
YAML 是 "YAML Ain't Markup Language"(YAML 不是一种标记语言)的递归缩写。在开发的这种语言时,YAML 的意思其实是:"Yet Another Markup Language"(仍是一种标记语言)。
用户9615083
2022/12/25
7560
配置文件
深入对比TOML,JSON和YAML
坦率地说,在我开始与Hugo TOML合作之前,我感到羞耻是一个需要发现的新领域,但我对YAML和JSON非常熟悉。本文将帮助您了解如何通过不同的数据格式构建数据。
sunsky
2020/08/20
2.8K0
YAML+PyYAML笔记 3 | YAML集合、结构、标量、标记使用
虫无涯
2023/07/28
5280
SpringBoot——深入了解之配置文件
一.配置文件 SpringBoot使用一个全局的配置文件,配置文件名是固定的; •application.properties •application.yml
IT工作者
2022/02/09
4370
YAML 语言入门教程 转
YAML 仍然是一门标记性语言,但为了强调这门语言以数据为中心,而不是以标记语言为中心。采用反向缩略语重新命名。
wuweixiang
2018/08/14
1.2K0
第二节,Springboot自定义配置文件
配置文件的作用:修改SpringBoot自动配置的默认值;SpringBoot在底层都给我们自动配置好;
DencyCheng
2018/11/05
6560
[译]Python 和 TOML:新最好的朋友 (1) 了解TOML
TOML[2](Tom's Obvious Minimal Language)是一种相当新的配置文件格式。Python社区在过去几年中已经接受了它,许多流行的工具都使用TOML 进行配置,您将在构建和分发自己的包时可能就会使用 pyproject.toml 。
一只大鸽子
2024/03/14
7910
[译]Python 和 TOML:新最好的朋友 (1) 了解TOML
关于JS字面量及其容易忽略的12个小问题
JS这种语言一不小心就会写错。为什么前端技术专家工资那么高,可能要解决的疑难杂症最多吧。
LIYI
2019/09/02
3.1K0
关于JS字面量及其容易忽略的12个小问题
一个 yml 文件居然能玩出这么多花样!
YAML是"YAML Ain’t a Markup Language"(YAML不是一种标记语言)的递归缩写。YAML的意思其实是:“Yet Another Markup Language”(仍是一种标记语言)。主要强度这种语音是以数据为中心,而不是以标记语音为重心,例如像xml语言就会使用大量的标记。
Guide哥
2021/04/30
1.8K0
相关推荐
程序常用配置文件格式介绍
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验