[R-br] Obter valor médio dos pixels de uma imagem gerada por krigagem
Hélio Gallo Rocha
heliogallorocha em gmail.com
Segunda Abril 8 14:31:25 BRT 2013
Alexandro
Vi sua msg sobre valores do predict, me interessa também, vou tentar.
Olhando seu CRM em:
pixelsize <- (1.0-0.0/30)*(1.0-0.0/30)#Tamanho do pixel é dado por seq
não teria de colocar um parentesis antes de dividir? (1.0-0.0)/30
Hélio
Em 7 de abril de 2013 03:55, Thiago Veloso [via R-br] <
ml-node+s2285057n4658914h2 em n4.nabble.com> escreveu:
> Alexandre,
>
> Você já tem o polígono gridPol de onde você quer criar a média da
> krigagem. Não conheço bem as classes do pacote geoR, mas as coordenadas do
> kc$predict parecem estar no objeto pred.grid. A abordagem que eu usaria
> seria criar um objeto raster da krigagem e em seguida contar os valores
> usando a função extract (raster) usando como argumentos o raster da
> krigagem e o gridPol.
>
> Além da ajuda para a função extract no manual do raster, talvez o último
> exemplo dessa página possa te ajudar:
> http://stackoverflow.com/questions/14682606/extract-value-from-raster-stack-from-spatialpolygondataframe
>
> Mas não estou certo se era isso que você estava buscando. Acho que o Paulo
> vai te ajudar melhor.
>
> Saudações,
> --
> Thiago V. dos Santos
> PhD student
> Land and Atmospheric Science
> University of Minnesota
>
> http://www.laas.umn.edu/CurrentStudents/MeettheStudents/ThiagodosSantos/index.htm
> Phone: (612) 323 9898
> ------------------------------
> *From:* ASANTOS <[hidden email]<http://user/SendEmail.jtp?type=node&node=4658914&i=0>
> >
> *To:* [hidden email]<http://user/SendEmail.jtp?type=node&node=4658914&i=1>;
> Thiago V. dos Santos <[hidden email]<http://user/SendEmail.jtp?type=node&node=4658914&i=2>>
>
> *Sent:* Saturday, April 6, 2013 10:26 PM
>
> *Subject:* Re: [R-br] Obter valor médio dos pixels de uma imagem gerada
> por krigagem
>
> Thiago,
>
> Já pensei isto, mas para SpatialPoints(vp), preciso fazer um list()
> das coordenadas dos pixels (vp$x e vp$y) e isto não tenho e nem sei como
> recuperar o valor de um pixel à partir de uma coordenada conhecida.
>
> Abraço,
>
> Alexandre
>
>
> Em 06/04/2013 21:32, Thiago V. dos Santos escreveu:
>
> Nao conheco bem todas as funcoes do sp, mas para pela mensagem de erro
> eu transformaria a tabela vp em SpatialPoints, que eh o argumento esperado
> pela funcao over.
>
> Saudações,
> --
> Thiago V. dos Santos
> PhD student
> Land and Atmospheric Science
> University of Minnesota
>
> http://www.laas.umn.edu/CurrentStudents/MeettheStudents/ThiagodosSantos/index.htm
> Phone: (612) 323 9898
> ------------------------------
> *From:* ASANTOS [hidden email]<http://user/SendEmail.jtp?type=node&node=4658914&i=3>
> *To:* [hidden email]<http://user/SendEmail.jtp?type=node&node=4658914&i=4>
> *Sent:* Saturday, April 6, 2013 8:12 PM
> *Subject:* Re: [R-br] Obter valor médio dos pixels de uma imagem gerada
> por krigagem
>
> Boa noite pessoal,
>
> Acho evoluí um pouco na questão, mas agora a dificuldade esta em
> contar os pixels contidos no interior das malhas, quando tento um over(),
> ocorre o seguinte erro:
>
> Erro em function (classes, fdef, mtable) :
> unable to find an inherited method for function "over", for signature
> "table", "SpatialPolygons"
>
>
> segue CRM:
> #
> require(geoR)
> plot(s100$coords, xlim=c(0,1.2), ylim=c(0,1.2), xlab="Coord X",
> ylab="Coord Y")
> loci <- matrix(c(0.2, 0.6, 0.2, 1.1, 0.2, 0.3, 1.0, 1.1), ncol=2)
> text(loci, as.character(1:4), col="red")
> polygon(x=c(0,1,1,0), y=c(0,0,1,1), lty=2)
>
> # Fitting models with nugget fixed to zero
> ml <- likfit(s100, ini = c(1,0.5), fix.nugget = T)
>
> # defining the grid
> pred.grid <- expand.grid(seq(0,1, l=51), seq(0,1, l=51))
> # kriging calculations
> kc <- krige.conv(s100, loc = pred.grid, krige = krige.control(obj.m = ml))
> # displaying predicted values
> image(kc, loc = pred.grid, col=gray(seq(1,0.1,l=30)), xlab="Coord X",
> ylab="Coord Y")
> #
>
> #Centro das 25 parcela 0.2 x 0.2
> p0<-c(0.1,0.1)
> #
> c0 <- seq(p0[1],p0[1]+0.9,by=0.2)
> d0 <- seq(p0[2],p0[2]+0.9,by=0.2)
> d1 <- expand.grid(x=c0, y=d0)
> points(d1[,1],d1[,2],col="red")
> ver<-c(0.0,0.2,0.4,0.6,0.8,1.0)
> hor<-c(0.0,0.2,0.4,0.6,0.8,1.0)
> abline(v=ver, col="red")
> abline(h=hor, col="red")
> #
> require(sp)
> grid=GridTopology(c(0.1,0.1), c(0.2,0.2), c(5,5))### Cria as área
> grid=SpatialGrid(grid=grid)
> class(grid) ## SpatialPixels
> gridPol <- as(grid, "SpatialPolygons") ## Transfoma as areas em polígonos
> espaciais
> options(digits=5)
> pixelsize <- (1.0-0.0/30)*(1.0-0.0/30)#Tamanho do pixel é dado por seq
> Xmaior - Xmenor/l * Ymaior-Ymenor/l
> vp <- table(area <- kc$predict)## Valor dos pixels
> count.pix<-table(over(vp, gridPol)) #contar quantos pontos tem em cada area
>
>
> Obrigado,
>
> Alexandre
>
> Em 06/04/2013 17:11, ASANTOS escreveu:
> > Boa noite membros da lista,
> >
> > Gostaria de receber ideias para calcular o valor médio dos pixel
> em uma imagem gerada por krigagem em sub-regiões de interesse na imagem,
> por exemplo usando um exemplo do Prof. Paulo, onde ajusta-se um
> semivariograma e faz a krigagem ordinária dos dados:
> >
> > #
> > require(geoR)
> > plot(s100$coords, xlim=c(0,1.2), ylim=c(0,1.2), xlab="Coord X",
> ylab="Coord Y")
> > loci <- matrix(c(0.2, 0.6, 0.2, 1.1, 0.2, 0.3, 1.0, 1.1), ncol=2)
> > text(loci, as.character(1:4), col="red")
> > polygon(x=c(0,1,1,0), y=c(0,0,1,1), lty=2)
> >
> > # Fitting models with nugget fixed to zero
> > ml <- likfit(s100, ini = c(1,0.5), fix.nugget = T)
> >
> > # defining the grid
> > pred.grid <- expand.grid(seq(0,1, l=51), seq(0,1, l=51))
> > # kriging calculations
> > kc <- krige.conv(s100, loc = pred.grid, krige = krige.control(obj.m =
> ml))
> > # displaying predicted values
> > image(kc, loc = pred.grid, col=gray(seq(1,0.1,l=30)), xlab="Coord X",
> ylab="Coord Y")
> > #
> >
> > #Agora vou dividir esta área em 25 partes e lançar os centroides destas
> subáreas:
> >
> > #Centro das 25 parcela 0.2 x 0.2
> > p0<-c(0.1,0.1)
> > #
> > c0 <- seq(p0[1],p0[1]+0.9,by=0.2)
> > d0 <- seq(p0[2],p0[2]+0.9,by=0.2)
> > d1 <- expand.grid(x=c0, y=d0)
> > points(d1[,1],d1[,2],col="red")
> > ver<-c(0.0,0.2,0.4,0.6,0.8,1.0)
> > hor<-c(0.0,0.2,0.4,0.6,0.8,1.0)
> > abline(v=ver, col="red")
> > abline(h=hor, col="red")
> > #
> >
> > E aqui vem minha pergunta, como calcular o valor médio dos pixels
> contidos em cada subárea de 0.2 x 0.2?
> >
> > Obrigado,
> >
>
> -- ======================================================================
> Alexandre dos Santos
> Proteção Florestal
> Coordenador do curso Técnico em Florestas
> Vice Coordenador do curso de Engenharia 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:[hidden email]<http://user/SendEmail.jtp?type=node&node=4658914&i=5>
> [hidden email]<http://user/SendEmail.jtp?type=node&node=4658914&i=6>
> ======================================================================
>
> _______________________________________________
> R-br mailing list
> [hidden email] <http://user/SendEmail.jtp?type=node&node=4658914&i=7>
> 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[hidden email] <http://user/SendEmail.jtp?type=node&node=4658914&i=8>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.
>
>
> --
> ======================================================================
> Alexandre dos Santos
> Proteção Florestal
> Coordenador do curso Técnico em Florestas
> Vice Coordenador do curso de Engenharia 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)[hidden email] <http://user/SendEmail.jtp?type=node&node=4658914&i=9>
> [hidden email] <http://user/SendEmail.jtp?type=node&node=4658914&i=10>
> ======================================================================
>
>
>
>
> _______________________________________________
> R-br mailing list
> [hidden email] <http://user/SendEmail.jtp?type=node&node=4658914&i=11>
> 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.
>
> ------------------------------
> If you reply to this email, your message will be added to the discussion
> below:
>
> http://r-br.2285057.n4.nabble.com/R-br-Obter-valor-medio-dos-pixels-de-uma-imagem-gerada-por-krigagem-tp4658903p4658914.html
> To unsubscribe from R-br, click here<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=aGVsaW9nYWxsb3JvY2hhQGdtYWlsLmNvbXwzMzU3OTgyfC0xMzQ3NTkwMDY4>
> .
> NAML<http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>
--
Hélio Gallo Rocha
IFSULDEMINAS - Câmpus Muzambinho
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20130408/b07ec078/attachment.html>
Mais detalhes sobre a lista de discussão R-br