python车牌识别系统开源代码_python利用百度云接口实现车牌识别的示例

一个小需求---实现车牌识别。

目前有两个想法

1. 调云在线的接口或者使用SDK做开发(配置环境和编译第三方库很麻烦,当然使用python可以避免这些问题)

2. 自己实现车牌识别算法(复杂)

一开始准备使用百度云文字识别C++ SDK来做,发现需要准备curl、jsoncpp和OpenCV,并且curl和jsoncpp需要自己编译,很麻烦,所以换用了python来做,真的是顺畅简单。

1. 安装python环境(我用python3.7)

2020022115183439.jpg

打开安装包无脑安装即可。安装好之后,看一下是否安装成功。

cmd

python --version

2020022115183440.jpg

2. 百度云SDK下载安装及创建应用

查看pip版本(python环境自带,但是要注意版本)

pip --version

2020022115183441.jpg

如果版本不合适,那么自行升级pip

pip install -U pip

安装baidu-aip

pip install baidu-aip

2020022115183442.jpg(安装成功的样子)

现在我们的百度云SDK就安装好了,下来创建应用

登录百度云(没账号注册一下)

2020022115183443.jpg

创建应用

2020022115183444.jpg

自己填一下

2020022115183545.jpg

现在我们就创建好了车牌识别的应用,点击应用列表可查看。

2020022115183546.jpg

这里的APPID、API KEY、Secret Key要在代码中使用。(注意不要泄漏)

3. 编码调接口,实现需求

python代码实现

'''

Statement

1. using the file

2. prepare a image path and call func "get_license_plate(filePath)"

3. you can get a json object

4. get the info from the pbject

example :

{

"log_id": 3583925545,

"words_result": {

"color": "blue",

"number": "苏HS7766"

}

}

'''

from aip import AipOcr

import json

"""get img"""

def get_file_content(filePath):

with open(filePath, 'rb') as fp:

return fp.read()

""" get licsense plate """

def get_license_plate(filePath):

""" APPID AK SK """

APP_ID = '********'

API_KEY = '**************'

SECRET_KEY = '******************'

""" create client """

client = AipOcr(APP_ID, API_KEY, SECRET_KEY)

image = get_file_content(filePath)

""" 调用车牌识别 """

res = client.licensePlate(image)

return res

""" call example """

str = 'C:\\Users\\***\\Desktop\\big.jpg' """ 照片绝对地址 """

res = get_license_plate(str)

print('车牌号码:' + res['words_result']['number'])

print('车牌颜色:' + res['words_result']['color'])```

代码分解

引入库

```python

from aip import AipOcr """百度云SDK"""

import json """json库"""

创建客户端

""" APPID AK SK 自己创建的应用中的数据"""

APP_ID = '*******'

API_KEY = '***************'

SECRET_KEY = '******************'

""" create client """

client = AipOcr(APP_ID, API_KEY, SECRET_KEY)```

调用接口得到车牌识别结果

```python

image = get_file_content(filePath)

""" 调用车牌识别 """

res = client.licensePlate(image)

这里的res是一个json对象/一个dict

例子

{

"log_id": 3583925545,

"words_result": {

"color": "blue",

"number": "苏HS7766"

}

}

可以使用res['listname']['listname']形式获取字典数据

print('车牌号码:' + res['words_result']['number'])

print('车牌颜色:' + res['words_result']['color'])

至此,我们就实现了使用百度云SDK,通过编写python代码调用接口的车牌识别需求。

2020022115183547.jpg

参考文档

到此这篇关于python利用百度云接口实现车牌识别的示例的文章就介绍到这了,更多相关python 百度云车牌识别内容请搜素python博客以前的文章或下面相关文章,希望大家以后多多支持python博客!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/499068.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c 包含其他文件_C/C++编程笔记:C/C++的编译和链接,计算机专业大学生必备知识...

