Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在尝试将JXR图像转换为JPG格式时,Python Wand和JXR图像路径存在问题?_Python_Imagemagick_Imagemagick Convert_Wand_Jpeg Xr - Fatal编程技术网

在尝试将JXR图像转换为JPG格式时,Python Wand和JXR图像路径存在问题?

在尝试将JXR图像转换为JPG格式时,Python Wand和JXR图像路径存在问题?,python,imagemagick,imagemagick-convert,wand,jpeg-xr,Python,Imagemagick,Imagemagick Convert,Wand,Jpeg Xr,我需要能够将JPEG-XR图像转换为JPG格式,并通过ImageMagick本身实现这一点。然而,我需要能够在python应用程序中实现这一点,并且一直在考虑使用Wand。 Wand似乎没有正确使用JXR图像的路径 with open(os.path.join(args.save_location, img_name[0], result[0]+".jxr"), "wb") as output_file: output_file.write(result[1]) with Ima

我需要能够将JPEG-XR图像转换为JPG格式,并通过ImageMagick本身实现这一点。然而,我需要能够在python应用程序中实现这一点,并且一直在考虑使用Wand。 Wand似乎没有正确使用JXR图像的路径

with open(os.path.join(args.save_location, img_name[0], result[0]+".jxr"), "wb") as output_file:
    output_file.write(result[1])
    with Image(filename=os.path.join(args.save_location, img_name[0], result[0]+".jxr")) as original:
        with original.convert('jpeg') as converted:
            print(converted.format)
            pass
第一部分-创建输出文件并写入结果[1](来自SQLite数据库的JXR图像块)-工作正常。但是,当我尝试使用Python和Wand打开新保存的文件作为图像时,我得到一个错误,最终表明Wand没有找到图像的正确位置:

    Extracting panorama 00000
FAILED: -102=pWS->Read(pWS, szSig, sizeof(szSig))
        JXRGlueJxr.c:1806
FAILED: -102=ReadContainer(pID)
        JXRGlueJxr.c:1846
FAILED: -102=pDecoder->Initialize(pDecoder, pStream)
        JXRGlue.c:426
FAILED: -102=pCodecFactory->CreateDecoderFromFile(args.szInputFile, &pDecoder)
        e:\coding\python\sqlite panoramic image extraction tool\jxrlib\jxrencoderdecoder\jxrdecapp.c:477

JPEG XR Decoder Utility
Copyright 2013 Microsoft Corporation - All Rights Reserved

... [it outputs its help page in case of errors; snipped]

The system cannot find the file specified.
Traceback (most recent call last):
  File "E:\Coding\Python\SQLite Panoramic Image Extraction Tool\SQLitePanoramicImageExtractor\trunk\PanoramicImageExtractor.py", line 88, in <module>
    with Image(filename=os.path.join(args.save_location, img_name[0], result[0]+".jxr")) as original:
  File "C:\Python34\lib\site-packages\wand\image.py", line 1991, in __init__
    self.read(filename=filename, resolution=resolution)
  File "C:\Python34\lib\site-packages\wand\image.py", line 2048, in read
    self.raise_exception()
  File "C:\Python34\lib\site-packages\wand\resource.py", line 222, in raise_exception
    raise e
wand.exceptions.BlobError: unable to open image `C:/Users/RPALIW~1/AppData/Local/Temp/magick-14988CnJoJDwMRL4t': No such file or directory @ error/blob.c/OpenBlob/2674
提取全景图
失败:-102=pWS->读取(pWS、szSig、sizeof(szSig))
JXRGlueJxr.c:1806
失败:-102=ReadContainer(pID)
JXRGlueJxr.c:1846
失败:-102=pDecoder->初始化(pDecoder,pStream)
JXRGlue.c:426
失败:-102=pCodecFactory->CreateDecoderFromFile(args.szInputFile,&pDecoder)
e:\coding\python\sqlite全景图像提取工具\jxrlib\jxrencoderdecoder\jxrdecap.c:477
JPEG XR解码器实用程序
版权所有2013 Microsoft Corporation-保留所有权利
... [如果出现错误,它将输出其帮助页面;已剪断]
系统找不到指定的文件。
回溯(最近一次呼叫最后一次):
文件“E:\Coding\Python\SQLite全景图像提取工具\sqlitepanoramicmageextractor\trunk\panoramicmageextractor.py”,第88行,在
将图像(filename=os.path.join(args.save_location,img_name[0],result[0]+“.jxr”))作为原始图像:
文件“C:\Python34\lib\site packages\wand\image.py”,第1991行,在\uuu init中__
self.read(文件名=文件名,分辨率=分辨率)
文件“C:\Python34\lib\site packages\wand\image.py”,第2048行,已读
self.raise_异常()
raise\U异常中的文件“C:\Python34\lib\site packages\wand\resource.py”,第222行
提高e
wand.exceptions.BlobError:无法打开映像'C:/Users/RPALIW~1/AppData/Local/Temp/magick-14988CnJoJDwMRL4t':没有这样的文件或目录@error/blob.C/OpenBlob/2674
正如您在最后看到的,它似乎试图打开一个临时文件“C:/Users/RPALIW~1/AppData/Local/Temp/magick-14988CnJoJDwMRL4”。此时使用的文件名应该与上面几行将图像保存为文件时使用的文件名完全相同,但Wand已经替换了其他文件?这看起来类似于我在ImageMagick中遇到的上一个问题,这个问题在周末得到了修复(详细信息如下:)


有没有人成功地让Wand在Python中以图像的形式打开JXR图像,并将其转换为另一种格式?我在这里做错了什么,还是ImageMagick或Wand有问题?

类似的事情正在发生在我身上。我得到一个错误:

wand.exceptions.BlobError: unable to open image `/var/tmp/magick-454874W--g1RQEK3H.ppm': No such file or directory @ error/blob.c/OpenBlob/2701
给定的路径不是我试图打开的图像的文件路径

从文档中:

无法分配、读取或写入二进制大对象

我正试图打开一个大文件。(18mb.cr)。文件大小可能是问题所在吗

对我来说:

from wand.image import Image as WImage

with open(file_name, 'r+') as f:
    with WImage(file = f) as img:
        print 'Opened large image'
或:

成功了

~z~维克托

with open(file_name, 'r+') as f:
    image_binary = f.read()

    with WImage(blob = image_binary) as img:
        print 'Opened Large Image'