• Domingo 15 de Diciembre de 2024, 14:40

Autor Tema:  Usando OPENCV ---cvSolve...  (Leído 1390 veces)

rpg245

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Usando OPENCV ---cvSolve...
« en: Lunes 3 de Noviembre de 2008, 16:37 »
0
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!!

arvsander8

  • Nuevo Miembro
  • *
  • Mensajes: 4
    • Ver Perfil
Re: Usando OPENCV ---cvSolve...
« Respuesta #1 en: Martes 11 de Noviembre de 2008, 15:49 »
0
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