Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Pour un bon usage de votre argent, faites un don à l'association GeoRezo!
 
 

#1 mar. 07 août 2012 01:31

celdia
Membre
Date d'inscription: 19 févr. 2011
Messages: 39

Import de fichiers raster dans R

Bonjour,

Je cherche à importer et afficher mes fichiers raster au format grid (hdf) que j'ai téléchargé à partir d'un site d'acquisition de données satellites. Je les ai convertis d'abord au format geotiff, mais j'ai du mal à trouver le code (exact) me permettant d'importer le fichier qui se trouve dans un répertoire sur mon PC dans R, même après avoir regardé le manuel de la librairie Raster de R (je sais bien que la fonction writeRaster parait être la plus proche). L'exemple qui s'y trouve concerne des données pré-existantes dans un package de R,alors que moi j'ai mes données dans mon propre répertoire. Ou bien faut-il créer un raster squelette avant, possédant les caractéristiques (lignes, colonnes, resolution, bounding box...) de mon raster à importer, alors dans ce cas comment faire la correspondance avec ce dernier pour avoir les valeurs des cellules.

Merci d'avance de votre aide.

Hors ligne

 

#2 mar. 07 août 2012 10:24

MathieuR
Moderateur
Lieu: aix-en-provence
Date d'inscription: 16 févr. 2009
Messages: 1474

Re: Import de fichiers raster dans R

Tu peux importer un raster, soit via la librairie raster soit via rgdal

via la librairie raster: r <- raster("C:/monraster.tif")

via rgdal : r <- readGDAL("C:/monraster.tif")

Hors ligne

 

#3 mar. 07 août 2012 11:10

celdia
Membre
Date d'inscription: 19 févr. 2011
Messages: 39

Re: Import de fichiers raster dans R

Ok merci baobazz, ça marche la librairie rgdal.

A+

Hors ligne

 

#4 mar. 07 août 2012 12:18

celdia
Membre
Date d'inscription: 19 févr. 2011
Messages: 39

Re: Import de fichiers raster dans R

J'ai également réussi à l'ouvrir avec la librairie raster.
Mais je n'ai pas les valeurs de mes cellules. Pourtant R me dit que les valeurs existent mais non disponibles.
Comment puis je faire pour avoir les valeurs des cellules dans mon fichier source.

Code:

 r<-raster("E:projetSILAT_golfe/epaisseurs optiques/MOD08_D3.A2004057.051.2010283120930.pscs_000500502491.Optical_Depth_Land_And_Ocean_Mean.G3.gridSubsetter.tif")
Geospatial Data Abstraction Library extensions to R successfully loaded
Loaded GDAL runtime: GDAL 1.8.1, released 2011/07/09
Path to GDAL shared files: K:/Mes Documents/R/win-library/2.13/rgdal/gdal
Loaded PROJ.4 runtime: Rel. 4.7.1, 23 September 2009, [PJ_VERSION: 470]
Path to PROJ.4 shared files: K:/Mes Documents/R/win-library/2.13/rgdal/proj
> r
class       : RasterLayer 
dimensions  : 4, 4, 16  (nrow, ncol, ncell)
resolution  : 1, 1  (x, y)
extent      : 0, 4, -4, 0  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=utm +zone=28 +ellps=WGS72 +towgs84=0,0,1.9,0,0,0.8139999999999999,-0.38 +units=m +no_defs 
values      : E:\projetSILAT_golfe\epaisseurs optiques\MOD08_D3.A2004057.051.2010283120930.pscs_000500502491.Optical_Depth_Land_And_Ocean_Mean.G3.gridSubsetter.tif 

> plot(r)
> hasValues(r)
[1] TRUE
> res(r)
[1] 1 1
> projection(r)
[1] "+proj=utm +zone=28 +ellps=WGS72 +towgs84=0,0,1.9,0,0,0.8139999999999999,-0.38 +units=m +no_defs"
> values(r)
 [1] NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA NA

Merci

Hors ligne

 

#5 mar. 07 août 2012 13:34

celdia
Membre
Date d'inscription: 19 févr. 2011
Messages: 39

Re: Import de fichiers raster dans R

J'ai vu la fonction runif. Est-ce les valeurs renvoyées par cette fonction correspondent aux valeurs des cellules de mon fichier raster. j'ai essayé de l'appliquer et ça me donne le résultat ci dessous. Mais j'hésite encore si ces valeurs ont un lien avec celles de mon fichier raster importé.

Code:

 values(r)<-runif(ncell(r))
> values(r)
 [1] 0.11898588 0.61223071 0.58332753 0.64063591 0.64186141 0.35136701
 [7] 0.14824016 0.06588647 0.61240760 0.43859993 0.50244764 0.80128720
