【问题标题】:Unicode Decode Error while reading text from image从图像读取文本时出现 Unicode 解码错误
【发布时间】:2018-02-12 08:18:44
【问题描述】:

我已使用此代码从图像文件中读取文本。 Reading text from image

代码如下

from PIL import Image
from pytesseract import image_to_string

image = Image.open("image.jpg",'r')

myText = image_to_string(Image.open(open('maxresdefault.jpg')),config='-psm 10')
myText = image_to_string(Image.open(open('maxresdefault.jpg')))
print(myText)

错误:UnicodeDecodeError:'charmap'编解码器无法解码位置 278 中的字节 0x81:字符映射到

尝试通过以下方式解决此错误:UnicodeDecodeError: 'charmap' codec can't decode byte X in position Y: character maps to <undefined>

然后出现错误:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte

【问题讨论】:

标签: python anaconda


【解决方案1】:

根据Image 文档(help(Image.open)),图像文件必须以二进制模式打开:

open('maxresdefault.jpg', 'rb')

【讨论】:

  • 我收到此错误:ValueError: bad mode 'rb'。刚刚发现Image不支持'rb'模式
  • 'rb' 标志必须传递给 open(),而不是 Image.open()。
【解决方案2】:

以二进制格式加载图像。

更改以下代码为我解决了问题。

import PIL.Image
pil_image = PIL.Image.open(image_path, "rb")

希望对你有帮助!

【讨论】:

    猜你喜欢
    • 2019-01-23
    • 2016-01-25
    • 1970-01-01
    • 1970-01-01
    • 2019-12-20
    • 1970-01-01
    • 2019-04-30
    • 2011-10-21
    • 1970-01-01
    相关资源
    最近更新 更多