scipy.ndimage.interpolation.rotate中的'axes'参数

时间:2012-08-24 17:13:34

标签: python numpy scipy

我不太了解以下旋转功能中的参数axes

scipy.ndimage.interpolation.rotate(input, angle, axes=(1, 0), reshape=True, output=None, order=3, mode='constant', cval=0.0, prefilter=True)

该文件中的解释如下:

  

轴:2个整数的元组,可选

     

定义旋转平面的两个轴。默认是前两个轴。

两个轴可以定义一个旋转平面吗?

2 个答案:

答案 0 :(得分:6)

Ndimage用于处理多维图像。 n维图像将具有n个轴。要进行旋转,需要选择两个轴来定义要在其中进行旋转的平面。这是axes参数允许您指定的内容。

轴从0开始编号。它在文档中并非100%明确,但我的解释是“轴”在这里意味着与Numpy中的相同,即n维数据结构的维度,其中零是行,一个是列,等等。所以(1,0)的意思是“第一和第零维度”。

传递(1,1)将毫无意义,因为它指定了两次相同的轴。传递(0,1)将与pasing(1,0)相同,但是通过以相反顺序传递轴,您将改变旋转方向。

答案 1 :(得分:1)

经过多次测试:旋转轴可以解释如下:

如果我们使用给定轴的数字: 0 - x轴; 1 - y轴; 2 - z轴;

轴=(1,0)和(0,1)相同,即任意y轴x。旋转平面是x-y平面。

轴=(1,2)和(2,1)相同,即任意z轴。旋转平面是y-z平面。

轴=(2,0)和(0,2)是相同的,它是x任何z轴。旋转平面是x-z平面。