📜  使用 ndimage.rotate Scipy 旋转图片

📅  最后修改于: 2022-05-13 01:55:33.623000             🧑  作者: Mango

使用 ndimage.rotate Scipy 旋转图片

先决条件: Mathplotlib、Scipy

图像处理中一些最常见的任务是显示图像、基本操作、图像过滤、图像分割。
在本文中,我们将使用 SciPy 模块“ndimage.rotate()”进行旋转。 SciPy ndimage 子模块专用于图像处理。这里, ndimage 表示 n 维图像。

方法:

  • 导入所有需要的模块。
  • SciPy 带有一些图像,我们使用这些图像。
  • 在 ndimage.rotate() 中调用并传递参数。
  • 显示图像。

第一步:导入模块。

Python3
from scipy import ndimage, misc
from matplotlib import pyplot as plt


Python3
from scipy import ndimage, misc
from matplotlib import pyplot as plt
  
panda = misc.face()


Python3
from scipy import ndimage, misc
from matplotlib import pyplot as plt
panda = misc.face()
  
#image rotated 135 degree
panda_rotate = ndimage.rotate(panda, 135, mode = 'constant')


Python3
from scipy import ndimage, misc
from matplotlib import pyplot as plt
  
panda = misc.face()
#image rotated 35 degree
panda_rotate = ndimage.rotate(panda, 35,
                              mode = 'mirror')
plt.imshow(panda_rotate)
plt.show()


Python3
from scipy import ndimage, misc
from matplotlib import pyplot as plt
  
panda = misc.ascent()
  
#image rotated 360 degree
panda_rotate = ndimage.rotate(panda, 45, 
                              mode = 'constant')
plt.imshow(panda_rotate)
plt.show()


第 2 步: SciPy 中的 misc 包带有一些图像。我们使用这些图像来学习图像操作。

蟒蛇3

from scipy import ndimage, misc
from matplotlib import pyplot as plt
  
panda = misc.face()

第 3 步: SciPy“ndimage”子模块专用于图像处理。这里,“ndimage”表示n维图像。

蟒蛇3

from scipy import ndimage, misc
from matplotlib import pyplot as plt
panda = misc.face()
  
#image rotated 135 degree
panda_rotate = ndimage.rotate(panda, 135, mode = 'constant')

下面是实现:

示例 1:

蟒蛇3

from scipy import ndimage, misc
from matplotlib import pyplot as plt
  
panda = misc.face()
#image rotated 35 degree
panda_rotate = ndimage.rotate(panda, 35,
                              mode = 'mirror')
plt.imshow(panda_rotate)
plt.show()

输出:

示例 2:

蟒蛇3

from scipy import ndimage, misc
from matplotlib import pyplot as plt
  
panda = misc.ascent()
  
#image rotated 360 degree
panda_rotate = ndimage.rotate(panda, 45, 
                              mode = 'constant')
plt.imshow(panda_rotate)
plt.show()

输出: