4

J'ai une vision par ordinateur configurée avec deux caméras. Une de ces caméras est une caméra de temps de vol. Cela me donne la profondeur de la scène à chaque pixel. L'autre caméra est une caméra standard qui me donne une image couleur de la scène.Calcul des pixels correspondants

Nous souhaitons utiliser les informations de profondeur pour supprimer certaines zones de l'image couleur. Nous prévoyons le suivi de l'objet, de la personne et de la main dans l'image couleur et nous souhaitons supprimer le pixel d'arrière-plan lointain à l'aide de la caméra de temps de vol. Il n'est pas encore certain que les caméras puissent être alignées en parallèle.

Nous pourrions utiliser OpenCv ou Matlab pour les calculs. J'ai beaucoup lu sur la rectification, l'epipolargeometry etc. mais j'ai toujours des problèmes pour voir les étapes que je dois prendre pour calculer la correspondance pour chaque pixel.

Quelle approche utiliseriez-vous, quelles fonctions peuvent être utilisées. Dans quelles étapes diviseriez-vous le problème? Y a-t-il un tutoriel ou un exemple de code disponible quelque part?

Mise à jour Nous prévoyons de faire un étalonnage automatique en utilisant des marqueurs connus placés dans la scène

+0

Je suppose que vous avez déjà envisagé de faire le suivi avec seulement la caméra de distance (ou avec la caméra normale)? –

Répondre

3

Si vous souhaitez des correspondances robustes, vous devriez envisager SIFT. Il y a plusieurs implémentations dans MATLAB - J'utilise le Vedaldi-Fulkerson VL Feat library.

Si vous vraiment besoin des performances rapides (et je pense que vous ne), vous devriez penser à utiliser OpenCV détecteur « s SURF.

Si vous avez d'autres questions, demandez. This other answer de la mienne pourrait être utile.

PS: par correspondance, je suppose que vous voulez trouver les coordonnées d'une projection du même point 3D sur les deux images - à savoir les coordonnées (i,j) d'un pixel dans l'image u_A A et B u_B dans l'image qui est une projection du même point en 3D.