当前位置: 首页 > news >正文

opencv 车牌识别

车牌识别的具体步骤

  • 通过Haar定位车牌的大体位置
  • 对车牌进行预处理
  • 调用tesseract进行文字识别

车牌预处理包括的内容

  • 对车牌进行二值化处理
  • 进行形态学处理
  • 滤波去除噪点
  • 缩放

tesseract的安装

  • brew install tesseract tesseract-lang
  • pip3 install pytesseract
import cv2 as cv
import numpy as np
import pytesseract
# 第一步,创建Haar级联器
plate = cv.CascadeClassifier(r'C:\ProgramData\Anaconda3\Lib\site-packages\cv2\data\haarcascade_russian_plate_number.xml')

# 第二步,导入人脸识别的图片并将其灰度化
img = cv.imread(r'C:\Users\Administrator\Desktop\plate2.png')
gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
# 第三步,进行人脸识别
# [[x,y,w,h]]
plates = plate.detectMultiScale(gray, 1.1, 3)
for (x, y, w, h) in plates:
    cv.rectangle(img, (x, y), (x+w, y+h), (0, 0, 255), 2)

# 对获取的车牌进行预处理
# 1. 提取ROI
roi = gray[y:y+h, x:x+w]
# 2. 进行二值化
ret, roi_bin = cv.threshold(roi, 0, 255, cv.THRESH_BINARY + cv.THRESH_OTSU)

print(pytesseract.image_to_string(roi_bin, lang="chi_sim+eng", config='--psm 8 --oem 3'))

cv.imshow("plate", img)
cv.imshow('roi_bin', roi_bin)
cv.waitKey(0)

在这里插入图片描述

相关文章:

  • [LeetCode周赛复盘] 第 312 场周赛20220925
  • 基于HTML+CSS+JavaScript的MIUI10官网网站设计与开发
  • Vue 新手期练手出现问题记录与解决方案——Vue练手项目“小问题“
  • 计算机组成原理-华科版本
  • 计算机网络原理 谢希仁(第8版)第五章习题答案
  • 记一次Netty堆外内存溢出OutOfDirectMemoryError
  • 设计模式详解:模式汇总与索引清单
  • SpringSecurity实战-第5章 自动登录和注销登录
  • Python基础内容训练9(文件操作)
  • 冰冰学习笔记:list的简单模拟
  • 基于鸽群优化算法的线性规划求解matlab程序
  • 【博客505】k8s Sig-scheduler Coscheduling调度器插件原理
  • 【Linux】I/O多路复用-SELECT/POLL/EPOLL
  • Python解释器路径寻找规则
  • [Qt桌面开发]一个Qt简单界面的开发
  • [PHP内核探索]PHP中的哈希表
  • 2017-08-04 前端日报
  • JavaScript DOM 10 - 滚动
  • JDK 6和JDK 7中的substring()方法
  • JS+CSS实现数字滚动
  • Js基础——数据类型之Null和Undefined
  • spring boot 整合mybatis 无法输出sql的问题
  • ViewService——一种保证客户端与服务端同步的方法
  • Vue.js源码(2):初探List Rendering
  • webgl (原生)基础入门指南【一】
  • 表单中readonly的input等标签,禁止光标进入(focus)的几种方式
  • 分享几个不错的工具
  • 复习Javascript专题(四):js中的深浅拷贝
  • 前嗅ForeSpider教程:创建模板
  • 由插件封装引出的一丢丢思考
  • 智能网联汽车信息安全
  • 自动记录MySQL慢查询快照脚本
  • 阿里云重庆大学大数据训练营落地分享
  • 湖北分布式智能数据采集方法有哪些?
  • # 达梦数据库知识点
  • #QT(TCP网络编程-服务端)
  • (1)(1.13) SiK无线电高级配置(五)
  • (52)只出现一次的数字III
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (四) Graphivz 颜色选择
  • (五)关系数据库标准语言SQL
  • (转) ns2/nam与nam实现相关的文件
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • (转)GCC在C语言中内嵌汇编 asm __volatile__
  • (转)Unity3DUnity3D在android下调试
  • .mysql secret在哪_MySQL如何使用索引
  • .net Signalr 使用笔记
  • .NET Standard / dotnet-core / net472 —— .NET 究竟应该如何大小写?
  • .NET Standard 的管理策略
  • .net 打包工具_pyinstaller打包的exe太大?你需要站在巨人的肩膀上-VC++才是王道
  • .NET 实现 NTFS 文件系统的硬链接 mklink /J(Junction)
  • .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append)
  • .Net6使用WebSocket与前端进行通信
  • .NET企业级应用架构设计系列之技术选型
  • .NET中使用Redis (二)