基于OpenCV的人脸、视频、文字检测以及识别的项目(五 文字识别+二维码简单识别)

1.文字识别

运行环境:windows10 + python 3.8 + tesseract 4.0.0-beta.1

(1)安装python模块

pip install pytesseract

(2)安装tesseract orc

下载地址:https://github.com/UB-Mannhei...
点击“tesseract-ocr-w64-setup-v4.0.0-beta.1.20180414.exe”下载安装。
注意:安装的时候选中中文包(一定要下这个 不然后面代码报错):
基于OpenCV的人脸、视频、文字检测以及识别的项目(五 文字识别+二维码简单识别)_第1张图片
只选里面的 一个就行了
image.png

(3)配置tesseract运行文件

在自己装python的文件夹里面找到pytesseract.py
D:/python3.8/Lib/site-packages/pytesseract/pytesseract.py
把里面的
tesseract_cmd = 'tesseract'
修改为:
tesseract_cmd = 'D:/opencv-python/Tesseract-OCR/tesseract.exe'
(找到你安装Tesseract-OCR的路径即可)

(4)然后就可以安心写代码了

from PIL import Image
import pytesseract

path = "img\\text-img.png"

text = pytesseract.image_to_string(Image.open(path), lang='chi_sim')
print(text)

看看效果:
基于OpenCV的人脸、视频、文字检测以及识别的项目(五 文字识别+二维码简单识别)_第2张图片
识别:
image.png
还阔以哈
再来一个 上面是图片 下面黑色的是结果
基于OpenCV的人脸、视频、文字检测以及识别的项目(五 文字识别+二维码简单识别)_第3张图片
and one 这是什么鬼
基于OpenCV的人脸、视频、文字检测以及识别的项目(五 文字识别+二维码简单识别)_第4张图片
image.png
这张英明一个字也没检测出来 看来这个训练对纯文本图片更友好

2.二维码识别

二维条码/二维码 是用某种特定的几何图形按一定规律在平面(二维方向上)分布的、黑白相间的、记录数据符号信息的图形;
直接先
pip install pyzbar

import cv2
import numpy as np
from pyzbar.pyzbar import decode

#读取照片信息
img = cv2.imread('../res/qr.png')
#调用decode()函数,返回的信息包含尺寸rect,数据data
code = decode(img)
#打印出二维码信息
print(code)

学习自:
https://github.com/vipstone/f...
https://zhuanlan.zhihu.com/p/...

你可能感兴趣的:(基于OpenCV的人脸、视频、文字检测以及识别的项目(五 文字识别+二维码简单识别))