一个基于OpenCV的Python程序,可以从摄像头捕获图像并识别简单数字。您可以根据需要进行调整,包括调整图像预处理和数字识别逻辑

import cv2
import numpy as np
import pytesseract# 设置Tesseract OCR的参数
custom_config = r'--oem 3 --psm 6 outputbase digits'# 打开默认摄像头
cap = cv2.VideoCapture(0)while True:# 从视频流中读取一帧ret, frame = cap.read()# 将图像转换为灰度图像gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)# 对灰度图像进行高斯滤波,降噪blurred = cv2.GaussianBlur(gray, (5, 5), 0)# 对图像进行二值化处理_, thresh = cv2.threshold(blurred, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)# 查找图像中的轮廓,并选出最大的轮廓contours, _ = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)if contours:contour = max(contours, key=cv2.contourArea)# 计算外接矩形框,并在原图上标记x, y, w, h = cv2.boundingRect(contour)cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 255, 0), 2)# 提取数字区域roi = thresh[y:y + h, x:x + w]# 调整数字区域大小,并填充黑色背景roi = cv2.resize(roi, (28, 28), interpolation=cv2.INTER_AREA)roi = cv2.copyMakeBorder(roi, 4, 4, 4, 4, cv2.BORDER_CONSTANT, value=(0, 0, 0))# 执行OCR并获取数字结果digits = pytesseract.image_to_string(roi, config=custom_config)# 显示图像和数字结果cv2.imshow('frame', frame)cv2.imshow('roi', roi)print(digits)# 按下 'q' 键退出循环if cv2.waitKey(1) & 0xFF == ord('q'):break# 释放摄像头
cap.release()# 关闭所有窗口
cv2.destroyAllWindows()

一个基于OpenCV的Python程序,可以从摄像头捕获图像并识别简单数字。您可以根据需要进行调整,包括调整图像预处理和数字识别逻辑相关推荐

  1. 【优秀课设】基于OpenCV的Python人脸识别、检测、框选(遍历目录下所有照片依次识别 视频随时标注)

    基于OpenCV的Python人脸识别.检测.框选 (遍历目录下所有照片依次识别 视频随时标注) 移步: https://blog.csdn.net/weixin_53403301/article/d ...

  2. 设计一个基于GUI的扑克程序

    2019独角兽企业重金招聘Python工程师标准>>> 在本课程教材扑克牌代码的基础上,设计一个基于GUI的扑克程序 a) 可以显示 52 张扑克牌,包括洗牌,发牌在内(2) b) ...

  3. DIY一个基于树莓派和Python的无人机视觉跟踪系统

    DIY一个基于树莓派和Python的无人机视觉跟踪系统 无人机通过图传将航拍到的图像存储并实时传送回地面站几乎已经是标配.如果想来点高级的--在无人机上直接处理拍摄的图像并实现自动控制要怎么实现呢?其 ...

  4. spring boo_为您的下一个基于Spring的应用程序考虑使用spring-boot的原因!

    spring boo Spring-boot提供了一种创建基于Spring的应用程序的快速方法. 对于下一个项目,有一些非常令人信服的理由考虑使用Spring-boot: 原因1:使用spring-b ...

  5. 为您的下一个基于Spring的应用程序考虑使用spring-boot的原因!

    Spring-boot提供了一种创建基于Spring的应用程序的快速方法. 对于下一个项目,有一些非常令人信服的理由考虑使用Spring-boot: 原因1:使用spring-boot启动程序项目进行 ...

  6. 树莓派 python 无人机_DIY一个基于树莓派和Python的无人机视觉跟踪系统

    DIY一个基于树莓派和Python的无人机视觉跟踪系统 无人机通过图传将航拍到的图像存储并实时传送回地面站几乎已经是标配.如果想来点高级的--在无人机上直接处理拍摄的图像并实现自动控制要怎么实现呢?其 ...

  7. 基于 OpenCv 和 Python 的手指识别及追踪

    本文为 AI 研习社编译的技术博客,原标题 Finger Detection and Tracking using OpenCV and Python,作者为Jason Brownlee 详细代码参考 ...

  8. document-scanner:一个基于OpenCV的文档扫描器

    向AI转型的程序员都关注了这个号???????????? 机器学习AI算法工程   公众号:datayx 使用OpenCV + Python构建的文档扫描仪.参阅博客文章以更好地理解:http://v ...

  9. 使用opencv和python实现图像的智能处理pdf_机器学习:基于OpenCV和Python的智能图像处理...

    前言 图像处理又称为数字图像处理,是指对图像进行分析.加工和处理,使其满足视觉方面需求的一种技术,它也是信号处理在图像领域的一种重要应用.随着计算机技术.人工智能和思维科学研究的迅速发展,图像处理向更 ...

最新文章

  1. java五子棋代码详解_java打卡9.5 用方法封装循环点菜代码 详解
  2. 操作系统: 最佳适配算法和邻近适配算法的模拟实现(内存分配算法)
  3. 【Linux】一步一步学Linux——ctrlaltdel命令(198)
  4. python中如何输出中文_python中怎么输出中文-问答-阿里云开发者社区-阿里云
  5. 【转】URL编码(encodeURIComponent和decodeURIComponent)
  6. 实训09.10:HTML简单表格设计
  7. C++(16)--运算符重载(自定义Integer类)
  8. 面试官系统精讲Java源码及大厂真题 - 44 场景实战:ThreadLocal 在上下文传值场景下的实践
  9. HashMap的key可以是可变的对象吗???
  10. OpenCV 二值化分割方式
  11. 苹果手机页面不兼容问题——mui
  12. mysql数据库安装过程蜿蜒曲折
  13. Unity 扫描 二维码
  14. 华为与华为交换机console口配置
  15. 免费音视频格式转换软件
  16. 2019山东省赛记事
  17. 基于java的SCADA系统_基于普通PC的SCADA系统
  18. 腾讯云互动直播分享屏幕小结
  19. 收藏下来吧,超实用的:网页特殊符号HTML代码大全
  20. STM32-custom usb

热门文章

  1. 空调动图,风系统、水系统一看就懂!
  2. git detached
  3. 论文中t分布的p,t是什么意思以及spss求解过程(自用笔记)
  4. 把人民币转化成大写金额
  5. php 金额转大写,php 人民币金额转大写程序
  6. 安卓系统刷机怎么刷机_安卓系统手机怎么刷机
  7. java方法怎么声明_【Java方法的声明和使用】
  8. 服务器备份交换机配置文件,博科SAN交换机学习笔记之二:配置文件备份与固件升级...
  9. mysql prepare有什么用_mysql中的prepare介绍和应用
  10. 保姆级对接顺丰的聚顺