{"id":213,"date":"2018-11-21T13:15:40","date_gmt":"2018-11-21T12:15:40","guid":{"rendered":"https:\/\/sigeo.cerege.fr\/?p=213"},"modified":"2025-10-29T15:36:16","modified_gmt":"2025-10-29T14:36:16","slug":"gros-rasters-et-compression","status":"publish","type":"post","link":"https:\/\/sigeo.cerege.fr\/?p=213","title":{"rendered":"Gros rasters et Compression"},"content":{"rendered":"<p>Lors de l&#8217;\u00e9criture d&#8217;un raster, surtout en THR (tr\u00e8s haute r\u00e9solution), il est important de compresser au maximum les images pour avoir des fichiers qui soient g\u00e9rables. Il est important d&#8217;avoir en t\u00eate que certaines compression se font avec une perte de qualit\u00e9, et d&#8217;autres sans perte. Si l&#8217;on veut simplement faire de la visualisation, on peut se permettre un peu de perte, par contre pour du traitement ou pour des donn\u00e9es type MNT, on ne voudra aucune perte d&#8217;information.<\/p>\n<p>Toutes ces histoires de compression sont bien expliqu\u00e9es sur ce blog <a href=\"http:\/\/blog.cleverelephant.ca\/2015\/02\/geotiff-compression-for-dummies.html\">http:\/\/blog.cleverelephant.ca\/2015\/02\/geotiff-compression-for-dummies.html<\/a><\/p>\n<h2>Tuilage<\/h2>\n<p>Possibilit\u00e9 de tuiler (daller) pour permettre de g\u00e9rer des trop grosses images. C&#8217;est parfois indispensable, par exemple si l&#8217;on passe au dela de 20 \u00e0 30000 pixels de large pour une image.<\/p>\n<p>On pourra consulter pour plus d&#8217;infos cette page <a href=\"https:\/\/sigeo.cerege.fr\/?p=116\">https:\/\/sigeo.cerege.fr\/?p=116<\/a><\/p>\n<h2>Le BigTIFF et les tuiles internes<\/h2>\n<p>le GeoTIFF permet la gestion de tr\u00e8s grosses images avec un syst\u00e8me de tuilage interne. Tout est donc stock\u00e9 dans 1 fichier TIFF.<\/p>\n<p>Pour les images &gt;= 4Go, il faudra les \u00e9crire en BigTiff.<\/p>\n<p>Parfois cela est r\u00e9alis\u00e9 automatiquement par l&#8217;application qui va \u00e9crire l&#8217;image. Si l&#8217;on utilise GDAL, il est pr\u00e9f\u00e9rable de le signifier explicitement avec l&#8217;option &#8220;-co BIGTIFF=YES&#8221;<\/p>\n<p>pour forcer l&#8217;\u00e9criture des tuiles en interne, c&#8217;est avec l&#8217;option -co TILED=YES<\/p>\n<p>exemple de commande avec ces 2 options: <code>gdal_translate im_in.tif im_out.tif -co BIGTIFF=YES -co TILED=YES<\/code><\/p>\n<h2>Compression sans perte de qualit\u00e9<\/h2>\n<p>par exemple pour un MNT ou de l&#8217;imagerie que l&#8217;on veut garder intacte, j&#8217;utilisais la compression avec DEFLATE<\/p>\n<p>ex . <code>gdal_translate dem_in.tif dem_out.tif -co COMPRESS=DEFLATE<\/code><\/p>\n<p>Maintenant, il existe de nouveaux algos de compression plus efficaces, ZSTED et ESRI LERC. Exemple de compression avec ZSTED:<\/p>\n<pre>gdal_translate -of GTiff input.tif output_zstd.tif \\\n-co TILED=YES \\\n-co COMPRESS=ZSTD \\\n-co PREDICTOR=3 \\\n-co ZSTD_LEVEL=9 \\\n-co BIGTIFF=IF_SAFER \\\n-co BLOCKXSIZE=512 -co BLOCKYSIZE=512<\/pre>\n<h2>Compression avec perte de qualit\u00e9<\/h2>\n<p>on peut utiliser la compression JPEG pour r\u00e9duire efficacement la taille des images multi-canaux en 8 bits (ne fonctionne pas pour les images 16 ou 32 bits) :<\/p>\n<p class=\"highlight\"><code>gdal_translate \\<br \/>\n-co COMPRESS=JPEG \\<br \/>\n-co PHOTOMETRIC=YCBCR \\<br \/>\n-co TILED=YES \\<br \/>\ninput.tif output.tif<\/code><\/p>\n<p>Le stockage en JPEG\u00a0est encore plus performant dans l&#8217;espace de couleurs YCBCR.<\/p>\n<p>Pour des images en 16 ou 32 bits, on utilisera LZW ou PACKBITS pour la compression avec perte de qualit\u00e9.<\/p>\n<h2>Compression des pyramides raster<\/h2>\n<p>Les pyramides permettent d\u2019acc\u00e9l\u00e9rer l\u2019affichage en cr\u00e9ant des aper\u00e7us selon les niveaux de zoomes choisis. Ici la perte de qualit\u00e9 n&#8217;est pas un probl\u00e8me car c&#8217;est simplement pour l&#8217;affichage, et la donn\u00e9e originale n&#8217;est pas alt\u00e9r\u00e9e.<\/p>\n<p>Les pyramides peuvent \u00eatre stock\u00e9es dans un fichier s\u00e9par\u00e9 (format OVR), ce qui est en g\u00e9n\u00e9ral pr\u00e9f\u00e9rable pour plus de clart\u00e9, ou en interne dans un GeoTiff.<\/p>\n<p>exemple de pyramides pour de l&#8217;imagerie 8 bits :<\/p>\n<p><code>gdaladdo \\<br \/>\n--config COMPRESS_OVERVIEW JPEG \\<br \/>\n--config PHOTOMETRIC_OVERVIEW YCBCR \\<br \/>\n--config INTERLEAVE_OVERVIEW PIXEL \\<br \/>\n-r average \\<br \/>\n-ro \\<br \/>\nim_input.tif \\<br \/>\n2 4 8 16 32<\/code><\/p>\n<p>pour un MNT (16 ou 32 bits en g\u00e9n\u00e9ral), on fera plut\u00f4t avec du DEFLATE ou du LZW<\/p>\n<p><code>gdaladdo -ro --config COMPRESS_OVERVIEW LZW dem_input.tif 2 4 8 16 32 64<\/code><\/p>\n<h2>R\u00e9f\u00e9rences<\/h2>\n<p>Compression pour dummies :\u00a0 <a href=\"http:\/\/blog.cleverelephant.ca\/2015\/02\/geotiff-compression-for-dummies.html\">http:\/\/blog.cleverelephant.ca\/2015\/02\/geotiff-compression-for-dummies.html<\/a><\/p>\n<p>Format GeoTifff : <a href=\"https:\/\/gdal.gloobe.org\/gdal\/formats\/gtiff.html\">https:\/\/gdal.gloobe.org\/gdal\/formats\/gtiff.html<\/a><\/p>\n<p>Format Geotiff : <a href=\"https:\/\/www.gdal.org\/frmt_gtiff.html\">https:\/\/www.gdal.org\/frmt_gtiff.html<\/a><\/p>\n<p>gdaladdo pyramides : <a href=\"https:\/\/www.gdal.org\/gdaladdo.html\">https:\/\/www.gdal.org\/gdaladdo.html<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Lors de l&#8217;\u00e9criture d&#8217;un raster, surtout en THR (tr\u00e8s haute r\u00e9solution), il est important de compresser au maximum les images pour avoir des fichiers qui soient g\u00e9rables. Il est important d&#8217;avoir en t\u00eate que certaines compression se font avec une perte de qualit\u00e9, et d&#8217;autres sans perte. Si l&#8217;on veut simplement faire de la visualisation, &hellip; <a href=\"https:\/\/sigeo.cerege.fr\/?p=213\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Gros rasters et Compression&#8221;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,7],"tags":[],"class_list":["post-213","post","type-post","status-publish","format-standard","hentry","category-gdal-ogr","category-geo-traitements"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=\/wp\/v2\/posts\/213","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=213"}],"version-history":[{"count":6,"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=\/wp\/v2\/posts\/213\/revisions"}],"predecessor-version":[{"id":948,"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=\/wp\/v2\/posts\/213\/revisions\/948"}],"wp:attachment":[{"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sigeo.cerege.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}