python+opencv+TESSERT-OCR实现车牌的检测与识别

这篇博客介绍了如何利用python、opencv和TESSERACT进行车牌检测与识别,包括环境配置、图像处理步骤,如色彩空间转换、二值化等,以及如何筛选和识别车牌。虽然系统对不同图片的适应性有限,但图像处理方法具有一定的通用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python+opencv+TESSERT-OCR实现车牌的检测与识别

开学花了十天时间0基础搞出来的,分享给大家,如果有什么错误希望大家给我指正。python师从小甲鱼,opencv师从贾志刚,B站都有视频,也参考了论坛上很多大佬的博客。话不多说,先上运行结果。
在这里插入图片描述
当然,这只是一个简易的识别或者说算不上一个车牌识别的系统,因为你可能换一张图片它就识别不出来,但是其中对图像处理的方法还是有通用性的。

1.配置环境

我们需要用到的包如下

import cv2 as cv
import numpy as np
import pytesseract as tess
from PIL import Image

2.打开图片

打开图片并压缩大小,图像不宜太大

src = cv.imread("D:/opencv/image/license.png")  # 打开要识别的照片,不能有中文路径
print(src.shape)#输出粗一下原图的大小
license = cv.resize(src, (800, int(800 * src.shape[0] / src.shape[1])))#压缩一下图片,保持了原图的宽高的比例
print(license.shape)#输出一下压缩过后的大小
cv.namedWindow('inputImage', 0)#第二个参数为0,可以改变窗口的大小

我们来看一下结果
在这里插入图片描述

第一行为原图的大小,第二行为压缩过后的大小,参数的含义为宽,高,三通道
在这里插入图片描述

3.图像处理

图像处理的目的是为了能够找出车牌所在的区域。人一眼就能在这张图片中找出车牌的位置,但计算机不行,图片在计算机眼里只是一个个数字。我的思路如下:色彩空间转换——提取蓝色区域——高斯模糊——转为灰度图片——二值化——开闭操作。这一块有很多种方法,步骤也不相同。

def license_prepation(image):
    image_hsv = cv.cvtColor(image, cv.COLOR_BGR2HSV)  # 从RGB图像转为hsv色彩空间
    low_hsv = np.array([108, 43, 46])  # 设置颜色
    high_hsv = np.array([124
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值