PythonでopenCVを使ってグレースケール変換プログラムを組んだ時に出たエラー
OpenCV Error: Assertion failed (scn == 3 || scn == 4) in cvtColor
つまりは、読み込んだ画像のチャネル数がおかしいよということ。
1 2 3 4 5 6 7 |
import cv2 im = cv2.imread("/home/user/pictures/pic.jp") gray = cv2.cvtColor(im,cv2.COLOR_RGB2GRAY) cv2.imshow("result",gray) cv2.imwrite("output_gray.png",gray) cv2.waitKey(0) |
画像の拡張子やファイル自身に問題があるかと疑ったが、原因はパスのミスでした。
いつになってもこういうミスは無くならない。。。
picturesではなくPicturesっていうだけのミス笑
読み込んだ画像をim.shape して、’NoneType’と出れば、画像が読み込めてないです。
1 2 3 4 |
import cv2 im = cv2.imread("/home/user/pictures/pic.jpg") im.shape |