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

Pytesseract识别图片0.01误输出201,如何提升OCR识别准确率

修正后可正确识别0.01的代码

import pytesseract
try:
    from PIL import Image
except ImportError:
    import Image
import numpy as np
import cv2

img = Image.open('test.png')
processed_image = np.asarray(img)
processed_image = cv2.cvtColor(processed_image, cv2.COLOR_BGR2GRAY)
# 放大2倍提升小字符辨识度
processed_image = cv2.resize(processed_image, None, fx=2, fy=2, interpolation=cv2.INTER_CUBIC)
# 二值化处理
processed_image = cv2.threshold(processed_image, 0, 255, cv2.THRESH_BINARY + cv2.THRESH_OTSU)[1]
# 去噪处理
processed_image = cv2.medianBlur(processed_image, 3)
# 限定字符白名单+适配短文本识别模式
text = pytesseract.image_to_string(processed_image, config='--psm 8 -c tessedit_char_whitelist=0123456789.').strip()
print(text)

核心优化点

  • 移除代码中无效的cv2np冗余导入
  • 新增图像放大逻辑:原图像字符尺寸过小,放大后可避免小数点被误判为字符间隙或数字0,也能减少字符形状的误识别
  • 新增中值滤波步骤:消除二值化后产生的零星噪点,避免噪点被判定为字符笔画
  • 调整tesseract识别配置:增加字符白名单限定仅识别数字和小数点,从根源避免跨字符匹配错误;将psm模式从7(单行文本)调整为8(单个词),更适配短字符的识别场景
  • 若仍存在识别偏差,可在二值化后增加反色处理:processed_image = 255 - processed_image,适配不同明暗的字符背景

内容的提问来源于stack exchange,提问作者Asif Shiraz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 13:57:03