广告
返回顶部
首页 > 资讯 > 后端开发 > Python >如何用Python识别车牌的示例代码
  • 652
分享到

如何用Python识别车牌的示例代码

2024-04-02 19:04:59 652人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录简介实现方式自己实现第三方接口具体实现SDK 安装创建应用具体实现最后车牌识别在高速公路中有着广泛的应用,比如我们常见的电子收费(ETC)系统和交通违章车辆的检测,除此之外像小区

车牌识别在高速公路中有着广泛的应用,比如我们常见的电子收费(ETC)系统和交通违章车辆的检测,除此之外像小区或地下

车库门禁也会用到,基本上凡是需要对车辆进行身份检测的地方都会用到。

在这里插入图片描述

简介

车牌识别系统(Vehicle License Plate Recognition)是计算机视频图像识别技术在车辆牌照识别中的一种应用,通常一个车牌识

别系统主要包括以下这四个部分:

  • 车辆图像获取
  • 车牌定位
  • 车牌字符分割
  • 车牌字符识别

我们再来看一下百科中对车牌识别技术的描述:

车牌识别技术要求能够将运动中的汽车牌照从复杂背景中提取并识别出来,通过车牌提取、图像预处理、特征提取、车牌字符识

别等技术,识别车辆牌号、颜色等信息,目前最新的技术水平为字母和数字的识别率可达到 99.7%,汉字的识别率可达到 99%。

在这里插入图片描述

实现方式

我们这里不做太复杂的车辆动态识别,只演示从图像中识别车牌信息,车牌识别功能的实现方式大致分为两种,一种是自己编写

代码实现,另一种是借助第三方 api 接口实现。

自己实现

如果我们想要通过 python 自己手动编码实现车牌识别功能,可以借助一些 Python 库,比如:OpenCVTensorflow 等,这种方

式因为每一个功能点都需要我们自己编码实现,所有会相对复杂一些,另一方面如果我们想要保证识别的准确性,可能需要做大

量的实验,也就是说会花费更多的时间。

第三方接口

现在已经有一些第三方平台实现好了车牌识别的功能,并且他们对外提供了 API 接口,我们只需要调用他们提供的接口即可,这

种方式实现就相对简单了一些,并且通常接口提供方对外提供的接口功能的准确性也是基本可以保证的,原因很简单,如果接口

功能太差的话,一是自己打脸,还有就是基本不会有什么人使用,也就失去了接口对外提供的价值了,另外第三方接口可能会收

取一定费用,因此,如果现实中我们具体实现的话要综合考虑。

在这里插入图片描述

具体实现

综合上面的情况,我们这里采用第三方接口的方式来实现车牌识别的功能,接口提供方我们选择百度云提供的接口,百度云接口

提供了免费额度,简单来说就是每天可以免费使用多少次,如果超过了这个次数就需要交钱什么的了,文档地址为:https://cloud.baidu.com/doc/OCR/index.html,下面来看一下具体实现过程。

SDK 安装

百度云 SDK 对多种语言提供了支持,比如:Python、Java、c++iOSAndroid 等,这里我们安装 Python 版的 SDK,安装很

简单,使用 pip install baidu-aip 命令即可,SDK 支持 Python 的版本为:2.7+ 与 3.x,SDK 目录结构如下:

├── README.md
├── aip                   // SDK 目录│
├── __init__.py       // 导出类│   
├── base.py           // aip 基类│   
├── Http.py           // http 请求│   
└── ocr.py //OCR└── setup.py              // setuptools 安装

创建应用

SDK 安装好后,我们接着需要创建应用了,这里需要一个百度账号或百度云账号,如果没有的话自己注册一个即可,登录及注册

地址为:https://login.bce.baidu.com/?redirect=http%3A%2F%2Fcloud.baidu.com%2Fcampaign%2Fcampus-2018%2Findex.html,登录之后,我们将鼠标移动到登录头像位置,接着在弹出菜单中单击用户中心,如下图所示:

在这里插入图片描述

如果是首次进入的话,勾选一下相应信息,如下图所示:

在这里插入图片描述

信息勾选完了之后,点击保存按钮。

接着将鼠标移动到左侧栏中 > 符号位置,再依次选择人工智能和文字识别,如下图所示:

在这里插入图片描述

点击之后会进入到下图中:

在这里插入图片描述

我们点击创建应用,进入下图中:

在这里插入图片描述

这里我们只需要填一下应用名称和下面的应用描述即可,填写完毕之后点击立即创建。

创建完后,我们再返回应用列表,如下图所示:

在这里插入图片描述

这里我们需要用到三个值:AppID、API Key 和 Secret Key。

在这里插入图片描述

具体实现

应用创建完了,我们就可以调用接口实现车牌识别功能了。

