Erreur étrange dans OpenCV

NikSotir

J'écris un programme en python en utilisant OpenCV qui détecte les bords (Canny Edge Detector) à partir des images enregistrées par ma webcam. J'utilise également deux track-bars afin de contrôler les valeurs de seuil (afin de comprendre comment ces valeurs changent la sortie de ce détecteur de front).

Le code que j'ai écrit est le suivant:

import cv2
import numpy as np


def nothing(x):
    pass

img = np.zeros((300,512,3), np.uint8)
cv2.namedWindow('cannyEdge')
cv2.createTrackbar("minVal", "cannyEdge", 0,100, nothing)
cv2.createTrackbar("maxVal", "cannyEdge", 100,200,nothing)

cap = cv2.VideoCapture(0)
while(True):

    minVal = cv2.getTrackbarPos("minVal", "cannyEdge")
    maxVal = cv2.getTrackbarPos("maxVal", "cannyEdge")

    #capture frame by frame
    ret, frame = cap.read()
    cv2.imshow('frame', frame)
    edge = cv2.Canny(frame,minVal,maxVal)

    #display the resulting frame
    cv2.imshow('frame', edge)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

#When everything is done, release the capture
cap.release
cv2.destroyAllWindows()

Ce programme est uniquement à des fins éducatives car j'apprends actuellement à utiliser OpenCV.

Chaque fois que j'exécute le programme ci-dessus, le code semble fonctionner correctement mais j'obtiens l'erreur suivante:

GLib-GObject-CRITICAL **: g_object_unref: l'assertion 'G_IS_OBJECT (object)' a échoué

J'ai recherché la raison pour laquelle cette erreur se produit mais je n'ai rien trouvé d'utile. Mon instinct me dit que mon implémentation pour les trackbars est incorrecte et donc cela cause cette erreur.

Les tutoriels que j'ai utilisés sont les suivants:

Quelqu'un sait-il pourquoi cette erreur se produit? Toute aide serait appréciée!

J'utilise Ubuntu 14.04, OpenCV 3.2.0 et Python 2.7.6

I.Newton

Essayez de créer les barres de piste et d'afficher l'image dans la même fenêtre et voyez si l'erreur persiste. Je parie que ça ne devrait pas. Changement: cv2.imshow ('cannyEdge', edge)

Cet article est collecté sur Internet, veuillez indiquer la source lors de la réimpression.

En cas d'infraction, veuillez [email protected] Supprimer.

modifier le
0

laisse moi dire quelques mots

0commentaires
connexionAprès avoir participé à la revue

Articles connexes

TOP liste

  1. 1

    Microsoft.WebApplication.targets

  2. 2

    Spring @RequestParam DateTime format comme ISO 8601 Date Heure facultative

  3. 3

    comment supprimer "compte de connexion google" à des fins de développement - actions sur google

  4. 4

    Comment ajouter une entrée à une table de base de données pour une combinaison de deux tables

  5. 5

    Passer la taille d'un tableau 2D à une fonction ?

  6. 6

    Exporter la table de l'arborescence vers CSV avec mise en forme

  7. 7

    Impossible d'accéder à la vue personnalisée pendant le test de l'interface utilisateur dans XCode

  8. 8

    Créer un système Buzzer à l'aide de python

  9. 9

    Comment changer le navigateur par défaut en Microsoft Edge pour Jupyter Notebook sous Windows 10 ?

  10. 10

    impossible d'obtenir l'image d'arrière-plan en plein écran dans reactjs

  11. 11

    Algorithme: diviser de manière optimale une chaîne en 3 sous-chaînes

  12. 12

    CSS: before ne fonctionne pas sur certains éléments,: after fonctionne très bien

  13. 13

    Conversion double en BigDecimal en Java

  14. 14

    Comment obtenir l'intégration contextuelle d'une phrase dans une phrase à l'aide de BERT ?

  15. 15

    Comment choisir le nombre de fragments et de répliques Elasticsearch

  16. 16

    Comment vérifier si un utilisateur spécifique a un rôle? Discord js

  17. 17

    Comment créer un bot à compte à rebours dans Discord en utilisant Python

  18. 18

    Existe-t-il un moyen de voir si mon bot est hors ligne ?

  19. 19

    comment afficher un bouton au-dessus d'un autre élément ?

  20. 20

    Comment activer le message Pylint "too-many-locals" dans VS Code?

  21. 21

    Je continue à obtenir l'objet 'WSGIRequest' n'a pas d'attribut 'Get' sur django

chaudétiquette

Archive