web-dev-qa-db-ja.com

OpenCVエラー:(-215:Assertion failed)VScn :: contains(scn)&& VDcn :: contains(dcn)&& VDepth :: contains(depth)in function 'CvtHelper'

Traceback (most recent call last):
File "demo.py", line 132, in 
     `result = find_strawberry(image)`
File "demo.py", line 63, in find_strawberry
`image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)`
cv2.error: OpenCV(3.4.2) /Users/travis/build/skvark/opencv-python/opencv/modules/imgproc/src/color.hpp:253: error: (-215:Assertion failed) VScn::contains(scn) && VDcn::contains(dcn) && VDepth::contains(depth) in function 'CvtHelper'

私は個人的にこの質問に多くの時間を費やしてきたので、Stackoverflowに投稿することは適切だと考えました。

質問: llSourcell/Object_Detection_demo_LIVE

5

opencvでトラックバーを使用しているときに同じエラーが発生しますが、このメソッドはそれを解決しました:

img = np.full((512,512,3), 12, np.uint8)

ここで、imgは画像です

0
Dhurub Saxena

さて、私はエピポーラジオメトリ(以下のリンクを参照)を行っていて、この問題がありました。このエラーを解決するには、次の2つの方法のいずれかを実行します。

最初の方法-元の色を維持:A.からゼロパラメータを削除して、元の色(私の場合はRGB)で画像を読み込みますcv2.imread。

img1 = cv2.imread('image.jpg') 

B. RGBであるため、画像の形状を編集する必要があるかもしれません

r, c,_ = img1.shape 

C.変換にコメントする

# img1 = cv2.cvtColor(img1,cv2.COLOR_GRAY2BGR)

2番目の方法-グレースケールイメージに変換:A.ゼロパラメーターをcv2.imreadに追加して、BGRにイメージをロードします。

img1 = cv2.imread('image.jpg',0) 

B. BGRであるため、画像の形状を編集する必要があるかもしれません

r, c = img1.shape 

C.これで画像をグレースケール画像に変換できます

img1 = cv2.cvtColor(img1,cv2.COLOR_GRAY2BGR)

2つの方法がうまくいかない場合は、以下のリンクを確認して、質問に対する回答が得られている可能性があります。

https://github.com/aleju/imgaug/issues/157https://github.com/llSourcell/Object_Detection_demo_LIVE/issues/6

エピポーラジオメトリ

https://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_calib3d/py_epipolar_geometry/py_epipolar_geometry.html

0
Ahmadiah