Foros del Web » Programación para mayores de 30 ;) » C/C++ »

(Punteros)Arreglo de Imágenes Siempre Guarda La Misma Imagen

Estas en el tema de (Punteros)Arreglo de Imágenes Siempre Guarda La Misma Imagen en el foro de C/C++ en Foros del Web. Buen día, escribo porque estoy casi seguro que tengo un problema con apuntadores, pero no logro encontrar la solución. Quiero hacer un arreglo de imágenes ...
  #1 (permalink)  
Antiguo 26/08/2011, 10:55
 
Fecha de Ingreso: julio-2008
Mensajes: 36
Antigüedad: 16 años, 3 meses
Puntos: 0
(Punteros)Arreglo de Imágenes Siempre Guarda La Misma Imagen

Buen día, escribo porque estoy casi seguro que tengo un problema con apuntadores, pero no logro encontrar la solución. Quiero hacer un arreglo de imágenes para almacenarlas es disco posteriormente. Uso las librerias de OpenCV. Mi código es el siguiente:

Código:
typedef struct secuencia{
   IplImage* imagen; 
   ...
}secuencia;

int main(int argc, char ** argv){
   IplImage *frame;
    secuencia* datos;
    datos = (secuencia*)malloc( 300 * sizeof( secuencia ) );

   for( int i = 0; i < 10; i++ ){
      ... //Obtengo imagen
      datos[i].imagen = frame;
   }
  
  for( int i = 0; i < 10; i++ ){
     frame = datos[i].imagen;
     //Grabo imagen
  }
Tal vez parezca tonto, pero no las puedo guardar al instante porque almaceno otros datos que son muy pesados y provoca que grabe muy pocas imágenes por segundo.
Cuando observo las imágenes grabadas, todas son la misma. Mi teoría es que no almaceno el puntero o lo reasigno, por eso, cada posición en el arreglo tiene la misma imagen, pero no encuentro como resolverlo.
Agradezco el tiempo y la ayuda
  #2 (permalink)  
Antiguo 26/08/2011, 15:55
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años, 7 meses
Puntos: 228
Respuesta: (Punteros)Arreglo de Imágenes Siempre Guarda La Misma Imagen

En principio parece estar bien..el tema es que haces en Obtener imagen y que haces en guardar imagen...porque ocultaste esa informacion...

... //Obtengo imagen
datos[i].imagen = frame;

Posiblemente en esa instruccion el puntero frame siempre tiene la misma direccion. Cuando todas son las misma de casualidad es la ultima en ser cargada?

Saludos

Etiquetas: código, siempre, struct, guardar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:51.