SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: rpg245 en Lunes 3 de Noviembre de 2008, 16:37
-
Hola a todos. Estoy pasando un programa de Matlab a C, y para ello uso la biblioteca OPENCV.
En concreto ahora estoy utilizando cvSolve que resuelve el sistema de ecuaciones A*X=B, donde A y B son conocidas...
Supuestamente haciendo cvSolve(A,B,X, CV_LU), en X debería obtener el resultado, pero no sé cómo acceder al resultado.
La cabecera de la función es esta:
int cvSolve( const CvArr* A, const CvArr* B, CvArr* X, int method=CV_LU );
He probado haciendo X->data.db[] y nada, y con cvGetReal tampoco....a ver si alguien sabe cómo acceder a los datos de X...
En concreto, X, es una matriz columna de 5 filas...espero vuestra respuesta..un saludo!!
-
Hola recien lei tu pregunta espero q te sirva
Mira a mi me parece q te esta poniendo todos los valores en un CvArr *arr para tu caso CvArr *X para acceder a ello tienes q acceder asi
creas un scalar
CvScalar s;
s=cvGet2D(X,posx,posy);
y de aqui lo puedes extraer con:
s.val[0];
donde 0 si es un solo canal
saludos