- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
车牌识别
课程引入代码分析代码演示一二三目录
能力目标(1)能够完成车牌的识别。知识目标(1)了解车牌识别原理。素质目标(1)具有严谨求实精神;(2)具有自主学习的能力;(3)具备5S职业素养。课程目标
一课程引入车牌自动识别模块是现代社会智能交通系统(ITS)的重要组成部分,是图像处理和模式识别技术研究的热点,具有非常广泛的应用。车牌识别主要包括以下三个步骤:车牌区域定位、车牌字符分割、车牌字符识别。本案例通过对采集的车牌图像进行灰度变换、边缘检测、腐蚀及平滑处理等过程进行车牌图像预处理,并由此得出一种基于车牌颜色纹理特征的车牌定位方法,最终实现了车牌区域定位。车牌字符分割是为了方便后续对车牌字符进行匹配,从而对车牌进行识别。本案例采用了模板匹配的方法,对输出的字符图像和模板库里的模板进行匹配以得到对应车牌字符的具体信息。
二代码分析在Opencv内,使用函数cv2.Sobel()实现Sobel算子运算,其语法形式为:Dst=cv2.Sobel(src,ddepth,dx,dy[,ksize[,scale[,delta[,borderType]]]])式中:dst代表目标图像。src代表原始图像。ddepth代表输出图像的深度。其具体对应关系如表所示。sobel算子
二代码分析dx代表x方向上的求导阶数。dy代表y方向上的求导阶数。ksize代表Sobel核的大小。该值为-1时,则会使用Scharr算子进行运算。scale代表计算导数是所采用的缩放因子,默认情况下该值是1,是没有缩放的。data代表加在目标图像dst上的值,该值是可选的,默认为0.borderType代表边界样式。该参数的具体类型及值如表所示。sobel算子
二代码分析1.计算x方向边缘(梯度):dx=1,dy=0在Opencv中的语法格式为dst=cv2.Sobel(src,ddepth,1,0)2.计算y方向边缘(梯度):dx=0,dy=1在Opencv中的语法格式为dst=cv2.Sobel(src,ddepth,0,1)3.数取绝对值在Opencv中,使用函数cv2.converScaleAbs()对参数取绝对值,该函数的语法格式为:dst=cv2.convertScaleAbs(src[,alpha[,beta]])式中:dst代表处理结果。src代表原始图像。alpha代表调节系数,该值是可选值,默认为1。beta代表调节亮度值,该值是默认值,默认为0。sobel算子
二代码分析函数res=cv2.matchTemplate(image,templ,method,result=None,mask=None)image:待搜索图像templ:模板图像result:匹配结果method:计算匹配程度的方法,主要有以下几种模板匹配
三代码演示流程图
三代码演示原图二值化图的结果
三代码演示闭操作(闭合细小的连接,抑制暗细节)的结果腐蚀膨胀的效果
三代码演示分割出车牌位置膨胀操作,使“冀”字膨胀为一个近似的整体
三代码演示分割出字符结果
谢谢观看!
文档评论(0)