[解決策] open cvエラー:(-215)scn == 3 ||関数cvtColorのscn == 4



Open Cv Error



CV実行時のこのエラーの解決策:open cvエラー:(-215)scn == 3 ||関数cvtColorのscn == 4

File 'cv.py', line 11, in gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) cv2.error: /home/arthurckl/Desktop/opencv-3.0.0-rc1/modules/imgproc/src/color.cpp:7564: error: (-215) scn == 3 || scn == 4 in function cvtColor

最初のタイプ:コードの重複が原因

最初にエラーコード



import numpy as np import cv2 img = cv2.imread('2015-05-27-191152.jpg',0) gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

この場合、imread()関数の2番目のパラメーターが0であるため、画像は自動的にグレースケールに変換され、「from cv2.cvtColor()」関数が再び変更され、あいまいさエラーが発生します。

に修正



import numpy as np import cv2 img = cv2.imread('2015-05-27-191152.jpg')#Remove the second parameter gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)

2番目:パス設定が正しくないことが原因

最初にエラーコード

import cv2 import numpy img = cv2.imread('C:/photos/img/test.png') #Or img = cv2.imread('C://photos/img/test.png') # img = cv2.imread('C://photos//img//test.png') img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

この状況は、パスのエラーが原因で発生します。 ルートディレクトリの下のローカルパスに書き込む必要がありますが、グローバルパスには記述しないでください

に修正

import cv2 import numpy img = cv2.imread('./img/test.png')#Download from the root directory of the py file img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

上記は私があなたと共有した2つの解決策です。それがあなたのために働くならば、私に親指をあきらめることを忘れないでください!