You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python-tesseract OCR分词异常:单词ADRIEL被错误拆分求助

解决Python-tesseract识别"ADRIEL"时拆分错误的问题

我使用Python-tesseract OCR工具识别单词“ADRIEL”时,OCR错误地将其拆分为两行内容:

[ADRI
EL

待识别图片:
待识别的ADRIEL文本

我的代码片段:

import pytesseract
import cv2

image = cv2.imread("cnh_nome2.png")

gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

pytesseract.pytesseract.tesseract_cmd = r"C:\Users\..."

text = pytesseract.image_to_string(gray_image, lang="por")

print(text)

优化方案

  • 增强图像对比度:对灰度图做二值化处理,突出字符边缘,减少背景干扰:
    # 自适应阈值二值化
    thresh_image = cv2.adaptiveThreshold(gray_image, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY_INV, 11, 2)
    
  • 强制单行识别+字符白名单:通过Tesseract配置参数限定识别范围,避免换行拆分:
    # 配置参数:单行识别+仅允许大写字母和左括号
    custom_config = r'--oem 3 --psm 7 -c tessedit_char_whitelist=ABCDEFGHIJKLMNOPQRSTUVWXYZ['
    text = pytesseract.image_to_string(thresh_image, lang="por", config=custom_config)
    
    其中:
    • --psm 7:指定图像为单行文本,禁止自动换行拆分
    • tessedit_char_whitelist:缩小识别字符集,降低误判概率
  • 调整图像缩放比例:若原图像字符间距过大,可轻微缩小图像让字符更紧凑:
    # 缩小图像(fx/fy为缩放比例,可根据实际调整)
    scaled_image = cv2.resize(gray_image, None, fx=0.8, fy=0.8, interpolation=cv2.INTER_AREA)
    

内容的提问来源于stack exchange,提问作者Adriel Volzzi Sales

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 11:43:20