OpenCv Blob/Contour de l'étiquetage
Salut j'ai travaillé sur cette question depuis un certain temps et encore n'ai pas de bonne solution.
Je suis de la lecture d'une vidéo image par image et je suis à l'aide de soustraction d'arrière-plan à"
identifier la zone où est-il le mouvement et l'utilisation cvFindContours() pour obtenir le rectangle de délimitation de l'objet en déplacement.
En supposant que le programme est simple il peut y avoir seulement 2 de l'homme.
Ces objets et de les déplacer d'une manière qu'ils peuvent se chevauchent, de faire tourner et de s'éloigner à certain intervalle.
Comment puis-je l'étiquette de cet homme x 2 correctement.
cvFindContour pouvez retourner la limite d'une manière aléatoire. pour Image1,Image2,Image3....FrameN
Je peux d'abord comparer rect limite centre de gravité de l'étiquette de l'homme correctement. Une fois que l'homme se chevauchent et s'éloigner de cette approche ne fonctionnera pas.
J'ai essayé de garder une trace de couleur de pixel de l'obj d'origine (cependant l'homme sont relativement similaires et certaines zones ont des couleurs similaires, comme la main,la jambe,cheveux ) et donc pas assez bon.
J'envisageais de l'aide de l'Image de Statistiques comme :
CountNonZero(),
SumPixels()
Moyenne()
Mean_StdDev ()
MinMaxLoc ()
Norm ()
de bien distinguer les deux objets. Je crois que ce serait une meilleure approche.
OriginalL'auteur user43076 | 2008-12-20
Vous devez vous connecter pour publier un commentaire.
C'est un problème difficile et aucune solution ne sera pas parfait. La vision par ordinateur est en plaisantant, connu comme "AI-complet" de la discipline: si vous résoudre la vision par ordinateur et que vous avez résolu tous de l'intelligence artificielle.
Soustraction du bruit de fond peut être un bon moyen de détecter les objets. Si vous avez besoin pour améliorer la soustraction d'arrière-plan des résultats, vous pourriez envisager d'utiliser un La MFR de. Sans doute, vous pouvez dire quand il n'y a qu'un seul objet et lorsque les deux blobs ont fusionné, en fonction de la taille de la goutte. Si les trajectoires ne change pas rapidement au cours la fois les gouttes sont fusionnées, vous pouvez faire Kalman suivi et d'utiliser certaines heuristiques de lever l'ambiguïté de gouttes par la suite.
Même si les couleurs sont similaires entre les deux objets, vous pouvez essayer d'utiliser un décalage tracker. Il est possible que vous devrez peut-être faire quelques filtrage particulaire à garder la trace de plusieurs hypothèses au sujet de qui est qui.
Il y a aussi certains encore plus compliqué techniques, appelées couches de suivi. Il y a certains travaux plus récents par Jojic et Frey, par Winn, par Zhou et Tao, et par d'autres. La plupart de ces techniques, sont très fortement des hypothèses et/ou de prendre beaucoup de travail à mettre en œuvre correctement.
Si vous êtes intéressé par ce sujet en général, je recommande fortement de prendre un cours de vision par ordinateur et/ou en lisant un manuel comme Ponce et de Forsyth.
Merci pour les liens cassés. J'ai mis à jour.
OriginalL'auteur Mr Fooz
Vous pouvez essayer de se rappeler un coin de chaque image (en haut à gauche par exemple). Ensuite, lorsque vous recevez votre nouvelle série d'images, vous comparez la distance de leurs coins à ceux précédemment enregistrés. Ce n'est bien sûr pas de solution parfaite.
OriginalL'auteur Stefan Schmidt
Semble difficile, surtout si il y a beaucoup de bruit dans la vidéo.
Peut-être identifier les différents cas dans lesquels les deux humains interagissent. Quelques exemples:
De la Vision par ordinateur manuels peuvent aider à déterminer les autres cas.
Envisager de mesurer la totalité de ces fonctions que vous avez énumérés pour chaque image de la vidéo et faites un graphique de leurs résultats. De déterminer s'il y a une façon pour correspondre à quelque chose comme l'écart-type de pixel de couleur dans une boîte englobante de l'homme qui est après qu'ils se croisent.
OriginalL'auteur Chris Cameron