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 !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Fri 30 December 2011 22:58

Céline49
Participant occasionnel
Date d'inscription: 8 Dec 2010
Messages: 14

QGIS: Découpage d'un raster par un shapefile

Bonjour,

Je dispose d'un fichier raster (MNT) et je souhaiterais découper une partie de ce raster en fonction d'une couche (polygone) je n'arrive pas à trouver la bonne fonction ???

quelqu'un pourrait il m'aider ?

Merci pour votre aide !

Céline

Hors ligne

 

#2 Sun 01 January 2012 18:11

jack tippit
Participant actif
Lieu: Limoges
Date d'inscription: 3 Dec 2008
Messages: 116
Site web

Re: QGIS: Découpage d'un raster par un shapefile

Bonjour Céline,
Et bien moi je le fais avec GRASS smile Je transforme mon polygone en raster (attention a la résolution) avec v.to.rast et ensuite j'utilise un masque r.mask ce qui me permet d'avoir une très belle découpe.
Si tu réalises des traitements sur cette couche, ce traitement se fera uniquement sur les données non masquées.
Si grass fait peur (et sont interface pas très graphique) il doit y avoir moyen de faire la même chose grâce au plug-in GRASS dans Qgis.
Je ne connais pas d'autres solutions, mais à vrai dire comme j'en connais une je n’ai pas cherché plus loin...
voilà en espérant que ça t'aide.

Cordialement

Etienne

Hors ligne

 

#3 Mon 02 January 2012 11:50

barthsdee
Participant occasionnel
Date d'inscription: 23 Aug 2011
Messages: 45

Re: QGIS: Découpage d'un raster par un shapefile

Je te donne une recette:

en 1: tu télécharges la version 1.8 de gdal (avec la 1.7 ça ne marche pas)

en 2: tu définis ton code: voici un exemple

gdalwarp -s_srs "+proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=46.500000000 +lon_0=3.000000000 +lat_1=44.000000000 +lat_2=49.000000000 +x_0=700000.000 +y_0=6600000.000 +units=m +no_defs" -t_srs "+proj=lcc +nadgrids=ntf_r93.gsb,null +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=44.100000000 +lon_0=0.000000000 +k_0=0.99987750 +lat_1=44.100000000 +x_0=600000.000 +y_0=200000.000 +units=m +no_defs" -co TFW=YES -of Gtiff  -cutline d:/communes/Agme.shp -cl Agme -cblend 10 -crop_to_cutline  -multi  d:/raster.vrt d:/tiff/Agme.tif


-s_srs "+proj=lcc +towgs84=0.0000,0.0000,0.0000 +a=6378137.0000 +rf=298.2572221010000 +lat_0=46.500000000 +lon_0=3.000000000 +lat_1=44.000000000 +lat_2=49.000000000 +x_0=700000.000 +y_0=6600000.000 +units=m +no_defs" -t_srs "+proj=lcc +nadgrids=ntf_r93.gsb,null +a=6378249.2000 +rf=293.4660210000000 +pm=2.337229167 +lat_0=44.100000000 +lon_0=0.000000000 +k_0=0.99987750 +lat_1=44.100000000 +x_0=600000.000 +y_0=200000.000 +units=m +no_defs"

ceci est un code pour la reprojection, 'pour connaitre le bon je te conseille de lancer une commande gdalwarp dans Qgis de paramétrer le projection que tu souhaites et de faire un copier-coller dans ton code

