计算机视觉检测车牌号

介绍

在这个技术飞速发展的时代,在寻找一辆犯罪汽车的时候,要停下路上的每一辆车并检查其车牌是非常困难的。

随着道路欺诈的增加,警察也变得越来越聪明。他们正在使用深度学习和计算机视觉来检测车牌并从中提取车牌号。

今天,我们将建立一个这样的项目,使用计算机视觉来检测车牌,这有助于电子挑战和安全监控。

在本博客中,我们将学习如何使用计算机视觉检测汽车的车牌并提取其值。我们将使用计算机视觉的 OpenCV 库来检测汽车的车牌,使用深度学习的 pytesseract 库来读取图像类型并从车牌中获取字符和数字。最后,我们使用 Tkinter 构建一个图形用户界面来显示我们的项目。

计算机视觉的先决条件

首先,安装库:

pip3 install OpenCV-python
pip3 install pytesseract

什么是 OpenCV?

OpenCV 是一个巨大的开源跨平台库,它使计算机视觉能够执行自动驾驶、图像注释、基于无人机的作物监测等实际应用。它主要专注于捕获图像和视频以分析重要特征,例如物体检测、人脸检测、情绪检测等,在基于图像处理的人工智能应用中也发挥着重要作用。

请参阅以下指南以深入了解 OpenCV:

OpenCV:https://www.analyticsvidhya.com/blog/2019/03/opencv-functions-computer-vision-python/

在这里,我们只是使用 openCV 的一些基本特征/功能来识别输入的汽车图像中的车牌号。

  • 轮廓:轮廓通常被视为边界像素,因为它们只是简单的曲线,将边界中具有相同强度和颜色的所有连续点组合在一起。轮廓的使用在形状分析、对象检测和识别、运动检测以及背景/前景图像分割中更加清晰。为了减少轮廓检测的任务,OpenCV 为此提供了内置的 cv2.findContours() 函数。

cv2.findContours(morph_img_threshold,mode=cv2.RETR_EXTERNAL,method=cv2.CHAIN_APPROX_NONE)

我们的 cv.find contours()函数采用三个参数,包括输入图像、轮廓检索模式,最后是轮廓逼近方法。该函数以 Python 列表的形式生成修改后的图像、层次结构和轮廓。

官方链接:- https://docs.opencv.org/3.4/d4/d73/tutorial_py_contours_begin.html

  • 形态变换:是指只对二值图像进行的一些简单的操作,并依赖于图像的形状。一些常见的形态学操作是 Opening、Closing、Erosion、Dilation。每个函数都有两个参数,包括输入图像和结构元素或内核来决定操作的性质。OpenCV 提供了一些内置函数来执行这些操作:

    • cv2.erode()

    • cv2.dilate()

    • cv2.morphologyEx()

官方链接:- https://docs.opencv.org/3.4/d9/d61/tutorial_py_morphological_ops.html

  • **高斯模糊:**高斯函数用于对输入图像进行模糊和平滑处理,并输出高斯模糊图像。它被广泛用于减少图像噪声效果。OpenCV 为此提供了一个内置函数 cv2.GaussianBlur()。

官方链接:- https://docs.opencv.org/4.x/d4/d13/tutorial_py_filtering.html

  • **Sobel:**此函数用于计算图像导数,这反过来有助于梯度的计算。OpenCV 为此提供了一个内置函数 cv2.Sobel()。

官方链接:- https://docs.opencv.org/3.4/d2/d2c/tutorial_sobel_derivatives.html

使用计算机视觉构建车牌的步骤

步骤 1. 导入必要的库
import numpy as np
import cv2
from PIL import Image
import pytesseract as pytess
步骤 2. 识别不必要的轮廓

现在我们将专注于识别图片中存在的一些不必要的轮廓,这些轮廓可能会被 OpenCV 错误识别,因为它是车牌的可能性很小。

我们将定义三个不同的函数来找到这些

  • 4
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值