2016-12-21 2 views
-2

J'ai l'erreur suivante dans OpenCV (python) et j'ai beaucoup googlé mais je n'ai pas pu résoudre.Erreur OpenCV: Echec de l'assertion (L.channels() == 1 && I.channels() == 1) dans connectedComponents_sub1

Je serais reconnaissant si quelqu'un pouvait me donner un indice.

OpenCV Error: Assertion failed (L.channels() == 1 && I.channels() == 1) in connectedComponents_sub1, file /home/snoopy/opencv- 3.1.0/modules/imgproc/src/connectedcomponents.cpp, line 341 Traceback (most recent call last): File "test.py", line 30, in plant = analyzeplant.analyzeSideView(plant) File "/home/snoopy/Desktop/Leaf-201612/my-work- editing/ripps/src/analyzePlant.py", line 229, in analyzeSideView plant_img = self.__extractPlantArea(plant_img) File "/home/snoopy/Desktop/Leaf-201612/my-work- editing/ripps/src/analyzePlant.py", line 16, in __extractPlantArea output = cv2.connectedComponentsWithStats(plant, 4, cv2.CV_32S) cv2.error: /home/snoopy/opencv- 3.1.0/modules/imgproc/src/connectedcomponents.cpp:341: error: (-215) > L.channels() == 1 && I.channels() == 1 in function connectedComponents_sub1

+1

Non sans [mcve], malheureusement. –

+0

Qu'est-ce qu'une erreur "rare"? –

+0

suivant le lien ci-dessous, j'ai ajouté cv2.IMREAD_GRAYSCALE et l'erreur> Assertion a échoué (L.channels() == 1 && I.channels() == 1) dans connectedComponents_sub1> a résolu. 'image = cv.imread ("/home/snoopy/Bureau/Leaf-201612/cropped-image/cropped_125254_ver2.bmp ", cv2.IMREAD_GRAYSCALE)' a fait le travail. [lien] (http://answers.opencv.org/question/96641/problem-> using-connectedcomponents-in-opencv-3-using-visual-studio-2012 /) Merci quand même-Wayne Werner – 007

Répondre

5

Analysons il:

Assertion failed (L.channels() == 1 && I.channels() == 1)

Les images que vous passez à une fonction doit être de 1 canal (gris pas de couleur).

__extractPlantArea(plant_img)

qui est arrivé dans votre code exactement à la fonction appelée __extractPlantArea.

cv2.connectedComponentsWithStats

Lorsque vous appelez la fonction OpenCV appelée connectedComponentsWithStats.

Conclusion:

Ne pas passer coloré (BGR) image pour connectedComponentsWithStats

+0

Oui, ça a tourné pour être la cause..fixé avec 'cv2.IMREAD_GRAYSCALE' merci Humam! – 007