opencv模板匹配完成车牌识别(简易版)

简介: opencv模板匹配完成车牌识别(简易版)

无意间浏览博客看见原来用opencv可以直接完成模板匹配功能,回想起当年学习MATLAB费了老大劲完成了一个车牌识别。


既然用opencv可以快速完成,一时心血来潮撸了个简单版本的车牌识别


第一步:构建车牌库


这个时候就不用分别建立字符库了,来了个更加精简版本的车牌库


上例图:


image.png

第二步:使用模板匹配


2.1 读取车牌库


2.2 构建空LIST分别对应的是“匹配度”和车牌号


2.3 在for循环中遍历车牌库内容


2.4 进行Image2opencv转换


2.5 使用cv2.matchTemplate完成模板匹配


2.6 计算最大/最小匹配度和的均值并添家到空LIST中


2.7 将车牌号名称添加到对应的LIST中去


2.8 计算匹配度的最大值


2.9 找到匹配最大值的位置


2.10 最大值匹配度对应的车牌号名称\

def TemplateMatching(Img):
    oldImgPath = 'C:/Users/kiven/Desktop/CarID/carid/'
    oldImgLine = os.listdir(oldImgPath)
    ListVal = []
    ListimgName = []
    for OldimgName in oldImgLine:
        old_images = Image.open(oldImgPath + OldimgName)
        OldImages = cv2.cvtColor(numpy.asarray(old_images), cv2.COLOR_RGB2BGR)
        method = eval('cv2.TM_CCORR_NORMED')  # eval 语句用来计算存储在字符串中的有效 Python 表达式
        # 模板匹配
        NewImage = cv2.cvtColor(numpy.asarray(Img), cv2.COLOR_RGB2BGR)
        res = cv2.matchTemplate(NewImage, OldImages, method)
        # 寻找最值
        min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
        meanVal = (min_val+max_val)/2
        ListVal.append(meanVal)
        ListimgName.append(OldimgName)
    MaxValue = max(ListVal)
    whereMaxValue = ListVal.index(MaxValue)
    CarId = ListimgName[whereMaxValue]
    print(CarId)


第三步:使用模板匹配完成车牌识别


NewImages = Image.open('1.jpg')
TemplateMatching(NewImages)

运行截图


image.png


image.png

相关文章
|
6月前
|
计算机视觉 Python
OpenCV多模板匹配讲解与匹配汽车实战(附Python源码)
OpenCV多模板匹配讲解与匹配汽车实战(附Python源码)
183 0
OpenCV多模板匹配讲解与匹配汽车实战(附Python源码)
|
1月前
|
机器学习/深度学习 数据可视化 计算机视觉
基于opencv的车牌识别系统(UI界面采用tkinter设计)
基于opencv的车牌识别系统(UI界面采用tkinter设计)
37 0
|
1月前
|
机器学习/深度学习 缓存 数据可视化
基于Python_opencv的车牌识别系统
基于Python_opencv的车牌识别系统
37 0
|
4月前
|
机器学习/深度学习 数据采集 算法
Python基于OpenCV和卷积神经网络CNN进行车牌号码识别项目实战
Python基于OpenCV和卷积神经网络CNN进行车牌号码识别项目实战
320 19
|
5月前
|
机器学习/深度学习 算法 计算机视觉
基于opencv的SVM算法的车牌识别系统设计与实现
基于opencv的SVM算法的车牌识别系统设计与实现
154 3
基于opencv的SVM算法的车牌识别系统设计与实现
|
5月前
|
运维 算法 计算机视觉
【Qt&OpenCV 图像的模板匹配 matchTemplate/minMaxLoc】
【Qt&OpenCV 图像的模板匹配 matchTemplate/minMaxLoc】
82 1
|
5月前
|
算法 计算机视觉 Python
python+opencv实现车牌定位
python+opencv实现车牌定位
|
6月前
|
计算机视觉 Python
【Python实战】——Python+Opencv是实现车牌自动识别
【Python实战】——Python+Opencv是实现车牌自动识别
|
5月前
|
机器学习/深度学习 算法 数据库
【功能超全】基于OpenCV车牌识别停车场管理系统软件开发【含python源码+PyqtUI界面+功能详解】-车牌识别python 深度学习实战项目
【功能超全】基于OpenCV车牌识别停车场管理系统软件开发【含python源码+PyqtUI界面+功能详解】-车牌识别python 深度学习实战项目
|
6月前
|
计算机视觉
OpenCV 模板匹配
OpenCV 模板匹配
62 1
下一篇
无影云桌面