Linux人工智能开发实例 课件 6.3 车牌识别管理功能开发_第1页
Linux人工智能开发实例 课件 6.3 车牌识别管理功能开发_第2页
Linux人工智能开发实例 课件 6.3 车牌识别管理功能开发_第3页
Linux人工智能开发实例 课件 6.3 车牌识别管理功能开发_第4页
Linux人工智能开发实例 课件 6.3 车牌识别管理功能开发_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第6章智能车牌识别Linux开发案例

6.3车牌识别管理功能开发智能车牌识别Linux开发案例Flask是一个使用Python编写的轻量级Web应用框架。其WSGI工具箱采用Werkzeug,模板引擎则使用Jinja2。Flask使用BSD授权。Flask主要包括Werkzeug和Jinja2两个核心函数库,分别负责业务处理和安全方面的功能。Werkzeug库功能比较完善,支持URL路由请求集成,一次可以响应多个用户的访问请求;支持Cookie和会话管理,通过身份缓存数据建立长久连接关系,并提高用户访问速度;支持交互式Javascript调试,提高用户体验;可以处理HTTP基本事务,快速响应客户端推送过来的访问请求。Jinja2库支持自动HTML转移功能,能够很好控制外部黑客的脚本攻击。Flask的基本模式为在程序里将一个视图函数分配给一个URL,每当用户访问这个URL时,系统就会执行给该URL分配好的视图函数,获取函数的返回值并将其显示到浏览器上,其工作过程如图所示。6.3.1Flask应用框架简介客户端WSGIWerkzeug应用请求反应返回调用智能车牌识别Linux开发案例route()是一个路由,其实是一个装饰器,输入URL,会帮在这个URL下执行对应的方法。接着是函数主体,可以写方法也可以调用其他方法的返回值,最后返回到浏览器上显示的信息最后用run()函数来让应用运行在本地服务器上。其中if__name__=='__main__':确保服务器只会在该脚本被Python解释器直接执行的时候才会运行,而不是作为模块导入的时候。debug=True开启了调试模式,相当于在发生错误时提供一个相当有用的调试器。host=’‘可以允许同一个局域网内别的用户访问,这个方法让操作系统监听所有公网IP。port自定义端口。6.3.2Flask安装与测试(详细Flask安转步骤请查看文档)序号参数与描述1host:要监听的主机名。默认为(localhost)。设置为“”以使服务器在外部可用2port:默认值为50003debug:默认为false。

如果设置为true,则提供调试信息4options:要转发到底层的Werkzeug服务器。智能车牌识别Linux开发案例运行页面测试程序,上面Python脚本是从Pythonshell执行的。6.3.2Flask安装与测试(详细Flask安转步骤请查看文档)PythonHello.pyPythonshell中的消息通知如图所示。*Runningon:5000/(PressCTRL+Ctoquit)在浏览器中打开上述URL(localhost:5000)。将显示“HelloWorld”消息。智能车牌识别Linux开发案例通过opencv读取进图像进行车牌检测,然后将检测的车牌进行字符识别。软件设计如下:1)导入OpenCV模块cv2,numpy函数库,os模块,imutils图像操作函数库2)opencv加载图片或者读取图片3)detectPlateRough函数使用opencv的已经训练现成的级联分类器进行车牌检测;4)fineMapping函数通过训练好的深度学习模型检测车牌中的字符;6.3.3Flask应用分析LRP识别程序分析将HyperLPR读取摄像头的图像数据,通过flask框架入口,把处理后的图片结果返回给页面并显示。软件设计如下:1)导入必要的库,初始化flask应用程序;2)通过frame=camera.get_frame()方法,不断从相机返回帧作为响应块;3)通过video_feed()方法完成路由返回流式响应;4)当用户访问给定的应用程序域时通过render_template()进行渲染;5)启动Flask服务器;(详细LRP识别以及Flask源代码请查看文档)Flask程序分析智能车牌识别Linux开发案例1、Flask安装与测试(参考上述ppt)6.3.4开发实践:Flask视频车牌识别(详细源码分析请查看文档)2、网页显示图片车牌识别在网关的HyperLPR源码目录中编写网页版本图片测试程序pic_web_test.py。参考代码见“FlaskLPR”目录下pic_web_test.py文件。运行结果如左图,在开发电脑主机浏览器中输入网关服务器地址与服务端口号70:5000,网页中会显示识别出的车牌号码,如右图所示智能车牌识别Linux开发案例3、网页视频流车牌识别6.3.4开发实践:Flask视频车牌识别(详细源码分析请查看文档)将“FlaskLPR”目录下plate.tgz压缩文件通过moba程序复制到网关的用户主目录,通过sudotar–xzvfplate.tgz命令进行解压。程序目录如图所示。运行主程序python3main_web_test.py。程序会启动Flask服务器,显示如左图所示。在主机浏览器中输入网关服务器地址与服务端口号70:5000,点击页面刷新按钮,网页中会显示实时视频画面,把车牌对准摄像机(注意:车牌要完整,端正,光线充足)识别程序会在画面上绘制边框与显示识别到的车牌号码,如右图所示。智能车牌识别Linux开发案例6.3.5小结本节了解了Flask应用框架,学习了FlaskWeb服务器的安装与测试,基于LRP的识别程序分析,Flask视频流显示编程开发。最后通过Fla

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论