3
votes

Erreur d'assertion de détection de visage OpenCV Deep Learning dans la fonction 'cv :: dnn :: ConvolutionLayerImpl :: getMemoryShapes'

J'ai suivi le tutoriel pour implémenter la détection des visages à partir de l ' image avec OpenCV et l'infrastructure SSD d'apprentissage en profondeur.

modelFile = "./ssd/res10_300x300_ssd_iter_140000.caffemodel"
configFile = "./ssd/deploy.prototxt"
net = cv2.dnn.readNetFromCaffe(configFile, modelFile)
image = cv2.imread("face.jpg")
(h, w) = image.shape[:2]
blob = cv2.dnn.blobFromImage(cv2.resize(image, (300, 300)), 1.0, (300, 300), (104.0, 177.0, 123.0))
net.setInput(blob)
detections = net.forward()


3 commentaires

Pouvez-vous partager face.jpg ?


@ keineahnung2345 question mise à jour, exemple d'image - ibb.co/0j3ywk4


je suppose que l'image n'est pas dans le même répertoire que votre script


3 Réponses :


3
votes

Je ne peux pas reproduire votre problème en utilisant à la fois OpenCV 3.4.2 et OpenCV 4.0.0.

Voici ce que j'obtiens:

 entrez la description de l'image ici

P.S. Je télécharge res10_300x300_ssd_iter_140000.caffemodel à partir de et deploy.prototxt à partir de https://github.com/opencv/opencv/raw/3.4.0/samples/dnn/face_detector/deploy.prototxt .


0 commentaires

1
votes

Je pense savoir où est votre problème, veuillez vérifier ces deux fichiers "deploy.prototxt" et "res10_300x300_ssd_iter_140000.caffemodel" dans votre dossier ssd. Si la taille des fichiers n'est pas nulle, il se peut que votre téléchargement ait été bloqué / interrompu (bloqué par le pare-feu, échecs de connexion, etc.) comparez-le à la taille d'origine. Si la taille est égale à zéro, il n'a pas du tout été téléchargé.

Dans les deux cas, Veuillez vous rendre sur " https://github.com/ opencv / opencv / blob / master / samples / dnn / face_detector / deploy.prototxt "référentiel github

et

" https://githubypart/raw/raw/raw/ dnn_samples_face_detector_20170830 / res10_300x300_ssd_iter_140000.caffemodel "pour télécharger les deux fichiers du même nom et les remplacer.

Ou vous pouvez utiliser la même source que vous utilisiez auparavant.


0 commentaires

0
votes

J'ai eu la même erreur lors de l'utilisation d'images en niveaux de gris. Après avoir lu les images en couleur, l'erreur a été résolue.


0 commentaires