前言
這篇是我在實作 OpenCV 時,碰到以下錯誤訊息的解決辦法:
AttributeError: 'JpegImageFile' object has no attribute 'shape'
解決辦法
個人產生此問題的原因是因為在使用「圖片處理 package 的時候」,
將「pillow (import PIL)」與「OpenCV (import cv2)」混用了,
個人導致此錯誤的原因是因為使用用了 PIL 的方式讀檔
pillow, opencv 混用 (錯誤)
img = Image.open(path)
print(img.shape) #error !!!
讀進來的會是 PIL 的格式,不支援 OpenCV 的 shape 參數,
所以請修改成一致,
改為只用 opencv
這邊使用 OpenCV 來示範:
img = cv2.imread(path)
print(img.shape) #error !!!