Alexandre,

Fiz isso para imagens de satélite

O procedimento que usei para criar o laço foi com um array de 3 dimensões,
onde as duas primeiras eram o x e o y e coloquei um matriz "a traz" da
outra como se fosse construindo um cubo então tinha um objeto com x,y e t .
O registro do nome de cada figura, eu armazenei em um vetor

Pra ser sincero, não entendi muito bem sua rotina pois não domino algumas
das funções que vc usou mesmo assim mando um exemplo do que fiz, que espero
que te ajude.

# carregar os arquivos de interesse no diretorio
my.dir = dir("/home/tito/tcc/tau",pattern=".nc",full.names=T)

# criar a variável nula do array para não dar problema
TAU =NULL

# loop para ler cada um dos arquivos
for(arquivo in my.dir){

# carregar o arquivo pelo nome
nc = open.ncdf(arquivo)

# extrair variavel de tau em x
taux = get.var.ncdf(arquivo,"x")

# armazenar a variavel em um array segundo as dimenções e o numero da
figura e de acordo com o nome do arquivo
TAU =
array(c(TAU,taux),dim=c(nrow(taux),ncol(tauy),which(my.dir==arquivo))))

}

Espero ter ajudado











Tito Conte



2013/12/4 ASANTOS <alexandresanto...@yahoo.com.br>

> Caros Membros,
>
>         Estou precisando de ajuda para criar um laço para extrair as
> coordenadas e o tempo (no nome do arquivo) em múltiplas figuras. No meu
> exemplo abaixo e usando apenas a figura 1, tenho uma regiões de pixels de
> interesse em branco e o nome da figura Fig1-0_00_00.png, preciso das
> coordenadas x e y das regiões em branco (Valor digital = 0), representado
> pelo objeto fig.data.pix e juntei ao tempo que é 0:00:00, pois o nome da
> Figura é 0_00_00. Conforme CRM abaixo, fazendo figura por figura esta OK,
> mas gostaria de fazer um laço para extrair essas informações das três
> figuras abaixo e armazená-las em um único objeto, alguém teria alguma
> sugestão?
>
>
>
> #-----------------------------------------------------------
> --------------------
> # Rotina para extração de coordenadas e tempo em imagens
> #-----------------------------------------------------------
> --------------------
>
> # Abertura das imagens
>
> require(RCurl)
>
> #Figura 1 ------------------------------------------------------------
> ----------
> get.dropbox <- function(file, token) {
>          require(RCurl, quietly=TRUE)
>          bin <- getBinaryURL(paste0("https://www.dropbox.com/s/
> 8b99gn9ve1yo7is/Fig1-0_00_00.png", token, "/", file),
>          ssl.verifypeer = FALSE)
>          con <- file(file, open = "wb")
>          writeBin(bin, con)
>          close(con)
>          message(noquote(paste(file, "read into", getwd())))
>     }
> #
> get.dropbox("Fig1-0_00_00.png", "Fig1-0_00_00.png")
>
> #Figura 2 ------------------------------------------------------------
> ----------
> get.dropbox <- function(file, token) {
>          require(RCurl, quietly=TRUE)
>          bin <- getBinaryURL(paste0("https://www.dropbox.com/s/
> 8b99gn9ve1yo7is/Fig2-0_20_00.png", token, "/", file),
>          ssl.verifypeer = FALSE)
>          con <- file(file, open = "wb")
>          writeBin(bin, con)
>          close(con)
>          message(noquote(paste(file, "read into", getwd())))
>     }
> #
> get.dropbox("Fig2-0_20_00.png", "Fig2-0_20_00.png")
>
> #Figura 3 ------------------------------------------------------------
> ---------
> get.dropbox <- function(file, token) {
>          require(RCurl, quietly=TRUE)
>          bin <- getBinaryURL(paste0("https://www.dropbox.com/s/
> bo6gbt3ca6xwxm0/Fig3-0_40_00.png", token, "/", file),
>          ssl.verifypeer = FALSE)
>          con <- file(file, open = "wb")
>          writeBin(bin, con)
>          close(con)
>          message(noquote(paste(file, "read into", getwd())))
>     }
> #
> get.dropbox("Fig3-0_40_00.png", "Fig3-0_40_00.png")
>
> # Extraido as coordenadas dos pixels para figura 1
> -----------------------------
>
> require(raster)
> r <- raster("Fig1-0_00_00.png")
> image(r)
> r2<-as.data.frame(r)
>
> # Cria as coordenadas ------------------------------
> ----------------------------
> grid0 <- expand.grid(x=seq(0,length.out=r@nrows),
>                      y=seq(0,length.out=r@ncols))
>
> # Coordenadas + valor dos pixels
>
> fig.data<-cbind(grid0,r2)
>
> # Região de interesse - Número digital = 0
>
> fig.data.pix<-fig.data[fig.data[,3]==0,]
>
> # Extrai o tempo do nome do arquivo
> tempo2<-r@data@names
> tempo1<-gsub("Fig1.", "", tempo2)
> tempo<-gsub("_", ":", tempo1)
>
> # Cria o arquivo final
>
> dados<-cbind(fig.data.pix[,1:2],rep(tempo))
>
> head(dados)
>
> #-----------------------------------------------------------
> --------------------
>
> Obrigado,
>
> --
> ======================================================================
> Alexandre dos Santos
> Proteção Florestal
> IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
> Campus Cáceres
> Caixa Postal 244
> Avenida dos Ramires, s/n
> Bairro: Distrito Industrial
> Cáceres - MT                      CEP: 78.200-000
> Fone: (+55) 65 8132-8112 (TIM)   (+55) 65 9686-6970 (VIVO)
> e-mails:alexandresanto...@yahoo.com.br
>         alexandre.san...@cas.ifmt.edu.br
> Lattes: http://lattes.cnpq.br/1360403201088680
> ======================================================================
>
> _______________________________________________
> R-br mailing list
> R-br@listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
_______________________________________________
R-br mailing list
R-br@listas.c3sl.ufpr.br
https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código 
mínimo reproduzível.

Responder a