python的scipy.ndimage图像裁剪实例
时间: 2024-09-29 08:07:17 浏览: 60
在Python的Scipy库中,`ndimage`模块提供了一系列用于处理多维数组(比如图像)的函数。裁剪(cropping)图像是一个常见的操作,可以使用`crop()`函数来实现。这里是一个简单的例子:
```python
from scipy import ndimage as ndi
import matplotlib.pyplot as plt
import numpy as np
# 创建一个示例图像
img = np.zeros((100, 100), dtype=np.uint8)
img[40:60, 50:70] = 255 # 在中间区域填充白色像素
# 使用ndimage.crop()裁剪图像
cropped_img = ndi.crop(img, start=(20, 30), stop=(80, 90))
# 显示原图和裁剪后的图像
fig, axs = plt.subplots(1, 2)
axs[0].imshow(img, cmap='gray')
axs[0].set_title('Original Image')
axs[1].imshow(cropped_img, cmap='gray')
axs[1].set_title('Cropped Image')
plt.show()
```
在这个例子中,`start`参数指定开始裁剪的位置(包括该位置),`stop`参数指定结束裁剪的位置(不包括该位置)。这将从原始图像的(20, 30)坐标处开始,到(80, 90)坐标处结束进行裁剪。
阅读全文