首先,呈上我自己根据代码写的步骤流程,方便记忆,字有点丑,哈哈哈!!!

好吧,图片看不清,那就上代码

import cv2
import imutils
import numpy as np
import pytesseract
pytesseract.pytesseract.tesseract_cmd = r'D:\Program Files\Tesseract-OCR\tesseract.exe'img = cv2.imread('D:/skoda1.png',cv2.IMREAD_COLOR)
img = cv2.resize(img, (600,400) )gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
gray = cv2.bilateralFilter(gray, 13, 15, 15) edged = cv2.Canny(gray, 30, 200)
contours = cv2.findContours(edged.copy(), cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
contours = imutils.grab_contours(contours)
contours = sorted(contours, key = cv2.contourArea, reverse = True)[:10]
screenCnt = Nonefor c in contours:peri = cv2.arcLength(c, True)approx = cv2.approxPolyDP(c, 0.018 * peri, True)if len(approx) == 4:screenCnt = approxbreakif screenCnt is None:detected = 0print ("No contour detected")
else:detected = 1if detected == 1:cv2.drawContours(img, [screenCnt], -1, (0, 0, 255), 3)mask = np.zeros(gray.shape,np.uint8)
new_image = cv2.drawContours(mask,[screenCnt],0,255,-1,)
new_image = cv2.bitwise_and(img,img,mask=mask)(x, y) = np.where(mask == 255)
(topx, topy) = (np.min(x), np.min(y))
(bottomx, bottomy) = (np.max(x), np.max(y))
Cropped = gray[topx:bottomx+1, topy:bottomy+1]text = pytesseract.image_to_string(Cropped, config='--psm 11')
print("programming_fever's License Plate Recognition\n")
print("Detected license plate Number is:",text)
img = cv2.resize(img,(500,300))
Cropped = cv2.resize(Cropped,(400,200))
cv2.imshow('car',img)
cv2.imshow('Cropped',Cropped)cv2.waitKey(0)
cv2.destroyAllWindows()

这里由于时间长了,有些api忘记咋用了,就又重新搜索下如下:

双边滤波bilateralFilter
imutils.grab_contours的作用
findContours函数参数详解

开头代码的文件下载方法

tesseract 安装及使用

具体代码和项目解析可以看’小白视觉‘公众号、网上都能搜到

总结下吧
感觉前面很基础就利用opencv的基础预处理图像,后面主要是找轮廓进行裁剪字符分割与字符识别。

opencv实战项目:基于opencv的车牌号码识别相关推荐

  1. 【项目实战】Python基于OpenCV和卷积神经网络CNN进行车牌号码识别项目实战

    说明:这是一个机器学习实战项目(附带数据+代码+文档+视频讲解),如需数据+代码+文档+视频讲解可以直接到文章最后获取. 1.项目背景 车牌识别系统(Vehicle License Plate Rec ...

  2. [OpenCV实战]47 基于OpenCV实现视觉显著性检测

    人类具有一种视觉注意机制,即当面对一个场景时,会选择性地忽略不感兴趣的区域,聚焦于感兴趣的区域.这些感兴趣的区域称为显著性区域.视觉显著性检测(Visual Saliency Detection,VS ...

  3. python的快车智能车牌号码识别系统的开发

    It is not always possible to prove some crimes. To achieve this, modern tools may be needed which mu ...

  4. 实战:基于OpenCV 的车牌识别

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 车牌识别是一种图像处理技术,用于识别不同车辆.这项技术被广泛用于各 ...

  5. 基于python+OpenCV的车牌号码识别

    基于python+OpenCV的车牌号码识别 车牌识别行业已具备一定的市场规模,在电子警察.公路卡口.停车场.商业管理.汽修服务等领域已取得了部分应用.一个典型的车辆牌照识别系统一般包括以下4个部分: ...

  6. 实战:基于OpenCV实现偏斜文档校正

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达本文转自|OpenCV学堂 纸质文档扫描中经常会发生扫描出来的图像有 ...

  7. 实战:基于OpenCV的人眼检测

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 一.背景 无论学习什么,实践都非常重要.如果打算学习OpenCV. ...

  8. 再次升级,985博士整理的71个OpenCV实战项目教程开放下载!

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 近期小白学视觉公众号推出了多篇Python+OpenCV实战项目的 ...

  9. 实战:基于OpenCV进行长时间曝光(内含彩蛋)

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 在本文中,我们将学习长时间曝光摄影技术,以及如何使用Python和 ...

  10. 重磅升级,52个Python+OpenCV实战项目教你掌握图像处理

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 近期小白学视觉公众号推出了多篇Python+OpenCV实战项目的 ...

最新文章

  1. 《当下的哲学》[法]阿兰.巴迪欧(作者)epub+mobi+azw3格式下载
  2. PMP之项目风险管理---实施定性风险分析
  3. logback.xml中MaxHistory日志文件保留天数
  4. Wi-Fi 6 认证计划启动:开启 Wi-Fi 新纪元
  5. 【转】DataGridView之为每行前面添加序号
  6. yyuc php,YYUC框架与YYUC手册资料下载 | 无名
  7. 大学计算机aoa学什么,浙江省高校计算机二级AOA考试excel试题及解析.xls
  8. 第九节 html特殊文字符号
  9. 球体弹性碰撞位置和速度计算算法
  10. ubuntu系统学习(1) 测网速命令/实时显示网速speedometer
  11. 《英语语法新思维初级教程》学习笔记(九)进行时态
  12. about 松峰山:
  13. 团建游戏----啦啦队
  14. 用js将二维数组转为json格式字符串
  15. 低配本用win10服务器系统,低配电脑用win7还是win10比较好_低配置电脑装win7还是win10系统合适...
  16. [C语言]倒序输出字符串
  17. 企业服务总线(ESB)技术与革新
  18. OC中,类的基础知识
  19. 职业资格证书查询与验证
  20. java class dex_class文件与dex文件分析

热门文章

  1. 易基因|新品:新型肿瘤标志物检测利器——cfDNA甲基化测序(cfDNA-RBS)
  2. react中使用lazy函数进行路由懒加载
  3. 智能语音计算器(二)
  4. requests爬取豆瓣前250部高分电影
  5. FFmpeg的HEVC解码器源代码简单分析
  6. 投资理财--熊市笨小孩式交易75-25
  7. html显示hdf5文件,图片转换成HDF5文件(加载,保存)
  8. QT Creator 7 如何同时运行多个客户端窗口(Client)
  9. Java开发技术总结!小米java校招面试题
  10. PDF文件有编辑权限,怎么编辑PDF文件?