littlebot
Published on 2025-04-08 / 0 Visits
0

【源码】基于OpenCV和Python的图像处理项目

项目简介

本项目是基于OpenCV和Python的图像处理项目,利用OpenCV进行图像处理与人脸检测,使用pytesseract进行文字识别,可实现图像中人脸的自动检测以及图像中文字的提取。

项目的主要特性和功能

  1. 人脸检测:支持从图片和实时视频流中检测人脸。
  2. 文字识别:支持对图像中的中英文文字进行识别。

安装使用步骤

环境安装

  1. 安装Python,确保已安装Python 3.6.8或更高版本。
  2. 安装OpenCV: bash pip install opencv-python
  3. 安装其他依赖库: bash pip install numpy scipy matplotlib scikit-learn jupyter dlib pillow pytesseract
  4. 安装Tesseract-OCR:
    • 下载并安装Tesseract-OCR,安装路径为C:\Program Files\Tesseract-OCR
    • 下载中文语言包并放置在C:\Program Files\Tesseract-OCR\tessdata目录下。

配置

  1. 配置OpenCV:
    • 如果导入cv2时出现错误,可在VSCode中按CTRL + Shift + P,选择“開啟設定json”,并在最后一段新增: json "python.linting.pylintArgs": ["--generate-members"]
  2. 配置pytesseract:
    • 修改pytesseract.py文件中的tesseract_cmd路径为Tesseract的安装路径: python tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'

使用步骤

  1. 人脸检测
    • 运行脚本进行图片或视频中的人脸检测。
    • 示例代码: python import cv2 face_cascade = cv2.CascadeClassifier(cv2.data.haarcascades + "haarcascade_frontalface_default.xml") img = cv2.imread('a.jpg') gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) faces = face_cascade.detectMultiScale(gray, scaleFactor=1.08, minNeighbors=5, minSize=(32, 32)) for (x, y, w, h) in faces: cv2.rectangle(img, (x, y), (x + w, y + h), (0, 255, 0), 2) cv2.imshow('img', img) cv2.waitKey(0) cv2.destroyAllWindows()
  2. 文字识别
    • 运行脚本进行图像中的文字识别。
    • 示例代码: python import pytesseract from PIL import Image pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe' image = Image.open('a.png') code = pytesseract.image_to_string(image, lang='chi_sim') print(code)

注意事项

  • 确保所有依赖库已正确安装并配置。
  • 人脸检测时,确保级联分类器文件路径正确。
  • 文字识别时,确保Tesseract OCR已正确安装并配置路径。
  • 输入图像质量对识别结果有较大影响,建议对图像进行预处理以提高识别准确率。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】