“…h " # include " tga . h " int main ( int argc , char * argv []) { int i ,j , k ; int n = atoi ( argv[1]) ; // resolucion de la imagen int tamR = atoi ( argv[2]) ; // tamano de BR int tamD = atoi ( argv[3]) ; // tamano de BD int numR = (( n /2) -tamR +1) ; // numero de BR de la imagen int numD = n / tamD * n / tamD ; // numero de BD de la imagenint numr = numR * numR ; FILE * archivo ; datos * trans ; long aux , dist_minima , * dist ; short prom , * lumProm ; bloque * M = creaBloque (1 ,n ,8) ; // imagen original bloque * Me = creaBloque (1 , n /2 ,13) ; // imagen escalada 1/2 bloque * bloqueD = creaBloque ( numD , tamD ,10) ; // bloques Dominio bloque * bloqueR = creaBloque ( numr , tamR ,9) ; // bloques Rango bloque * bloquesRT = creaBloque ( numr , tamR ,9) ; // bloques Rango para T bloque * temp = creaBloque ( numr , tamR ,9) ; / bloques Rango temporales bloque * temp2 = creaBloque ( numr , tamR ,9) ; dist =( long *) calloc ( numr , sizeof ( long ) ) ; // distancia trans =( datos *) calloc ( numr , sizeof ( datos ) ) ; // transformacion lumProm =( short *) calloc ( numr , sizeof ( short ) ) ; // luminancia promedio imagenOriginal (M , argv [4]) ; // cargar imagen original BD ( bloqueD ,M , numD ) ; // BD de la imagen original escala ( Me , M ) ; // se escala la imagen original BR ( bloqueR , Me , numr ) ; // NR de la imagen original archivo = fopen ( " mapas . fic " , " w + " ) ; for ( i =0; i < numD ; i ++) // cada BD { for ( j =0; j < numr ; j ++) // cada BR { copia (& bloquesRT [ j ] ,& bloqueR [ j ] ,9) ; prom = ( short ) bloqueD [ i ].…”