Suite

Le découpage d'un raster coloré avec un polygone shp dans gdalwarp modifie les valeurs d'origine, pourquoi ?


J'ai besoin de découper mon raster en fonction d'un fichier de formes polygonal, en laissant les valeurs raster à l'intérieur de la forme du polygone (à l'intérieur du périmètre rouge dans la figure ci-dessous) comme indiqué ici :

Par conséquent, j'utilise :

gdalwarp -cutline border200millas_polygon.shp -crop_to_cutline chl.2015.04.01_2015.04.08.aqua-color.tiff out.tiff

Cela devrait faire l'affaire, mais ce n'est pas le cas. En conséquence, j'obtiens un raster noir. Après avoir vérifié et comparé les valeurs de sortie du raster d'origine et du raster tronqué, j'ai remarqué que les valeurs raster du raster tronqué étaient bien inférieures à celles du raster d'origine (par exemple, STATISTICS_STDDEV dans out.tiff, celui-ci étant le raster tronqué):

Fichiers : chl.2015.04.01_2015.04.08.aqua-color.tiff | Fichiers : out.tiff La taille est 2606, 2553 | La taille est 1632, 1913 Origine = (-90.463892341650677,0.065232508032915) | Origine = (-84.673288999992508,-3.392115000001818) Taille du pixel = (0.008784683301344,-0.008784616065831) | Taille du pixel = (0.008786027376501,-0.008785333088489) En haut à gauche (-90.4638923, 0.0652325) (90d27'50.01"W, 0d 3'54.84"N) | En haut à gauche ( -84.6732890, -3.3921150) ( 84d40'23.84"W, 3d23'31.61"S) En bas à gauche ( -90.4638923, -22.3618923) ( 90d27'50.01"W, 22d21'42.81"S) | En bas à gauche ( -84.6732890, -20.1984572) ( 84d40'23.84"W, 20d11'54.45"S) En haut à droite ( -67.5710077, 0.0652325) ( 67d34'15.63"W, 0d 3'54.84"N) | En haut à droite ( -70.3344923, -3.3921150) ( 70d20' 4.17"W, 3d23'31.61"S) En bas à droite ( -67.5710077, -22.3618923) ( 67d34'15.63"W, 22d21'42.81"S) | En bas à droite ( -70.3344923, -20.1984572) ( 70d20' 4.17"W, 20d11'54.45"S) Centre ( -79.0174500, -11.1483299) ( 79d 1' 2.82"W, 11d 8'53.99"S) | Centre (-77.5038907, -11.7952861) ( 77d30'14.01"W, 11d47'43.03"S) Bande 1 Bloc=2606x1 Type=Byte, ColorInterp=Rouge | Bande 1 Bloc=1632x1 Type=Byte, ColorInterp=Rouge Minimum=0,000, Maximum=255,000, Moyenne=160,832, StdDev=122,633 | Minimum=0,000, Maximum=255,000, Moyenne=0,001, StdDev=0,479 STATISTICS_MEAN=160,83171664774 | STATISTICS_MEAN=0.00089845791949817 STATISTICS_STDDEV=122.63291968596 | STATISTICS_STDDEV=0.47865014597867 Band 2 Block=2606x1 Type=Byte, ColorInterp=Green | Band 2 Block=1632x1 Type=Byte, ColorInterp=Green Minimum=0,000, Maximum=255,000, Mean=175,865, StdDev=108,243 | Minimum=0,000, Maximum=255,000, Moyenne=0,001, StdDev=0,488 STATISTICS_MEAN=175,86531037027 | STATISTICS_MEAN=0.00096059725510696 STATISTICS_STDDEV=108,24324530596 | STATISTICS_STDDEV=0,48752743191956 Bande 3 Bloc=2606x1 Type=Byte, ColorInterp=Bleu | Band 3 Block=1632x1 Type=Byte, ColorInterp=Blue Minimum=0.000, Maximum=255.000, Mean=252.883, StdDev=20.256 | Minimum=0,000, Maximum=255,000, Moyenne=0,001, StdDev=0,540 STATISTICS_MEAN=252.88313208935 | STATISTICS_MEAN=0.0011434918975431 STATISTICS_STDDEV=20.25592618995 | STATISTIQUES_STDDEV=0.53998993166519

Quelle en serait la raison ? Utilisant-dstalphaproduit juste une sortie vierge. J'ai simplement besoin de découper mon raster d'origine… rien de plus. Si j'utilise gdal_rasterize à la place, je peux supprimer avec succès le fichier de formes polygonal de mon raster d'origine SANS modifier les valeurs d'origine du raster, comme expliqué ici.

gdalinfo du raster d'origine ci-dessous :

gdalinfo -mm -stats chl.2015.04.01_2015.04.08.aqua-color.tiff Pilote : GTiff/GeoTIFF Fichiers : chl.2015.04.01_2015.04.08.aqua-color.tiff La taille est 2606, 2553 Le système de coordonnées est : GEOGCS[" WGS 84", DATUM["WGS_1984", SPHEROID["WGS 84",6378137,298.257223563, AUTORITE["EPSG","7030"]], AUTORITE["EPSG","6326"]], PRIMEM["Greenwich" ,0], UNIT["degree",0.0174532925199433], AUTHORITY["EPSG","4326"]] Origine = (-90.463892341650677,0.065232508032915) Pixel Size = (0.008784683301344,-0.008784616065831) Métadonnées : AREA_OR_POINT=Area Image Structure Metadata : INTERLEAVE=PIXEL Coordonnées du coin : en haut à gauche ( -90,4638923, 0,0652325) ( 90d27'50.01"W, 0d 3'54.84"N) en bas à gauche ( -90,4638923, -22,3618923) ( 90d27'50.01"W, 22d21'42.81"S) En haut à droite ( -67.5710077, 0.0652325) ( 67d34'15.63"W, 0d 3'54.84"N) En bas à droite ( -67.5710077, -22.3618923) ( 67d34'15.63"W, 22d21'42.81"S) Centre ( -79.0174500, - 11.1483299) ( 79d 1' 2.82"W, 11d 8'53.99"S) Bande 1 Bloc=2606x1 Type=Byte, ColorInterp=Rouge Calculé Min/Max=0,000,25 5.000 Minimum=0.000, Maximum=255.000, Moyenne=160,832, StdDev=122.633 Métadonnées : STATISTICS_MAXIMUM=255 STATISTICS_MEAN=160.83171664774 STATISTICS_MINIMUM=0 STATISTICS_STDDEV=122.63291968596 Bande 2 Bloc=2606x1 Type=25 000 octets, Couleur Interp0,000, Min. Minimum=0,000, Maximum=255,000, Moyenne=175,865, StdDev=108,243 Métadonnées : STATISTICS_MAXIMUM=255 STATISTICS_MEAN=175,86531037027 STATISTICS_MINIMUM=0 STATISTICS_STDDEV=108,24324530596 Bande 3 Bloc=2606x1 Type=Byte, Minimum calculé Interp/Max25=5 000 =0,000, Maximum=255,000, Moyenne=252.883, StdDev=20.256 Métadonnées : STATISTICS_MAXIMUM=255 STATISTICS_MEAN=252.88313208935 STATISTICS_MINIMUM=0 STATISTICS_STDDEV=20.25592618995

J'ai pris un fichier png du data_dir de GeoServer. Installez GeoServer et vous aurez la même image avec laquelle jouer dans le répertoire :

geoserver-2.7.1data_dircoveragesmosaic_sample

Convertissez png en tiff et attribuez une projection.

gdal_translate -a_srs epsg:4326 global_mosaic_6.png">

Burn.shp contient un polygone :

POLYGONE (( 10.375610236185853 39.384332051098106, 10.344426149120759 39.730475417520644, 10.87455562922735 39.92069834861771, 11.152094004106685 39.546489303836594, 10.92133175982499 39.16292503293594, 11.152094004106685 39.546489303836594, 10.92133175982499 39.16292503293594, 10.3209810)

Il est apparu plus tard d'après les commentaires que le fichier de formes de ligne de coupe "polygon border200millas_polygon.shp" contenait trois polygones et gdalwarp semble n'accepter qu'une seule géométrie comme ligne de coupe. Cependant, il peut prendre un multipolygone qui peut être réalisé à partir de polygones par exemple avec la fonction QGIS "dissoudre".


Voir la vidéo: CLIP a raster. Découper un raster - ArcMAp Tutoriel ArcGIS (Octobre 2021).