primeira_data = np.min(semeadura) primeiro_ano = primeira_data/1000 primeiro_dia = primeira_data - primeiro_ano * 1000 semeadura_normalizada = (ano_semeadura - primeiro_ano - 1) * (primeiro_dia - dia_semeadura) + (ano_semeadura - primeiro_ano) * dia_semeadura + (ano_semeadura - primeiro_ano) * (365 - primeiro_dia) colheita_normalizada = ((ano_colheita - primeiro_ano) - 1) * (primeiro_dia - dia_colheita) + (ano_colheita - primeiro_ano) * dia_colheita + (ano_colheita - primeiro_ano) * (365 - primeiro_dia) #print colheita_normalizada #print ((ano_colheita - primeiro_ano) - 1) * (primeiro_dia - dia_colheita) + (ano_colheita - primeiro_ano) * dia_colheita + (ano_colheita - primeiro_ano) * (365 - primeiro_dia) return semeadura_normalizada, colheita_normalizada, primeiro_ano, primeiro_dia raster = RasterFile(file_full_path="C:\\Users\\Paloschi\\Desktop\\2013-2014\\semeadura.tif") imagem_semeadura = raster.loadRasterData() raster = RasterFile(file_full_path="C:\\Users\\Paloschi\\Desktop\\2013-2014\\colheita.tif") imagem_colheita = raster.loadRasterData() semeadura_normalizado, colheita_normalizado, ano_inicio, dia_inicio = normalize_datas(imagem_semeadura, imagem_colheita) print semeadura_normalizado print colheita_normalizado ultimo_dia = np.max(colheita_normalizado) periodo_kc = 120 delta_c = colheita_normalizado - semeadura_normalizado kc_vetorizado = range(100,221) kc_vetorizado[0] = 0
# -*- coding: utf-8 -*- ''' Created on 08/01/2016 @author: Paloschi ''' from Modelo.beans import RasterFile import sys root = "C:\\Users\\Paloschi\\Desktop\\Tudo_Necessario\\" path = root + "ya_invertido_soma.tif" import numpy as np raster = RasterFile(file_full_path=path) data_raster = raster.loadRasterData(True) nodata = raster.metadata["nodata"] print nodata print "" sys.stdout.write("media" + "\t") sys.stdout.write("minimo" + "\t") sys.stdout.write("maximo" + "\t") sys.stdout.write("coeficiente de variação" + "\t") print("") for band in data_raster: mean = list()
#imagem_convertida[i][ii] = delta_tempo #n = len(str(data_pixel)) #ano_pixel = int(str(data_pixel)[0:4]) #dia_pixel = int(str(data_pixel)[4:n]) #imagem_convertida[i][ii] = (dia_pixel - dia_inicial) + (ano_pixel - ano_inicial * 365) #except : #pass ano_pixel = int(str(data_pixel)[0:4]) imagem_convertida[i] = imagem[i] progress(i/float(n_linhas-1)) print "Conversão terminada, retornando imagem" return imagem_convertida if __name__ == '__main__': imagem = RasterFile(file_full_path="C:\\Gafanhoto WorkSpace\\DataTestes\\raster\\semeadura_soja_11-12.tif") imagem_ = imagem.loadRasterData() data_minima = Ds_DC_to_date(np.min(imagem_)) imagem.data = converter(data_minima, imagem_) imagem.file_name = imagem.file_name + "convertida" imagem.saveRasterData()
dia_semeadura) + (ano_semeadura - primeiro_ano) * dia_semeadura + ( ano_semeadura - primeiro_ano) * (365 - primeiro_dia) colheita_normalizada = ( (ano_colheita - primeiro_ano) - 1) * (primeiro_dia - dia_colheita) + ( ano_colheita - primeiro_ano) * dia_colheita + ( ano_colheita - primeiro_ano) * (365 - primeiro_dia) #print colheita_normalizada #print ((ano_colheita - primeiro_ano) - 1) * (primeiro_dia - dia_colheita) + (ano_colheita - primeiro_ano) * dia_colheita + (ano_colheita - primeiro_ano) * (365 - primeiro_dia) return semeadura_normalizada, colheita_normalizada, primeiro_ano, primeiro_dia raster = RasterFile( file_full_path="C:\\Users\\Paloschi\\Desktop\\2013-2014\\semeadura.tif") imagem_semeadura = raster.loadRasterData() raster = RasterFile( file_full_path="C:\\Users\\Paloschi\\Desktop\\2013-2014\\colheita.tif") imagem_colheita = raster.loadRasterData() semeadura_normalizado, colheita_normalizado, ano_inicio, dia_inicio = normalize_datas( imagem_semeadura, imagem_colheita) print semeadura_normalizado print colheita_normalizado ultimo_dia = np.max(colheita_normalizado) periodo_kc = 120 delta_c = colheita_normalizado - semeadura_normalizado kc_vetorizado = range(100, 221)
''' Created on 10/01/2016 @author: Paloschi ''' from Modelo.beans import RasterFile root = "D:\\1 - Mestrado (segundo semestre)\\Dissertacao\\Estudo de caso\\Cubos\\" path = root + "Cubo_Ya_invertido.tif" import numpy as np raster = RasterFile(file_full_path = path) data_raster = raster.loadRasterData(True) nodata = raster.metadata["nodata"] metadata = raster.metadata metadata["count"] = 1 print raster.metadata soma = imagem_kc_ = np.zeros((len(data_raster[1]), len(data_raster[1][0]))).astype(dtype="float32") for band in data_raster: soma += band saida = RasterFile(file_full_path= path) saida.file_name = "ya_invertido_soma" saida.metadata = raster.metadata
#ano_pixel = int(str(data_pixel)[0:4]) #dia_pixel = int(str(data_pixel)[4:n]) #imagem_convertida[i][ii] = (dia_pixel - dia_inicial) + (ano_pixel - ano_inicial * 365) #except : #pass ano_pixel = int(str(data_pixel)[0:4]) imagem_convertida[i] = imagem[i] progress(i / float(n_linhas - 1)) print "Conversão terminada, retornando imagem" return imagem_convertida if __name__ == '__main__': imagem = RasterFile( file_full_path= "C:\\Gafanhoto WorkSpace\\DataTestes\\raster\\semeadura_soja_11-12.tif" ) imagem_ = imagem.loadRasterData() data_minima = Ds_DC_to_date(np.min(imagem_)) imagem.data = converter(data_minima, imagem_) imagem.file_name = imagem.file_name + "convertida" imagem.saveRasterData()
def distribuir_kc(data_minima, data_maxima, semeadura_, colheita_, periodo_kc, kc_vetorizado, path_img_referencia, i, path_out): import ctypes import ConfigParser config = ConfigParser.RawConfigParser() config.read('workspace.properties') company = config.get('Version', 'company') product = config.get('Version', 'product') subproduct = config.get('Version', 'subproduct') version = config.get('Version', 'Version') myappid = (company + "." + product + "." + subproduct + "." + version) ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(myappid) threading.currentThread().terminada = False imagem_kc = RasterFile(file_full_path=path_img_referencia) imagem_kc.loadRasterData() imagem_kc.file_path = path_out #print imagem_kc.metadata n_linhas = len(semeadura_) n_colunas = len(colheita_[0]) delta_total = (data_maxima - data_minima).days + 1 for i_dia in range(0, delta_total): imagem_kc_ = np.zeros((n_linhas, n_colunas)) imagem_kc_ = array(imagem_kc_).astype(dtype="uint8") dia = data_minima + timedelta(i_dia) imagem_kc.data = array(semeadura_) imagem_kc.file_name = str(dia.date()) #if delta_total > 1 : #progresso = (i_dia/float(delta_total))*100 for i_linha in range(0, n_linhas): progress(i_linha / float(n_linhas - 1)) for i_coluna in range(0, n_colunas): try: Ds = Ds_DC_to_date(semeadura_[i_linha][i_coluna]) Dc = Ds_DC_to_date(colheita_[i_linha][i_coluna]) delta_c = (Dc - Ds).days + 1 if (dia >= Ds and dia <= Dc): k = dia - Ds i_FKc = int((k * periodo_kc).days / delta_c) Kc = kc_vetorizado[i_FKc] imagem_kc_[i_linha][i_coluna] = Kc except: pass imagem_kc.metadata.update(nodata=0) imagem_kc.saveRasterData(band_matrix=imagem_kc_) print "retornando do processo", i #threading.currentThread().stopped = True threading.currentThread().terminada = True return None