Bonjour a tous,

Ca fait un moment que je connais le site developpez.net mais la premiere fois que j'ose faire une demande ... il faut dire que je suis stuck !

Je suis donc en train de faire du calcul de disparite avec deux web cams ( ce sont des ps3 eyes ) et en utilisant les fonctions d'opencv

Pour ce faire je commence donc par ma calibration en prenant des series de 20 photos de "chessboard". On appel les fonctions qui vont bien. (FindChessBoard, SubPix,calibrateCamera)

Ensuite on fait la calibration stereo avec pareil les fonctions StereoCalibrate et StereoRectify toujours avec les photos prises auparavant.

Finalement calcul des matrices pour remapper les images en entree et les passer a l'algo de stereoMatching.

Bon tout ca j'ai fait, le hic maintenant c'est que mes resultats sont de mauvais a tres mauvais.
La calibration me semble correcte au niveau des valeurs de matrices de camera, de coefficient intrinseques et celles de translation et rotation entre les 2 cameras.
J'utilise le nouvel algo disponible dans openCV 2.1 StereoSGBM (semi global block matching).

Les problemes rencontres :
Enormement de bruit
Aucune information probante sur la profondeur.

Exemple : les deux images superieurs sont celles remapees


Hier j'ai reussi a avoir un resultat presque correcte, mais j'ai perdu le setting.

Questions du coup :
Quel est le meilleur positionnement pour les cameras
Est ce que les parametres pour le stereoMatching vous sembles bon ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
//stereo calculation class
	StereoSGBM stereoMatcher;
 
	//Stereo reconstruction settings
	stereoMatcher.P1 = 8*stereoMatcher.SADWindowSize*stereoMatcher.SADWindowSize; // 3 = nb channels
	stereoMatcher.P2 = 32*stereoMatcher.SADWindowSize*stereoMatcher.SADWindowSize;
	stereoMatcher.minDisparity = 0;
	stereoMatcher.numberOfDisparities = (w/8)-(w/8)%16; //img.width/8
	stereoMatcher.uniquenessRatio = 10;
	stereoMatcher.speckleWindowSize = 150;
	stereoMatcher.speckleRange = 32;
	stereoMatcher.disp12MaxDiff = 1;
	stereoMatcher.fullDP = true;
Quels parametres utilisez vous sur l'autre algo (BM) ?

Merci beaucoup de vos reponses

Sil.