首先,我们要创建 AipOcr,AipOcr 是 OCR 的 Python SDK 客户端,为使用 OCR 的开发人员提供了一系列的交互方法,代码实

现也比较简单,如下所示:

from aip import AipOcr
# 自己的 APPID AK SKAPP_
ID = '自己的 App 
ID'API_KEY = '自己的 Api Key'
SECRET_KEY = '自己的 Secret Key'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)

在上面代码中,常量 APP_ID、API_KEY 和 SECRET_KEY 就是我们在查看应用列表时说的需要用到的常量值,这些值均为字符

串,用于标识用户,为访问做签名验证。

如果我们需要配置 AipOcr 的网络请求参数,可以在构造 AipOcr 之后调用接口设置参数,目前支持两个参数,看一下代码实现:

# 建立连接的超时时间,单位为毫秒
client.setConnectionTimeoutInMillis(5000)
# 通过打开的连接传输数据的超时时间,单位为毫秒client.setSocketTimeoutInMillis(5000)

总的来说通过接口方式实现车牌识别功能是比较简单的,以如下图为例:

在这里插入图片描述

实现代码如下:

from aip
import AipOcrAPP_ID = '自己的 App ID'
API_KEY = '自己的 Api Key'
SECRET_KEY = '自己的 Secret Key'#创建客户端对象
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)# 建立连接的超时时间, 单位为毫秒
client.setConnectionTimeoutInMillis(5000)# 通过打开的连接传输数据的超时时间, 单位为毫秒
client.setSocketTimeoutInMillis(5000)# 读取图片
def get_file_content(filePath): with open(filePath, 'rb') as fp: return
  fp.read() image = get_file_content('car.jpeg')
  res = client.licensePlate(image) 
  print('车牌号码:' + res['Words_result']['number']) print('车牌颜色:' + res['words_result']['color'])

执行结果:

车牌号码:川QK9777车牌颜色:blue

上面代码实现的是对一张图片中的一个车牌进行识别,当然接口还支持对一张图片中的多个车牌进行识别,只需使用

licensePlate(image, options) 即可, 以如下图为例:

在这里插入图片描述

实现代码如下:

from aip import AipOcr
APP_ID = '自己的 App ID'API_KEY = '自己的 Api Key'SECRET_KEY = '自己的 Secret Key'# 创建客户端对象client = AipOcr(APP_ID, API_KEY, SECRET_KEY)# 建立连接的超时时间,单位为毫秒client.setConnectionTimeoutInMillis(5000)# 通过打开的连接传输数据的超时时间,单位为毫秒client.setSocketTimeoutInMillis(5000)
# 读取图片def get_file_content(filePath):    with open(filePath, 'rb') as fp:        return fp.read()
image = get_file_content('cars.png')options = {}# 参数 multi_detect 默认为 falseoptions['multi_detect'] = 'true'res = client.licensePlate(image, options)for wr in res['words_result']:    print('车牌号码:' + wr['number'])    print('车牌颜色:' + wr['color'])

执行结果:

车牌号码:京N6HZ61
车牌颜色:blue
车牌号码:鲁NS1A26
车牌颜色:blue

最后

本文我们先对车牌识别进行了一些介绍,之后利用百度云接口实现了单个和多个车牌的识别功能,通过本文我们可以对车牌识别的相关概念和具体实现有一些了解,更多相关Python 识别车牌内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 如何用Python识别车牌的示例代码

