J'ai besoin d'une détection de mouvement robuste et d'un suivi dans les trames vidéo de la caméra web. L'arrière-plan est toujours le même. Le but est d'identifier la position de l'objet, si possible sans les ombres, mais pas si urgent pour supprimer les ombres. J'ai essayé l'algorithme d'opencv pour la soustraction d'arrière-plan et le seuillage, mais cela dépend d'une seule image comme fond, et si l'arrière-plan change un peu de luminosité (ou auto-focus), j'ai besoin de l'algorithme petits changements comme la luminosité ou des ombres.Opencv Détection de mouvement avec suivi
Répondre
Une méthode de suivi robuste fait partie des grands intérêts de recherche en cours de développement partout dans le monde ... Voici peut-être des clés pour résoudre votre problème qui est très intéressant mais large et ouvert. Tout d'abord, beaucoup d'entre eux suppose la constance de la luminosité (donc ce que vous demandez est difficile à réaliser). Par exemple:
- Lucas-Kanade
- Horn-Schunk
- Bloc-correspondant
est largement utilisé pour le suivi, mais suppose la constance de luminosité.
Ensuite, d'autres pourraient être intéressants ceux ou le suivi des écart des moyennes Camshift, mais vous avez besoin d'une projection à suivre ... Cependant, vous pouvez utiliser une rétroprojection calculée en conséquence à seuil pour répondre à vos besoins de robustesse ...
Je posterai plus tard à ce sujet, Julien,
Lorsque vous essayez seuillage à OpenCV que vous faites cela avec RVB (rouge, vert, bleu) ou HSV (teinte, saturation, valeur) formats de couleur? D'après mon expérience personnelle, je trouve que le codage HSV est de loin supérieur pour le suivi des objets colorés dans les séquences vidéo lorsqu'il est utilisé conjointement avec OpenCV pour le seuillage et cvBlobsLib pour l'identification de l'emplacement des blobs. HSV est plus facile car HSV a l'avantage de n'avoir à utiliser qu'un seul nombre pour détecter la couleur ("teinte"), malgré la probabilité très réelle d'avoir plusieurs nuances de cette couleur, allant de la lumière à nuances plus sombres. (La quantité de couleur et la luminosité de la couleur sont traitées par les paramètres "saturation" et "valeur" respectivement).
seuil I l'image de référence HSV ('de imgHSV') pour obtenir une image binaire (noir et blanc) en utilisant un appel de l'API OpenCV cvInRange():
cvInRangeS(imgHSV,
cvScalar(104, 178, 70 ),
cvScalar(130, 240, 124),
imgThresh);
Dans l'exemple ci-dessus, les deux Les paramètres cvScalar sont des limites inférieures et supérieures de valeurs HSV qui représentent des teintes de couleur bleuâtre. Dans mes propres expériences, j'ai pu obtenir des valeurs max/min appropriées en saisissant des captures d'écran du ou des objets que je souhaitais suivre et en observant les types de valeurs de teinte/saturation/lumière qui se produisent.
Des descriptions plus détaillées avec un échantillon de code peuvent être trouvées sur ce blog posting.
Andrian a un tutoriel frais http://www.pyimagesearch.com/2015/05/25/basic-motion-detection-and-tracking-with-python-and-opencv/
J'ai suivi et ont une bonne expérience test de https://youtu.be/HJBOOZVefXA
J'utilise l'image statique et
frameDelta = cv2.absdiff(firstFrame, gray)
thresh = cv2.threshold(frameDelta, 25, 255, cv2.THRESH_BINARY)[1]
thresh = cv2.dilate(thresh, None, iterations=2)
(cnts, _) = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL,
cv2.CHAIN_APPROX_SIMPLE)
4 lignes mouvement find code bien bonne chance
- 1. Détection de mouvement rapide dans opencv
- 2. OpenCV: détection de mouvement dans une case
- 3. détection de mouvement sur opencv C++ (caméra en mouvement)
- 4. Détection et suivi d'une voiture en mouvement
- 5. accélérer code de détection de mouvement OpenCV python numpy
- 6. Suivi de mouvement en utilisant Emgu CV (ou OpenCV)
- 7. Python OpenCV: Détection d'une direction générale du mouvement?
- 8. suivi blobs avec OpenCV
- 9. Suivi de rectangles avec opencv
- 10. OpenCV suivi de personnes de vue aérienne
- 11. Projet OpenCV simple - détection et suivi d'une balle de tennis
- 12. Détection de perspective avec OpenCv
- 13. Détection de tir avec OpenCV
- 14. Détection de ligne avec OpenCV
- 15. Suivi de mouvement
- 16. Suivi d'objet dans OpenCV
- 17. Détection de mouvement Android
- 18. Meilleur algorithme pour la détection de mouvement?
- 19. Détection de valeur OpenCV RVB?
- 20. Détection translation d'image avec OpenCV
- 21. code de détection de mouvement {EDIT}
- 22. Détection de boules de billard avec OpenCV
- 23. Détection de main OpenCV?
- 24. Détection de faux Opencv
- 25. Détection de blob OpenCV
- 26. HTML5 Détection de mouvement, saisie et défilement
- 27. SURF Détection de logo avec opencv python
- 28. UIWebView et détection de mouvement
- 29. Caméra robot + détection de mouvement
- 30. Détection de mouvement iPhone simple