C/C文件C/C程序文件包括 .h .c .hpp .cpp,其中源文件(.c .cpp)是基本的编译单元,头文件(.h .hpp)不会被编译器编译。C/C项目构建(build)过程,分为以下几个步骤 预处理 → 编译 → 链接。预编译预编译的过程可以理解为编译器(实际上是预处理器…

python函数命名空间_Python中的函数 ​命名空间 作用域和局部函数 匿名(lambda)函数...

函数 是 Python中最重要的代码组织和复用手段函数用def关键字声明,return关键字返回: def function(x, y, z1.5): if z > 1: return z * (x y) else: return z / (x y) ##可以拥有多条return语句,如果到达函数末尾时没有遇到任何一条ret…

二建施工管理思维导图_备考二建不丢分?二建思维导图全程指导,知识点记忆快、不分散...

关键字:二建 一建 建造师考试 建造师证书 建筑 工程 建筑项目 法规 管理 市政 公路目前,距离2020年二级建造师考试的时间越来越近,很多准备参加二建考试的朋友也开始紧张起来了。二建考试分为公共科和专业科,公共科为法规和管理&a…

机器学习线性回归算法实验报告_吴恩达机器学习系列4:线性回归的梯度下降算法...

之前我们已经学过了线性回归、代价函数和梯度下降,但是他们就像一个人的胳膊和腿,只有组合在一起才会成为一个「完整的人」,这个「完整的人」就是一个机器学习算法,让我们一起来学习第一个机器学习算法吧。这个机器学习算法叫做线…

树莓派python3_【树莓派】给ubuntu18安装python3.7

准备工作 安装工具 sudo apt update sudo apt upgrade sudo apt install gcc sudo apt install g sudo apt-get install libffi-dev sudo apt install build-essential checkinstall sudo apt install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-de…

c++mfc编写实验_零基础学Windows窗口图形界面编程(不用MFC),菜鸟学完变身高手,敢与专业媲美...

又一门新的计算机课上线啦!什么课?看下面视频(以下视频是本课第一讲)用什么语言我们声明一下(这个在我们课上也跟同学强调):不要为用什么语言掐架!那是初学者的行为,为高手所不为。第二,我们这门课讲的不是…

超级计算机阿波罗11,Apollo 8000推进超算科学发展

Apollo 8000推进超算科学发展超级计算技术将理论转移到模拟数字环境和计算机分析,一直被应用于加快科学和工程领域的突破。最新的高性能计算技术带来的创新让企业客户也能够访问这些程序和应用、强化研发能力并获得竞争优势。Apollo 8000推进超算科学发展作为散热媒…

找不到r低版本_R的多进程使用与改进

R的多进程使用与改进在R中需要使用多进程时,常见方案是使用foreach和doParallel的组合。foreachforeach包中最重要的是foreach函数,该函数创建一个foreach对象,随后串行或并行的执行表达式。library(foreach)?foreachout:foreach( ..., .c…

html让图片移动到一定位置_百度移动搜索优化指南2.0

百度移动搜索优化指南 2.0前期准备工作【域名】与 PC 网站一样,域名是用户对一个网站的第一印象。一个好的移动域名,不仅容易记忆、易于输入,还能方便用户向其他人推荐。域名应尽量简短易懂,越短的域名记忆成本越低,越…

32位mysql安装包_关于Mysql的安装

在安装之前,为保证能够安装成功,请您尝试以下操作:1、卸载原有mysql;2、搜索C:盘中是否有残余的mysql文件,主要是log文件,全部删除;3、为保证能够正常连接服务器,尽量关闭电脑防火墙&#xff1b…

山东初二计算机会考,2017山东莱芜初二会考科目时间安排:6月14日

考试科目初中学业考试科目、分值和考试时长分别为:语文、数学、英语三科满分均为120分,考试时长均为120分钟,均按原始得分计入总分;思想品德、化学、历史、地理、生物满分均为100分,考试时长均为90分钟,均按考试分数50…

安装 ubuntu18_Ubuntu18.04安装docker及nvidia docker

Ubuntu18.04安装docker及nvidia docker 2之前的时候记得安装完docker之后还需要安装单独的nvidia docker 2,现在的话只需要安装nvidia container toolkit即可1、docker安装官网上又详细的介绍Install Docker Engine on Ubuntu​docs.docker.com或者sudo apt-get upd…

google账号解除游戏绑定_成长守护平台解除实名认证 公众号解绑操作流程

微信成长守护平台是一款培养孩子健康游戏习惯的游戏管控工具,那么微信成长守护平台怎么解除王者荣耀防沉迷呢?接下来小编就给大家带来了解除实名认证方法介绍,一起来看看吧!先简单了解一下游戏成长守护平台,它的运作方…

混凝土地坪机器人_地面整平机器人:精准又高效,轻松摆“平”混凝土

随着国内经济不断发展,工业厂房、大型广场、体育场、停车场等大面积场地的建设需求越来越多。这类场地大多使用混凝土现场浇筑地基,然后再覆盖地砖或地坪漆,因此对基础层的平整度提出了很高的要求。传统的混凝土地坪施工方法是人工找平&#…

大学计算机成绩统计表怎么做,wps怎么制作成绩表 wps设计成绩统计表的步骤方法...

当我们使用wps统计数据时,如果我们需要制作一个统计成绩的表格,可是怎么制作成绩表吗?其实方法非常的简单,下面教程之家网为大家分享wps设计成绩统计表的步骤方法,不会制作的朋友可以参考下面的步骤方法自己制作即可。wps怎么制作…

chackbox的值 php获取_最详细最全的PHP面试题(附答案)

这篇文章介绍的内容是关于最全最详细的PHP面试题(带有答案),有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下相关推荐:程序猿的生活:面试12家公司,收获9个offer,2020年PHP 面试问题…

python适合安装什么开发环境_python开发环境安装

1、首先安装python-3.4.2.msi,此为python主程序,双击安装,根据自身的情况做选择,也可以使用默认设置,一路next也没什么问题。 2、设置环境变量>编辑Path,在最后加上你的python安装路径。我的安装路径是&…

服务器iis的作用,IIS是什么 IIS服务组件有什么作用

在网上或者一些技术社区我们经常会遇到一些讨论IIS问题文章。那么究竟IIS是什么?有什么用呢?不少电脑爱好者对IIS都充满兴趣,以下脚本之家小编为大家简单介绍下。IIS是什么?IIS是Internet Information Services英文全称的缩写,是…

服务器ssr进程启动怎么运行,要SSR? NUXT项目从初始化到部署服务器流程全记录

首先,简单介绍一下, nuxt.js 是什么Nuxt.js 是一个 Vue.js的SSR通用框架,最常用的就是用来作SSR(服务器端渲染)。首先说下 SSR,最近很热的词,意为 Server Side Rendering(服务端渲染),目的是为了解决单页面应用的 SEO 优化 的问题…

4修改初始值_Java基础语法 --4(连载)

第一部分 : IDEA开发工具参见 :IEDA的安装请参考文件夹PPT中的 04_IDEA.ppt1.数组1.1 数组介绍​ 数组就是存储数据长度固定的容器,存储多个数据的数据类型要一致。 1.2 数组的定义格式1.2.1 第一种格式​ 数据类型[] 数组名​ 示例:int[] ar…