main.c
//Esta funcion almacena una imagen de intensidad en
//archivo en formato YUV400
Esta funcion almacena una imagen de intensidad en
archivo en formato YUV400
Esta funcion almacena una imagen de intensidad en archivo en formato YUV400
void geoSaveIntensityImageIn_YUV400_file(unsigned char *pintensity, char* filename)
    {
        int numread, j, jj, i;
        FILE *fpointer;
        int width, height;
        unsigned char *ptempImage;
        width=pInputImage->width;
        height=pInputImage->height;
        ptempImage = (unsigned char *)malloc(sizeof(unsigned char)*width*height);
        printf("Saving unsigned char image in: %s\n", filename);
        fpointer = fopen(filename, "w");
        if (fpointer == NULL) {
            printf("could not read the file: %s\n", filename);
            exit(0);
        }
        for (i=0;i<width*height;i++) ptempImage[i]=0;
        jj=0;
        for (j=height-1;j>=0;j--) {
            for (i=0;i<width;i++) {
                ptempImage[jj*width+i]= pintensity[j*width+i];
            }
            jj++;
        }
        numread = (int)fwrite(ptempImage, sizeof(unsigned char), (unsigned int)(height*width), fpointer);
        if (numread==0) {
            printf("Por alguna razon no se pudo escribir dato alguno en archivo\n");
            exit(0);
        }
        fclose(fpointer);
        free(ptempImage);
    }
void geoSaveIntensityImageIn_YUV400_file ( unsigned char * pintensity , char * filename ) { int numread , j , jj , i ; FILE * fpointer ; int width , height ; unsigned char * ptempImage ; width = pInputImage -> width ; height = pInputImage -> height ; ptempImage = ( unsigned char * ) malloc ( sizeof ( unsigned char ) * width * height ) ; printf ( " \n " , filename ) ; fpointer = fopen ( filename , " " ) ; if ( fpointer == NULL ) { printf ( " \n " , filename ) ; exit ( 0 ) ; } for ( i = 0 ; i < width * height ; i ++ ) ptempImage [ i ] = 0 ; jj = 0 ; for ( j = height - 1 ; j >= 0 ; j -- ) { for ( i = 0 ; i < width ; i ++ ) { ptempImage [ jj * width + i ] = pintensity [ j * width + i ] ; } jj ++ ; } numread = ( int ) fwrite ( ptempImage , sizeof ( unsigned char ) , ( unsigned int ) ( height * width ) , fpointer ) ; if ( numread == 0 ) { printf ( " \n " ) ; exit ( 0 ) ; } fclose ( fpointer ) ; free ( ptempImage ) ; }
Esta funcion almacena una imagen de intensidad en
archivo en formato YUV400
Esta funcion almacena una imagen de intensidad en archivo en formato YUV400
//Imagen de uso local y temporal //Abriendo archivo //Cambiando posición del sistema de coordenadas de la equina inferior //izquierda a la esquina superior izquierda. //Almacenando valores de intensidad en archivo