1
我使用numpy和matplotlib在python中導入圖像。我想創建一個3d陣列,這樣在第1和第2軸上我有像素值,在第0軸上我有圖像編號。到目前爲止,我得到了這樣的東西:python中的圖像數組
from PIL import Image
import numpy
import matplotlib.pyplot as plt
import glob
imageFolderPath = '/home/B/Pictures/'
imagePath = glob.glob(imageFolderPath+'/*.JPG')
im_array = numpy.array(Image.open(imagePath[0]).convert('L'), 'f')
im_array = numpy.expand_dims(im_array, axis=0)
for c in range(1, len(imagePath)):
im_array_new = numpy.array(Image.open(imagePath[c]).convert('L'), 'f')
im_array_new = numpy.expand_dims(im_array_new, axis=0)
im_array = numpy.append(im_array, im_array_new, axis=0)
這項工作,但它是一些醜陋的。我不喜歡這樣一個事實,即我必須擴展二維數組的維度,然後將它們附加在一起。 有沒有更好的方法來做到這一點在python中?可能,而無需預先分配一個巨大的三維陣列(N照片,x維度,y維度)
這是迄今爲止更優雅然後我的。謝謝 – BiA