在 Python 中旋转图像

Rotating an Image in Python

`

import numpy 
import skimage.io
from skimage.transform import rotate
tr_1 = numpy.random.rand(5,300)
training_inputs = [numpy.reshape(tr_1[x,:], (3,10,10)) for x in range(len(tr_1))]
f = rotate(training_inputs[1], 90, resize=True)

以上代码给出了大小为 (10,4,10) 的输出。但是图像应该旋转并且它的大小应该是 (3,10,10).

任何建议以及如何处理代码?

skimage.rotate 无法旋转 3 波段图像。你必须一次轮换一个波段。

import numpy as np
import skimage.io
from skimage.transform import rotate
tr_1 = numpy.random.rand(5,300)
training_inputs = [np.reshape(tr_1[x,:], (3,10,10)) for x in range(len(tr_1))]
f0 = rotate(training_inputs[1][0], 90, resize=True)
f1 = rotate(training_inputs[1][1], 90, resize=True)
f2 = rotate(training_inputs[1][2], 90, resize=True)
f = np.rollaxis(np.dstack((f0, f1, f2)), 2, 0)

fshape 将是 (3, 10, 10)