import subprocess import os from multiprocessing import Process import fnmatch import csv import traceback import sys import time #/2020-21_AND_PNOA_LIDAR/intercambio/Productos_entregables/bloque_1/ #/2020-21_AND_PNOA_LIDAR/intercambio/Productos_entregables/bloque_1/2.3.5_VLC_TIFF_clases/ def gdal_translate(pathraster,epsg,logs,id,filogs): filogs=open(filogs,"w") for archivo in os.listdir(pathraster): filogs.write(archivo+"\n") temporal=str(archivo.rsplit('.',1)[0])+'/' try: os.mkdir(temporal) except Exception: subprocess.run('rm -r {}'.format(termporal)) os.mkdir(temporal) try: subprocess.run('gdal_translate -a_srs "EPSG:{}" -f GTiff {} {}'.format(epsg,pathraster+archivo,temporal+archivo),shell=True) subprocess.run('mv {} {}'.format(temporal+archivo,pathraster+archivo),shell=True) subprocess.run('rm -r {}'.format(temporal),shell=True) except Exception: file=open(logs+"log_error_cambiar_crs_raster_"+id,"a") file.write(archivo) file.write(traceback.format_exc()) traceback.print_exc() continue def cambiar_crs(entrada,epsg,logs,id): start_time = time.time() try: filogs=logs+"log_cambiar_crs_raster_"+id+".txt" file = open(filogs,"w") gdal_translate(entrada,epsg,logs,id,filogs) log="\n--- "+str(time.time() - start_time)+" seconds ---\n" file.write(log) file.close() except Exception: file = open(logs+"log_error_cambiar_crs_"+id+".txt","a") traceback.print_exc() file.write(traceback.format_exc()) log="\n--- "+str(time.time() - start_time)+" seconds ---\n" file.write(log) file.close() cambiar_crs('./in/',sys.argv[1],'./logs/',sys.argv[2])