相关疑难解决方法(0)

从POST解码base64以在PIL中使用

我在Flask中创建了一个简单的API,它接受在base64中编码的图像,然后将其解码以便使用Pillow进行进一步处理.

我看了一些例子(1,2,3),我觉得我得到的过程的要点,但我不断收到一个错误的枕头无法读取我给它的字符串.

这是我到目前为止所得到的:

import cStringIO
from PIL import Image
import base64

data = request.form
image_string = cStringIO.StringIO(base64.b64decode(data['img']))
image = Image.open(image_string)
Run Code Online (Sandbox Code Playgroud)

这给出了错误:

IOError: cannot identify image file <cStringIO.StringIO object at 0x10f84c7a0>
Run Code Online (Sandbox Code Playgroud)

python base64 python-imaging-library flask pillow

40
推荐指数
3
解决办法
3万
查看次数

如何使用PIL读取原始图像?

我有一个原始图像,其中每个像素对应一个16位无符号整数.我试图使用PIL Image.fromstring()函数读取,如下面的代码:

if __name__ == "__main__":
    if (len(sys.argv) != 4):
        print 'Error: missing input argument'
        sys.exit()

    file = open(sys.argv[1], 'rb')
    rawData = file.read()
    file.close()

    imgSize = (int(sys.argv[2]), int(sys.argv[3]))

    # Use the PIL raw decoder to read the data.
    #   - the 'F;16' informs the raw decoder that we are reading a little endian, unsigned integer 16 bit data.
    img = Image.fromstring('L', imgSize, rawData, 'raw', 'F;16')

    im.save('out.png')
Run Code Online (Sandbox Code Playgroud)

PIL文档通知fromstring()函数的第一个参数是'mode'.然而,看文档和谷歌搜索,我无法找到有关该论点真正意义的细节(我相信它与色彩空间或类似的东西有关).有谁知道我在哪里可以找到关于fromstring()函数的更详细的参考以及mode参数的含义?

python image image-processing python-imaging-library

30
推荐指数
4
解决办法
6万
查看次数