:: Capítulo 03 - Trabalhando no "modo batch"

 

 

     AsterDTM permite a você extrair DTM's de um maneira não-interativa, assim permitindo um processamento de um grande número de imagens ASTER em grupo (modo "batch"). A estrutura do comando é muito similar às rotinas de programação do ENVI, com um comando e alguns pares de expressões para definir os paramêtros de processamento. Por favor, use como referência o "ENVI Programmer's Guide" para saber como configurar trabalhos em modo "batch" ( sem ter que realmente saber como programar ).

     Você necessita ENVI + IDL a fim de poder usar o AsterDTM no modo "batch".

ASTERDTM_DOIT

Calling sequence:

ASTERDTM_DOIT

Expressões:

CORR_FID (opcional)

Use esta expressão para especificar a variável nomeada que irá conter o ID do arquivo para o arquivo resultante da correlação transversal da saída. Este arquivo ID pode ser usado para acessar os dados processados programados para processamentos subseqüentes.

 

DIMS

Use esta expressão para especificar o spatial subset para ser usado na extração e ortocorreção de DTM. DIMS é um vetor de inteiros longos com cinco posições, com as seguintes definições (idênticos aos usados nas rotinas programadas no ENVI):

o DIMS(0): Não é usado nesta função, setar para -1.
o DIMS(1): O pixel X inicial. (O primeiro pixel é o número zero)
o DIMS(2): Opixel X final.
o DIMS(3): O pixel Y inicial. (O primeiro pixel é o número zero)
o DIMS(4): O pixel Y final.

No caso se as dimensões definidas pelo DIMS exceder as dimensões da imagem ASTER, então as dimensões da imagem ASTER são usadas. Se a imagem ASTER é uma imagem 1A, então DIMS está sendo aplicado ao arquivo corrigido 1A->1B, não ao arquivo bruto 1A.

 

DIRECTORY

Use esta expressão para especificar o caminho do diretório, para processar todos arquivos ASTER 1A e/ou 1B HDF que estão contidos nesse diretório, ou recursivamente nesse diretório e todos os subdiretórios. AsterDTM irá automaticamente identificar todas imagens ASTER 1A e 1B válidas nesse diretório, e derivar o nome de saída dos arquivos a partir dos nomes de arquivos ASTER de entrada:

Nome de Saída DTM = Nome de entrada do arquivo + "_DEM"

Se você usar a expressão DIRECTORY então a expressão FNAME será ignorada. A expressão OUT_CORRNAME, OUT_1BNAME, e OUT_ORTHONAME permite que você controle o arquivo de saida para uma específica expressão que será criada ou não. Se presente, então os nomes dos atquivos de saída são constuídos a partir do nome das arquivos ASTER, igualmente ao DTM:

Nome de Saída corr = Nome de entrada do arquivo + "_CORR"
Nome de saída 1A->1B = Nome de entrada do arquivo + "_1Ato1B"
Nome de saída ortho = Nome de entrada do arquivo + "_ORTHO"

Se a expressão OUT_DIR não setá setada, então os arquivos de saída serão criados no mesmo diretório onde os arquivos ASTER de entrada residem - por favor, tenha certeza que você possue permissão para escrever nesses diretórios.

Se as expressões DIMS, DTM_PIXSIZE ou DTM_NODATA estão setadas, então essas configurações serão aplicadas a todos os arquivos ASTER de entrada.

Especificado o caminho completo do diretório para a busca dos arquivos ASTER 1A e 1B apenas nesse diretório; adicione o símbolo "*" para extender a busca a toda àrvore de subdiretórios , iniciando a partir do DIRECTORY (veja exemplos abaixo).

 

DTM_FID (opcional)

Use esta expressão para especificar a variável nomeada que irá conter o ID do arquivo para o arquivo DTM de saída. Este arquivo ID pode ser usado para acessar os dados processados programados para processamentos subseqüentes.

 

DTM_PIXSIZE_TYPE (opcional)

Use esta expressão para especificar o tamanho de saída do pixel para a extração do DTM. Os valores válidos são 0 , 1 e 2 tendo por resultado o tamanho dos pixel de 60 m, 30 m e 15 m respectivamente. A matriz da correlação de saída terá o mesmo tamanho do pixel que o DTM. O tipo padrão do tamanho do pixel é 1 ( 30 metros ).

 

DTM_NODATA_VALUE (opcional)

Use esta expressão para definir o valor dos dados atribuídos a pixels em que nenhum valor de elevação pode ser extraído. Os números válidos são os inteiros. O valor padrão para nodata é -9999.

 

FNAME

Use esta expressão para definir o nome de entrada do arquivo ASTER 1A ou 1B. O arquivo deve estar em formato HDF (HDF versão 4.0).

Essa expressão será ignorada quando a expressão DIRECTORY estiver presente.

 

