Ejemplo de como cargar una imagen a memoria

/*Código de ejemplo:
         Francisco Carlos Calderón
         Libre de modificar difundir y aprender
         2009
         */
 #include <stdio.h>
 #include <cv.h>
 #include <highgui.h>
 /*Ejemplo de como depurar entradas de usuario
   y del uso de CvLoadImage, cvNamedWindow y cvShowImage */
int main(int argc, char** argv)
{
    IplImage* image = NULL;
 
    if (argc != 2)
    {
        printf( "Uso:\n    Nombre_de_programa.exe nombre_de_la_imagen.Extencion\n");
        return -1;
    }
/*1. Cargar la imagen del disco duro a la memoria: */
    image = cvLoadImage(argv[1],CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR);
    /*
    cvLoadImage soporta:
    * Windows bitmaps - BMP, DIB;
    * JPEG files - JPEG, JPG, JPE;
    * Portable Network Graphics - PNG;
    * Portable image format - PBM, PGM, PPM;
    * Sun rasters - SR, RAS;
    * TIFF files - TIFF, TIF;
    * OpenEXR HDR images - EXR;
    * JPEG 2000 images - jp2.
    banderas:
Especifica el color y la profundidad de la imagen cargada:
CV_LOAD_IMAGE_UNCHANGED 8 bit, color or gray - obsoleto, use CV_LOAD_IMAGE_ANYCOLOR
CV_LOAD_IMAGE_GRAYSCALE 8 bit, gray
CV_LOAD_IMAGE_COLOR 8 bit a menos que sea combinada con CV_LOAD_IMAGE_ANYDEPTH, color
CV_LOAD_IMAGE_ANYDEPTH cualquier profundidad
CV_LOAD_IMAGE_ANYCOLOR es equivalente a  CV_LOAD_IMAGE_UNCHANGED y debe ser usada en vez de esta pero puede ser usada también CV_LOAD_IMAGE_ANYDEPTH
Si desea cargar la imagen lo mas confiablemente posible, pasar: CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR.
    */
    if(image == NULL)
    {
        printf( "Error, No se cargo la imagen llamada %s\n",argv[1]);
        return -1;
    }
 
/*3. Ver la Imagen en una ventana sin usar CV_WINDOW_AUTOSIZE*/
    cvNamedWindow("ventana_sin_AUTOSIZE",0);
    cvShowImage("ventana_sin_AUTOSIZE", image);
/*2. Ver la Imagen en una ventana usando CV_WINDOW_AUTOSIZE*/
    //cvNamedWindow("ventana_con_AUTOSIZE");
    /*también si se usa así:*/
    cvNamedWindow("ventana_con_AUTOSIZE",1);
    /*también si se usa así:*/
    //cvNamedWindow("ventana_con_AUTOSIZE", CV_WINDOW_AUTOSIZE);
    cvShowImage("ventana_con_AUTOSIZE", image);
 
    cvWaitKey(0);
    cvReleaseImage(&image);
    return 0;
}