【问题标题】:pytesseract - Extracting digits from an imagepytesseract - 从图像中提取数字
【发布时间】:2021-07-02 07:42:15
【问题描述】:

我是 pytesseract 的新手。我想从下图中提取用户 ID

我使用的代码是:

import cv2
import pytesseract

pytesseract.pytesseract.tesseract_cmd = r'C:\Users\80141219\AppData\Local\Programs\Tesseract- OCR\tesseract.exe'

image = cv2.imread(r'C:\Desktop\dormancyIssue\testImage.jpg', 0)
thresh = cv2.threshold(image, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)[1]

data = pytesseract.image_to_string(thresh, lang='eng',config='--psm 6')
print(data)

cv2.imshow('thresh', thresh)
cv2.waitKey()

输出为:

wecy| H+ op Et >A EEE
@ Fle] x |
Fite Adion View WN (Gencal
| ale] xX .
x x & ‘
oraputer Manage
4B System Tools TT -
Gf Event Viewer
> gil Shared Folder sities
4B Local Users arg | Members:
To Users Bor 109033
3 Groups | | Soser5405
» @ Performance | | SPs0nss658
Bl device Menagy | | SE70z1611
> ap Windows Senff | | SE 7102
z Bons
Disk Manage
> iy Services and App}
Guages et goin raven
pe) ts) Cerone] ret ster
B& * & &°e «hs

我什至不确定输出中的某些数据来自哪里。请注意,我还尝试将图像裁剪为仅包含 ID,但无济于事。

我想知道是否有人可能有解决方案或指出我正确的方向。

谢谢!!

【问题讨论】:

  • 小字体、低分辨率、严重的 JPG 伪影...您需要更好的输入图像。我怀疑是否有合理的预处理步骤来识别有问题的数字。
  • @HansHirse 好的,谢谢,我会考虑获得更好的图像。

标签: python image python-tesseract


【解决方案1】:

我看到您的 ID 仅包含数字。这是tesseract收集数字信息的解决方案。

https://stackoverflow.com/a/46589648/7383731

【讨论】:

  • 没有将号码列入白名单的负责人。这很有趣。我听说将其设置为不寻找英文字符的语言会有所帮助,例如中文。但是,是的,绝对不要使用 .JPG 进行屏幕截图 - 请改用 .PNG 或 .TIFF。
猜你喜欢
  • 2020-10-28
  • 1970-01-01
  • 2020-08-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-01
  • 2023-02-07
相关资源
最近更新 更多