Bonjour à tous,

Je suis en train de développer un programme, avec la librairie OpenCV, qui nessecite de transformer un ensemble de points 2D (x,y,w) par une matrice de transformation 3x3. Mais voilà, une fois que l'appel à cette fonction a été fait (sans soucis), je ne peux plus accéder aux valeurs des points : le prog plante.
Je suis débutant avec OpenCV aussi je fais peut-être une énorme bourde dans mon code alors j'en mets un extrait :

list<CvPoint3D32f> xs1; //déjà initialisé et contient bien les coordonnées
double C1[3][3] = {0}; //matrice de transformation déjà initialisée
double **xs1Arr = (double **)cvAlloc(sizeof(double *) * nb_pts); /*nb_pts est le nombre de points, nb_pt = xs1.size();*/
list<CvPoint3D32f>::iterator it_xs = xs1.begin();

for(int i = 0;it_xs != xs1.end();it_xs++, i++)
{
xs1Arr[i] = (double *)cvAlloc(sizeof(double) * 3);
xs1Arr[i][0] = it_xs->x;
xs1Arr[i][1] = it_xs->y;
xs1Arr[i][2] = it_xs->z;
}

/*Pour pouvoir utiliser la fonction cvTransform, j'utilise un CvMat*/
CvMat xs1Mat = cvMat(nb_pts, 1, CV_32FC3, xs1Arr);
CvMat transmat1 = cvMat(3, 3, CV_32FC1, C1);

cout << xs1Arr[0][0] << " " << xs1Arr[0][1] << " " << xs1Arr[0][2] << endl; //Affichage OK
cvTransform(&xs1Mat, &xs1Mat, &transmat1); //exécution sans plantage
cout << xs1Arr[0][0] << " " << xs1Arr[0][1] << " " << xs1Arr[0][2] << endl; //Plantage...


Merci d'avance si quelqu'un peut m'aider !

Gus