1

我有一个部署在 Heroku 中的 Django 应用程序。我正在尝试使用pytesseractError opening data file /app/vendor/tesseract-ocr/tessdata/eng.traineddata从图像中读取文本。我可以在 localhost 中毫无问题地运行此应用程序,但在 heroku 中,即使我添加了此处提到的pytesseract buildpacks ,它也会显示错误

def ocr(serializer):
    imgObject = ImageModel.objects.get(id=serializer.data['id'])
    imgPath = (os.path.join(settings.MEDIA_ROOT, imgObject.image.name))
    InputFile = str(imgPath).replace("\\", "/")
    pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract'
    return pytesseract.image_to_string(Image.open(InputFile))
4

1 回答 1

0

它看起来像这一行:

pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract'

期望找到一个二进制文件来执行图像处理。Heroku 上不存在此二进制文件。也许 buildpack 已经处理了这部分配置。您是否尝试过注释掉这一行以查看它是否有效?

于 2017-02-28T20:16:32.300 回答