O1Ato1B_FID (opcional)

Use esta expressão para especificar uma variável nominal que conterá a identificação (ID) para o arquivo resultante da correção 1A->1B. Esta ID pode ser usada para acessar-se os dados processados para o processamento subseqüente.

Esta expressão será ignorada se o arquivo ASTER de entrada não for do nível 1A.

 

ORTHO_FID (opcional)

Use esta expressão para especificar uma variável nominal que conterá a identificação (ID) para o arquivo ortocorrigido resulatante. Esta ID pode ser usada para acessar-se os dados processados para o processamento subseqüente.

Esta expressão será ignorada se a expressão OUT_ORTHONAME não estiver definida.

 

OUT_DIR

Esta expressão é usada somente em conjunto com a expressão DIRECTORY. Use-a para definir o diretório onde todos os arquivos de saída serão gravados. Se o diretório não existir, o AsterDTM tentará criá-lo (verifique os privilégios necessários para a criação do diretório). Se está expressão não for digitada, todos os arquivos de saída serão colocados no diretório em que o arquivo de entrada do ASTER estiver.

 

OUT_DTMNAME

Use esta expressão para definir o nome do arquivo de saída do modelo de elevação digital resultante.
Esta expressão será ignorada quando a expressão DIRECTORY estiver presente.

 

OUT_CORRNAME (opcional)

Use esta expressão para definir o nome do arquivo de saída com a matriz de correlação resultante.
Na presença da expressão DIRECTORY, a expressão OUT_CORRNAME controlará se a matriz de correlação será escrita no arquivo ou não. Se a expressão estiver digitada (para qualquer valor), então o arquivo com a correlação será nomeado a partir do nome do arquivo de entrada ASTER:

Nome do arquivo de saída = nome do arquivo de entrada + "_CORR"

Se a expressão não for digitada, nenhuma matriz de correlção será criada.

 

OUT_1Ato1BNAME (opcional)

Use esta expressão para definir o nome do arquivo de saída resultante da correção 1A->1B.
Se esta expressão não estiver definida e a imagem do arquivo de entrada for do nível 1A, um arquivo temporário 1A->1B é criado, e apagado assim que o processamento é finalizado.

Em conjunto com a expressão DIRECTORY, a expressão OUT_1Ato1BNAME controla se a imagem corrigida 1A->1B é gravada no arquivo ou não. Se a expressão estiver digitada (para qualquer valor), então o arquivo com a correlação será nomeado a partir do nome do arquivo de entrada ASTER:

Arquivo de saída 1A->1B nome = nome do arquivo de entrada + "_1Ato1B"

Se a expressão não for digitada, nenhum arquivo de saída 1A->1B será criado.

 

OUT_ORTHONAME (opcional)

Use esta expressão para definir o nome do arquivo de saída da imagem ortocorrigida. A ortocorreção é aplicada para as bandas VNIR 1, 2 e 3 se a imagem for do nível 1B, e na imagem corrigida 1A->1B, caso ela seja do nível 1A. Se esta expressão não estiver definida a ortocorreção não é efetuada.

Em conjunto com a expressão DIRECTORY, a expressão OUT_ORTHONAME controla se a imagem ortocorrigida é gravada no arquivo ou não. Se a expressão estiver digitada (para qualquer valor), o arquivo será salvo com um nome elaborado a partir do nome do arquivo de saída ASTER:

Nome do arquivo de saída ortorretificado = Nome do arquivo de entrada + "_ORTHO"

Se a expressão não for digitada, nenhum arquivo de saída ortocorrigido será criado.

 

VERBOSE (opcional)

Use esta expressão para controlar se as mensagens sobre o status do processamento está sendo gravado no terminal de saída ou não. Escolher VERBOSE 0 (zero) switches off the log output. O padrão para a expressão VERBOSE é 1 (log output on).

 

EXAMPLE:

Este exemplo mostra como chamar AsterDTM_doit (troque o separador Directory por '/' em sistemas Unix).

pro example_asterdtm_doit

; process all aster 1a and/or 1B images in directory d:\data
; set nodata value to -999, and output pixels size to 60 m

asterdtm_doit,directory = "d:\data",dtm_pixelsize_type = 0,$
dtm_nodata_value = -999

; process all aster 1a and/or 1B images in directory
; e:\asterdata and recursively in all subdirectories


asterdtm_doit,directory = "e:\asterdata\*"

; extract DTM for ASTER file MyAsterFile for a 700*800 spatial
; subset, and provide the file id's for the extrated DTM and the
; correlation matrix for further processing


dims = long([-1,1300,1999,2000,2799])

asterdtm_doit,fname = AsterName, dims = dims,$
out_dtmname = "dtm_output",out_corrname = "corr_output",$
dtm_fid = dtm_fid, corr_fid = corr_fid


end

.........................................................................