7

Wandを使用してpdfファイルを画像に変換しています。次に、ndimage を使用してさらに画像処理を行います。

Wand イメージを ndarray に直接変換したいのですが、ここで答えを見ましたが、OpenCV を使用しています。これは OpenCV を使用せずに可能ですか?

とりあえず一時ファイルを保存し、scipy.misc.imread() で再度開きます。

4

4 に答える 4

1

次のようにバッファを使用できます。

import cStringIO
import skimage.io
from wand.image import Image
import numpy

#create the image, then place it in a buffer
with Image(width = 500, height = 100) as image:
    image.format        = 'bmp'
    image.alpha_channel = False
    img_buffer=numpy.asarray(bytearray(image.make_blob()), dtype=numpy.uint8)

#load the buffer into an array
img_stringIO = cStringIO.StringIO(img_buffer)
img = skimage.io.imread(img_stringIO)

img.shape
于 2017-12-18T15:38:17.803 に答える
1

MrMartinの答えのPython3バージョンは次のとおりです

from io import BytesIO
import skimage.io
from wand.image import Image
import numpy

with Image(width=100, height=100) as image:
    image.format = 'bmp'
    image.alpha_channel = False
    img_buffer = numpy.asarray(bytearray(image.make_blob()), dtype='uint8')
bytesio = BytesIO(img_buffer)
img = skimage.io.imread(bytesio)

print(img.shape)
于 2018-05-02T18:29:41.683 に答える