阅读多个图像后的Wand DelegateError

时间:2018-01-02 16:51:43

标签: python ghostscript wand

我正在从文件夹中读取图像,并使用openCV在图像中搜索特定图案。不幸的是,在几张图片之后我得到了下面的wand.exceptions.DelegateError。在错误发生之前读取的图像数量变化很大,有时它发生在有时在20之后的3个图像之后。

错误:

  

文件“/usr/local/python3.5/dist-packages/wand/resource.py”,第222行,   在raise_exception中引发e wand.exceptions.DelegateError:   FailedToExectuteCommand'“gs”-q -dQUIET -dSAFER -dBATCH -dNOPAUSE   -dNOPRINT -dMaxBitmap = 500000000 -dAlignToPixels = 0 -dGridFitTT = 2“-sDEVICE = pngalpha”-dTextAlphaBits = 4“-r500x500”   “-sOutputFile = / TMP / magick-29605oLlgPbxLwJy%d”   “-f / tmp / magick-2960EjsrSmTrJxjN”“ - f / tmp / magick-2960f8G76Z8ZfzT1”'   (-1)@ error / delegate.c / ExternalDelegateCommand / 461

我试图从终端运行代码,而不是按照本文中的建议运行PyCharm,但错误仍在发生:Wand and ghostscript issue on PyCharm

以下是我系统的一些细节:

  • Oracle VirtualBox - Ubuntu 16.04
  • Python 3.5
  • Wand 0.4.4
  • ghostscript 9.18(从repo安装)

代码:

for doc in PDFs:
    d+=1
    print('')
    print('Document:', '(', d, 'of', len(PDFs), ')', doc)
    #Create JPEG object
    image_pdf = Image(filename=path+doc, resolution=500)
    image_jpeg = image_pdf.convert('jpeg')

    req_image = list()

    #Create list of jpeg blobs for Pattern Scanning
    for img in image_jpeg.sequence:
        image_page = Image(image=img)
        req_image.append(image_page.make_blob('jpeg'))


    #Loop for processing each image in a PDF
    n=0
    for img in req_image:
        n+=1

        image_buffer = np.asarray(bytearray(img), dtype=np.uint8)
        if image_buffer is not None:
            cv_img = cv2.imdecode(image_buffer, cv2.IMREAD_GRAYSCALE)

有没有人遇到过这个错误?我很困惑为什么这个过程最初适用于多个文档,但似乎随机生成错误。

感谢您的帮助。

0 个答案:

没有答案