本文链接: https://www.lsjlt.com/news/117396.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何用Python识别车牌的示例代码
    目录简介实现方式自己实现第三方接口具体实现SDK 安装创建应用具体实现最后车牌识别在高速公路中有着广泛的应用,比如我们常见的电子收费(ETC)系统和交通违章车辆的检测,除此之外像小区...
    99+
    2022-11-10
  • YOLOv5车牌识别案例代码分析
    本文小编为大家详细介绍“YOLOv5车牌识别案例代码分析”,内容详细,步骤清晰,细节处理妥当,希望这篇“YOLOv5车牌识别案例代码分析”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1 目标检测概念目标检测是计算...
    99+
    2023-07-05
  • 怎么用Python一行代码识别车牌号码
    这篇“怎么用Python一行代码识别车牌号码”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么用Python一行代码识别车牌...
    99+
    2023-07-05
  • Unity实现车型识别的示例代码
    接口介绍: 该请求用于检测一张车辆图片的具体车型。即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片的车辆品牌及型号。 创建应用: 在产品服务中搜索图像识别,创建应用,获取A...
    99+
    2022-11-12
  • 如何使用Python检测和识别车牌?
    ​译者 | 布加迪审校 | 孙淑娟车牌检测与识别技术用途广泛,可以用于道路系统、无票停车场、车辆门禁等。这项技术结合了计算机视觉和人工智能。本文将使用Python创建一个车牌检测和识别程序。该程序对输入图像进行处理,检测和识别车牌,最后显示...
    99+
    2023-05-14
    Python 识别 车牌
  • Python——基于YOLOV8的车牌识别(源码+教程)
    目录 一、前言 二 、完成效果 三、 项目包 四、运行项目 (教程) 一、前言 YOLOv8+LPRNet车牌定位与识别https://www.bilibili.com/video/BV1vk4y1E7MZ/ 最近做了有一个车牌识...
    99+
    2023-09-13
    YOLO python 人工智能 深度学习
  • python实现图像识别的示例代码
    一、安装库 首先我们需要安装PIL和pytesseract库。 PIL:(Python Imaging Library)是Python平台上的图像处理标准库,功能非常强大。 pyte...
    99+
    2022-11-11
  • Python+Opencv实现数字识别的示例代码
    一、什么是数字识别?   所谓的数字识别,就是使用算法自动识别出图片中的数字。具体的效果如下图所示: 上图展示了算法的处理效果,算法能够自动的识别到LC...
    99+
    2022-11-11
  • Python实现识别花卉种类的示例代码
    目录百度图像识别读取照片文件整理分类照片大家好,我是小五 “无穷小亮的科普日常”经常会发布一些鉴定网络热门生物视频,既科普了生物知识,又满足观众们的猎奇心理。...
    99+
    2022-11-10
  • python通过pillow识别动态验证码的示例代码
    目录环境配置 安装 pillow(PIL)库识别过程生活中,我们在登录微博,邮箱的时候,常常会碰到验证码。在工作时,如果想要爬取一些数据,也会碰到验证码的阻碍。本次试验将带领大家认识...
    99+
    2022-11-12
  • Python实现识别图像中人物的示例代码
    目录前言环境部署代码总结前言 接着上一篇:AI识别照片是谁,人脸识别face_recognition开源项目安装使用 根据项目提供的demo代码,调整了一下功能,自己写了一个识别人脸...
    99+
    2022-11-12
  • python+opencv实现的简单人脸识别代码示例
    # 源码如下: #!/usr/bin/env python #coding=utf-8 import os from PIL import Image, ImageDraw import cv def...
    99+
    2022-06-04
    示例 代码 简单
  • Python实现识别图片为文字的示例代码
    目录1、环境准备2、业务实现3、效果展示本来想着做一个将图片识别为文字的小功能,本想到Google上面第一页全是各种收费平台的广告。 这些平台提供的基本都是让我们通过调用相关的三方接...
    99+
    2022-11-11
  • Python三十行代码实现简单人脸识别的示例代码
    一、库介绍 opencv,face_recognition,numpy,以及dlib 注意: 安装opencv速度可能过慢,需要更换国内镜像源,参考:https://www.jb...
    99+
    2022-11-11
  • Unity实现动物识别的示例代码
    接口介绍: 识别近八千种动物,接口返回动物名称,并可获取识别结果对应的百科信息;还可使用EasyDL定制训练平台,定制识别分类标签。适用于拍照识图、幼教科普、图像内容分析等场景 创建...
    99+
    2022-11-13
  • Unity实现菜品识别的示例代码
    接口介绍: 识别超过9千种菜品,支持客户创建属于自己的菜品图库,可准确识别图片中的菜品名称、位置、卡路里信息,并获取百科信息,适用于多种客户识别菜品的业务场景中。 创建应用: &nb...
    99+
    2022-11-13
  • Unity实现红酒识别的示例代码
    接口介绍: 识别图像中的红酒标签,返回红酒名称、国家、产区、酒庄、类型、糖分、葡萄品种、酒品描述等信息,可识别数十万中外红酒;支持自定义红酒图库,在自建库中搜索特定红酒信息。 创建应...
    99+
    2022-11-13
  • Android使用百度语音识别的示例代码
    本文使用百度语音识别,完成语音识别的功能,使用百度语音识别,先要申请APP ID,这个直接到百度网站上有说明文档,本文不再赘述。申请之后,下载SDK包,按照百度官网要求,合并l...
    99+
    2022-06-06
    示例 语音识别 Android
  • Python实现极限车神游戏的示例代码
    目录导语正文一、环境准备二、代码实现三、效果实现导语 今天小编要为大家介绍一款小编自己用代码码出来的赛车风格的打字小游戏 取名暂定为《极限车神》打字小游戏。 这款Pygame小游戏在...
    99+
    2023-02-14
    Python实现极限车神游戏 Python极限车神游戏 Python 游戏
  • PyTorch实现手写数字识别的示例代码
    目录加载手写数字的数据数据加载器(分批加载)建立模型模型训练测试集抽取数据,查看预测结果计算模型精度自己手写数字进行预测加载手写数字的数据 组成训练集和测试集,这里已经下载好了,所以...
    99+
    2022-11-11
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作