我想制作灰度影像但出現這樣的錯誤,我已經在谷歌上搜索過但沒有得到答案,我不知道應該使用什么關鍵字在谷歌上搜索它。
我的代碼:
!pip install matplotlib
import numpy as np
import matplotlib.pyplot as plt
img = plt.imread('/content/drive/MyDrive/Colab Notebooks/gambar.jpg')
img = np.zeros([120, 300, 3], dtype=np.uint8)
h, w = img[:2]
for x in range(w):
for y in range(h):
gray = (20 125 255) / 3
img[y,x] = gray
plt.imshow(img)
plt.show()
錯誤輸出:
TypeError Traceback (most recent call last)
<ipython-input-43-e6c1f87f1234> in <module>()
8 h, w = img[:2]
9
---> 10 for x in range(w):
11 for y in range(h):
12 gray = (20 125 255) / 3
TypeError: only integer scalar arrays can be converted to a scalar index
uj5u.com熱心網友回復:
在這里查看答案。接受的答案顯示使用 Pillow 和 numpy/matplotlib 執行此操作。
如果最終目標只是將影像保存為灰度版本,那么 Pillow 將完成這項作業。如果目標是將灰度版本發送到需要 numpy/matplotlib 的腳本的其他部分,您可以使用上述鏈接中答案的第二部分,或者將 Pillow 物件轉換為 numpy 陣列,如此處所示。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/448584.html
標籤:Python 麻木的 matplotlib 图像处理
