使用 Python 的图像中的光学字符识别



我有一个图像文件,Python读取并将其转换为十六进制。这里的问题是,即使我给一个空的空白图像,它也会给出十六进制数字作为输出。我需要 Python 只处理图像中的字母,并将它们隐藏为十六进制并将其作为输出。

这是我累了的程序

import binascii
filename = 'a.png'
with open(filename, 'rb') as f:
content = f.read()
print(binascii.hexlify(content))

这是OCR(光学字符识别(问题,在堆栈历史记录中多次讨论。

Pytesserect可以轻松地做到这一点。

用法:

import pytesserect
from PIL import Image
# Get text in the image
text = pytesseract.image_to_string(Image.open(filename))
# Convert string into hexadecimal
hex_text = text.encode("hex")

最新更新