补充代码img_checkeboard = io.imread("checkeboard8_pixeldup_8.tif") plt.subplot(121) plt.imshow(img_checkeboard) plt.axis('off') plt.title("Original") img_binary = np.zeros_like(img_checkeboard) plt.subplot(122) plt.imshow(img_binary) plt.axis('off') plt.title("Binary")
时间: 2023-12-10 20:38:19 浏览: 94
open-cv,haarcascade_frontalface_default.xml人脸检测模型包
好的,我来补充一下完整的代码,供您参考:
```python
import numpy as np
import matplotlib.pyplot as plt
from skimage import io, filters
# 读取图像
img_checkeboard = io.imread("checkeboard8_pixeldup_8.tif")
# 显示原图
plt.subplot(121)
plt.imshow(img_checkeboard)
plt.axis('off')
plt.title("Original")
# 二值化处理
img_binary = np.zeros_like(img_checkeboard)
threshold = filters.threshold_otsu(img_checkeboard)
img_binary[img_checkeboard >= threshold] = 1
# 显示二值化后的图像
plt.subplot(122)
plt.imshow(img_binary)
plt.axis('off')
plt.title("Binary")
plt.show()
```
这段代码中使用了 `skimage` 库中的 `io.imread` 方法读取图像;使用 `filters.threshold_otsu` 方法计算出阈值,并将图像转化为二值化图像。最后使用 `matplotlib` 库中的 `imshow` 和 `subplot` 方法显示原图和二值化后的图像。
希望能对您有所帮助!
阅读全文