[13] 0.22126722 0.44944315 0.59367399 0.95473992
> r
class       : RasterLayer 
dimensions  : 4, 4, 16  (nrow, ncol, ncell)
resolution  : 1, 1  (x, y)
extent      : 0, 4, -4, 0  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=utm +zone=28 +ellps=WGS72 +towgs84=0,0,1.9,0,0,0.8139999999999999,-0.38 +units=m +no_defs 
values      : in memory
min value   : 0.06588647 
max value   : 0.9547399

Merci

Hors ligne

 

#6 mar. 07 août 2012 14:09

MathieuR
Moderateur
Lieu: aix-en-provence
Date d'inscription: 16 févr. 2009
Messages: 1474

Re: Import de fichiers raster dans R

Non, runif va te générer une série de valeurs aléatoires

pour avoir les valeurs, il faut utiliser la fonction values.

elles s'affichent aussi dans un résumé:

Code:

summary(r)

mais dans ton cas, il est indiqué:

Code:

values      : E:\projetSILAT_golfe\epaisseurs optiques\MOD08_D3.A2004057.051.2010283120930.pscs_000500502491.Optical_Depth_Land_And_Ocean_Mean.G3.gridSubsetter.tif

C'est bizarre.
Pourrais-tu donner un nom plus simple à ton fichier et voir si ça change qqch?

Dernière modification par baobazz (mar. 07 août 2012 14:10)

Hors ligne

 

#7 mar. 07 août 2012 14:36

celdia
Membre
Date d'inscription: 19 févr. 2011
Messages: 39

Re: Import de fichiers raster dans R

Oui, ça donne toujours la même chose:

Code:

 r<-raster("E:projetSILAT_golfe/epaisseurs optiques/AOD_260204.tif")
> r
class       : RasterLayer 
dimensions  : 4, 4, 16  (nrow, ncol, ncell)
resolution  : 1, 1  (x, y)
extent      : 0, 4, -4, 0  (xmin, xmax, ymin, ymax)
coord. ref. : +proj=utm +zone=28 +ellps=WGS72 +towgs84=0,0,1.9,0,0,0.8139999999999999,-0.38 +units=m +no_defs 
values      : E:\projetSILAT_golfe\epaisseurs optiques\AOD_260204.tif 

> summary(r)
Cells:  16 

           
Min.     NA
1st Qu.  NA
Median   NA
Mean    NaN
3rd Qu.  NA
Max.     NA
NA's     16

Je comprends pas alors pourquoi?
Mais je précise que mon fichier était au format hdf à l'origine et je l'ai converti en au format Geotiff à partir de QGIS à l'aide de la calculatrice Raster. Est-ce comme ça?

Dernière modification par celdia (mar. 07 août 2012 14:46)

Hors ligne

 

#8 ven. 17 août 2012 16:52

celdia
Membre
Date d'inscription: 19 févr. 2011
Messages: 39

Re: Import de fichiers raster dans R

Bonjour,
Je me permets de communiquer la solution au problème que j'avais pour mon raster.
En fait, c'était le géo-référencement de ma couche qui n'a pas été bien réalisé pendant la reprojection.
J'obtient maintenant ma couche raster avec les valeurs:

Code:

r<-raster("E:/projetSILAT_golfe/donnees/essai.tif")
> summary(r)
Cells:  16 

              
Min.    0.1270
1st Qu. 0.1623
Median  0.1820
Mean    0.1812
3rd Qu. 0.2005
Max.    0.2190
> values(r)
 [1] 0.163 0.151 0.146 0.127 0.200 0.181 0.170 0.160 0.198 0.187 0.177 0.183
[13] 0.202 0.219 0.217 0.218

Hors ligne

 

#9 lun. 20 août 2012 08:14

MathieuR
Moderateur
Lieu: aix-en-provence
Date d'inscription: 16 févr. 2009
Messages: 1474

Re: Import de fichiers raster dans R

merci pour le retour!

Hors ligne

 

#10 mer. 29 avril 2015 11:36

Nana92410
Membre
Date d'inscription: 13 avril 2015
Messages: 25

Re: Import de fichiers raster dans R

Bonjour,
je relance la sujet car je souhaiterais faire la même chose avec des fichiers raster que j'ai crée sur Qgis qui sont en format .tif.
J'ai installer le packages Rgdal mais j'ai un message d'erreur quand j'essaye les deux manières d'importer mon fichier ........
Pourtant j'ai bien changer mon répertoire courant ........ Mais je débute dans tout ça donc bon j'ai un peu de mal ......