-co TFW=YES -of Gtiff ceci veux dire que je demande en sortie du Géotiff avec des données attributaires dans un fichier tfw (mon microstation préfère ça mais tu as d'autres options avec gdal

-cutline d:/communes/Agme.shp -cl Agme

ceci définit le fichier qui te servira d'emporte pièce (ton shape) le cl est un argument indispensable

-cblend 10 -crop_to_cutline   (cblend permet de définir un nombre de pixel d'estompe (de flou sur ta découpe) et crop to cutline spécifie que tu veux l'intérieur

-multi

J'ai un processeur multi coeur donc je l'ai mis

d:/raster.vrt

ça c'est le chemin et le nom de mon fichier d'entrée: un raster virtuel, mais tu peux mettre n'importe quel raster (du moment qu'il est géoréférencé)

d:/tiff/Agme.tif

ça c'est le nom du fichier que je demande en sortie.





Voila le code de base. Maintenant tu peux automatiser la chose...

en 1: j'ai scindé les communes qui définissait mon shp départemental en 320 couches distinctes (pour info il faut bannir tous ce qui concerne les accents, les apostrophes et les espaces parce qu'avec l'unicode tu vas avoir des problèmes

en 2: je me suis créé un petit tableau générateur de code sous excel: 95% de la formule reste la même il y a simplement le nom de la ville qui change et qui modifie tout.


quand je veux modifier un chemin d'accès ou un nom de fichier tout se répercute tout seul

j'ai mes 320 lignes de code qui se font automatiquement. Je fais un copier des 320 cases dans excel et je les colle dans la fenêtre de gdal 1.8

et c'est parti pour 320 découpages de communes en automatique.
Seuls défauts:
    -  la découpe génère un cadre noir autour de la zone découpée
    -  je dois recompresser les images Tiff après

Si tu veux je t'envoie un exemplaire du fichier excel

Hors ligne

 

#4 Mon 19 March 2012 14:54

laurene13
Participant occasionnel
Date d'inscription: 7 Mar 2012
Messages: 17

Re: QGIS: Découpage d'un raster par un shapefile

Bonjour!
je cherche moi aussi à découper mon raster avec un shapefile et j'esaaye avec la commande raster>decouper sous QGIS, mais voila le message d'erreur " Cannot compute bounding box of cutline. ".  apparement il n'aime pas mon fichier vecteur (issu d'un tampon) :-(

je ne maitrise pas du tout GRASS meme si je compte bien m'y mettre...En attendant avez-vous une idée sous QGIS 1.7.4?

Merci beaucoup!

Hors ligne

 

#5 Tue 20 March 2012 13:57

Paul
Participant assidu
Lieu: Paris
Date d'inscription: 31 Jul 2008
Messages: 157

Re: QGIS: Découpage d'un raster par un shapefile

Salut !

Je t'invite à regarder le message 2 de ce post smile
http://georezo.net/forum/viewtopic.php?id=78124

Extrait >>>
Si j'ai bien compris tu as un raster de pentes avec certaine étendue et tu voudrais en extraire une étendue plus petite.
As-tu essayé de découper ton raster via le menu Raster > Extraction > Découper avec un mode de découpage par "Emprise". Tu peux alors tracer à la souris un rectangle d'emprise (qui apparait rouge) sur ton raster qui englobe ta zone d'études. Ensuite tu spécifies un fichier de sortie puis OK, ça devrait fonctionner sans prendre de temps. Évidemment comme ta zone d'études n'est sûrement pas un parfait rectangle tu auras des zones inutiles, mais ton raster de pentes sera déjà moins étendu.

Si tu veux absolument masquer ton raster de pentes par ta zone d'études, c'est à dire avoir un raster tout à 0 sauf à l'intérieur de ta zone d'études où tu veux tes valeurs de pente, tu peux choisir le mode de découpage "couche de masquage" (toujours dans le module d'extraction du menu raster) et tu sélectionnes la couche vectorielle limitant ta zone d'étude comme couche de masquage. Après comme tu l'as dit, il y a message d'erreur. Tu peux le contourner en faisant la manip suivante (du moins ça fonctionne chez moi) :
En bas de la fenêtre "Découper" il y a une zone de texte qui commence par "gdalwarp -q ..." Tu cliques sur le petit crayon jaune "Éditer" et la ligne de texte devient éditable. Tu changes alors le "-crop_to_cutline" par "-r cubic" et ça devrait fonctionner.
<<<


Paul

Hors ligne

 

#6 Wed 12 February 2014 10:29

MM13
Participant occasionnel
Date d'inscription: 27 Jan 2014
Messages: 10

Re: QGIS: Découpage d'un raster par un shapefile

Bonjour,

ca marche parfaitement de remplacer  "-crop_to_cutline" par "-r cubic".

Merci beaucoup !

Hors ligne

 

#7 Fri 28 April 2017 10:33

Helene T
Juste Inscrit !
Date d'inscription: 13 Apr 2017
Messages: 3

Re: QGIS: Découpage d'un raster par un shapefile

Bonjour,

J'ai un fichier raster format tiff que je voudrais découper avec ma couche shape représentant ma zone d'étude. Merci pour l'astuce du remplacement "-crop_to_cutline" par "-r cubic", cela marche parfaitement.
Or, j'aimerais aller encore plus. Je souhaiterais conserver les valeurs du raster d'origine dans le déocupage. Mon raster est découpé en 4 bandes (0,1,2,3) et j'aimerais conserver uniquement les valeurs 1,2,3.

Comment puis-je procéder ?

Je vous remercie d'avance !

Hors ligne

 

#8 Fri 28 April 2017 15:16

Thib-top
Juste Inscrit !
Lieu: Grenoble
Date d'inscription: 12 Apr 2017
Messages: 6

Re: QGIS: Découpage d'un raster par un shapefile

Bonjour Helene,

As tu essayé avec le module "Clip raster with polygon" de SAGA dans la barre d'outils Qgis ?

Je ne sais pas si ça réglera ton problème mais personnellement j'avais des soucis de bandes lors d'un découpage de raster avec un polygone et c'est le seul qui a résolu le problème.

A voir.

A+

Dernière modification par Thib-top (Fri 28 April 2017 15:16)

Hors ligne

 

#9 Tue 18 July 2017 20:45

LouisM
Juste Inscrit !
Date d'inscription: 6 Dec 2015
Messages: 2

Re: QGIS: Découpage d'un raster par un shapefile

Bonjour à tous,

Merci Thib-top pour ton conseil, l'outil "Clip raster with polygon" de SAGA a marché parfaitement pour moi.
En détail :
Onglet traitement puis SAGA/Vector to raster/clip raster with polygon

Louis

Hors ligne

 

Pied de page des forums

Powered by FluxBB