Si quelqu'un peut m'aider je serais preneuses x)  ( ( voici en pièce jointe le code que j'ai essayé ) )

Merciii !


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Nanouille

Hors ligne

 

#11 mer. 29 avril 2015 11:42

Nana92410
Membre
Date d'inscription: 13 avril 2015
Messages: 25

Hors ligne

 

#12 mer. 29 avril 2015 17:29

MathieuR
Moderateur
Lieu: aix-en-provence
Date d'inscription: 16 févr. 2009
Messages: 1474

Re: Import de fichiers raster dans R

Soit le chemin n'est pas le bon, soit c'est accents qui foirent wink

Hors ligne

 

#13 mer. 29 avril 2015 18:35

Nana92410
Membre
Date d'inscription: 13 avril 2015
Messages: 25

Re: Import de fichiers raster dans R

Hiiiin pas bête je vais essayer en rechangeant de nom alors merci ! Au départ c'était nomé "2010-2013" j'ai cru que le problème venait des chiffres .... Pour le chemin je suis sure pourtant hmm

J'essaye demain merci smile


Nanouille

Hors ligne

 

#14 jeu. 30 avril 2015 09:19

Nana92410
Membre
Date d'inscription: 13 avril 2015
Messages: 25

Re: Import de fichiers raster dans R

Merci Mathieu R c'était l'accent super ça marche donc smile

Par compte je n'arrive pas à sortir ce que je voulais x) ( à savoir combien de pourcentage il y a telle valeur .... ) Et quand je fais "summary " je n'ai que le min et le max c'est normal ??

"Min.     -99990
1st Qu.       0
Median        0
3rd Qu.       0
Max.     999990
NA's          0

"

>_< Le min et le max je les ai déja dans Qgis du coup je n'ai aucune info supplémentaire ........ >_<


Nanouille

Hors ligne

 

#15 lun. 04 mai 2015 09:58

MathieuR
Moderateur
Lieu: aix-en-provence
Date d'inscription: 16 févr. 2009
Messages: 1474

Re: Import de fichiers raster dans R

Oui, c'est normal.

pour savoir combien de cellules ont telle valeur, tu peux utiliser ça :

Code:

length(which(values(r)==10))

En remplaçant 10 par ta valeur

Hors ligne

 

#16 mar. 05 mai 2015 10:08

Nana92410
Membre
Date d'inscription: 13 avril 2015
Messages: 25

Re: Import de fichiers raster dans R

Oooo Super c'est ce que je cherchais !!!!!! Je vais essayer ça merci beaucoup smile


Nanouille

Hors ligne

 

#17 mar. 05 mai 2015 11:00

Nana92410
Membre
Date d'inscription: 13 avril 2015
Messages: 25

Re: Import de fichiers raster dans R

Super je pense que ça marche !!!! C'est exactement ce que je voulais !! ( Je vais tout de même vérifier sur plusieurs valeur si ça correspond à peux prés au observation mais là j'ai testé 3 valeurs ça me parait pas trop mal ! )

Merci beaucoup Mathieu *_*


Nanouille

Hors ligne

 

#18 mer. 28 mars 2018 12:59

stelio
Membre
Date d'inscription: 27 mars 2018
Messages: 2

Re: Import de fichiers raster dans R

Bonjour à tous, je suis novice dans le domaine.

J'ai un petit souci. J'ai des cibles(14) superposées sur un raster, je souhaite donc par la suite découper et extraire chaque cibles et son raster mais j'arrive pas

quelqu'un peut-il me donner un coup de pouce?

Voici le script et les différents raster et cibles obtenus

[img]https://imageshack.com/a/img922/9252/HEGNqW.png[/img]
[img]https://imageshack.com/a/img923/362/CK5fef.png[/img]
[img]https://imageshack.com/a/img922/91/e6XqXA.png[/img]
[img]https://imageshack.com/a/img923/3369/6BLulc.png[/img]

Merci, Stelio

Dernière modification par stelio (mer. 28 mars 2018 15:15)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

#19 jeu. 29 mars 2018 11:10

gvellut
Membre
Lieu: Annecy
Date d'inscription: 13 avril 2006
Messages: 102
Site web

Re: Import de fichiers raster dans R

Tu peux boucler sur tes cibles et faire pour chaque cible :

Code:

cr <- crop(raster, extent(cible), snap="out")                    
cibler <- rasterize(cible, cr)   
mr <- mask(x=cr, mask=cibler)

mr contient un raster croppé sur une cible, que tu peux éventuellement exporter avec writeRaster dans un fichier.

Si tu veux juste extraire les valeurs du raster dans une liste, tu peux aussi utiliser extract :

Code:

extract(raster, cible)

Hors ligne

 

Pied de page des forums

Powered by FluxBB

Partagez  |