#1 Fri 10 October 2008 11:10
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
mapserver/openlayers image tuilée, navigation fluide
Bonjour à tous,
j'ai une image >600 Mo que j'aimerais afficher en fond de carte.
Je n'y arrive seulement qu'avec une image de test (découpée) de 100 Mo.
J'aimerai savoir comment :
1> Tuiler cette image (d'une image en faire 8 par exemple).
2> Comment préciser cela dans le .map ?
Est ce dans l'Output format/options: TILED, BLOCK SIZE, COMPRESS, INTERLEAVE, ...?
3> Est ce que la navigation est beaucoup plus fluide avec des tuiles ?
4> Est ce que par la même occasion on peut générer des overviews (résolutions différentes) ex: 500m, 2km, 5, 10, 50.
Est ce nécessaire à "fluidifier" la navigation ?
Je vous remercie de votre aide.
Bertrand
Hors ligne
#2 Fri 10 October 2008 11:36
Re: mapserver/openlayers image tuilée, navigation fluide
bonjour,
Quelques réponses :
1> Tuiler cette image (d'une image en faire 8 par exemple).
gdal peut le faire !
2> Comment préciser cela dans le .map ?
Est ce dans l'Output format/options: TILED, BLOCK SIZE, COMPRESS, INTERLEAVE, ...?
Non c'est dans la couche avec le paramètre TILEINDEX me semble t-il.
3> Est ce que la navigation est beaucoup plus fluide avec des tuiles ?
Oui, surtout si les tuiles en dehors de la carte sont préchargées, mais cela n'accélèrera pas la création de la tuile à partir des données.
4> Est ce que par la même occasion on peut générer des overviews (résolutions différentes) ex: 500m, 2km, 5, 10, 50.
Est ce nécessaire à "fluidifier" la navigation ?
Oui ca aide ! et les formats ECW ou jpeg2000 le gèrent. Mapserver "gère" cette particularité de ces formats.
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#3 Fri 10 October 2008 12:03
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Bonjour Yves,
merci encore de répondre du "tacotac"!
si je comprends bien....dans l'ordre je fais un gdal2tiles, un gdaltindex, j'édite mon mapfile section LAYER avec TILEINDEX, TILEITEM,....
Puis quand cela marche je créer mes overviews avec gdaladdo, j'édite mon mapfile ?
Que dois je faire....mes tuiles puis mes overviews ou l'inverse ?
D'autres questions du coup :
Je ne comprends pas bien où dois je placer mes paramètres : TILED, BLOCK X SIZE, Y SIZE, COMPRESS, INTERLEAVE, ...??
Comment fonctionne la restitution des images (image compressée) ? Par exemple moi, ce sont au départ de très belles images tif et le rendu n'est vraiment pas beau, est ce seulement du à la compression ? Dois je me pencher sur la section OUTPUTFORMAT ?
D'ailleurs pourquoi y en a t-il plusieurs ?
Merci
Bertrand
Hors ligne
#4 Fri 10 October 2008 15:43
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Re bonjour,
pas si évident la pratique....
Comment dois je procéder pour utiliser gdaltindex après un gdal2tiles ??? L'arborescence créée est plutôt complexe ....
Merci
Bertrand
Hors ligne
#5 Fri 10 October 2008 15:53
Re: mapserver/openlayers image tuilée, navigation fluide
Rapidement,
Je ne pense pas que Gdal2tiles soit la commande qui t'intéresse.
Quand tes overview sont crées tu n'as rien de plus à faire.
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#6 Fri 10 October 2008 18:21
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Re bonjour,
Je ne comprend pas trop les manip alors ??
si je comprends bien faire des 'overviews' va par exemple me créer 4 images de résolutions moindres pour différents seuils de zoom ? Forcément la taille de ces images est moindre d'où le gain de fluidité ?
Mais je n'aurais cependant pas accès à la meilleure image, taille la plus importante ?
Je voulais au contraire tuiler mon image (de bonne résolution mais de taille trop grande) pour en faire des petites et que cela soit "transparent" pour l'utilisateur....
Si quelqu'un a du temps pour expliquer ce que je ne saisis pas.
Cordialement,
Bertrand
Hors ligne
#7 Sun 12 October 2008 20:06
- gretti
- Juste Inscrit !
- Lieu: Toulouse
- Date d'inscription: 3 Oct 2005
- Messages: 6
Re: mapserver/openlayers image tuilée, navigation fluide
Salut,
Tout d'abord, il est surprenant que tu n'arrives pas à lire ton image de 600
Mo. En théorie ça devrait passer avec Mapserver sans problèmes et quelques
lenteurs.
Si je ne m'abuse (je suis un peu rouillé sur le sujet ), voilà la manip
telle que je la ferais pour le cas où la grosse image ne passerait pas :
faire un gdal_translate dans un batch qui découpe l'image en plusieurs
images plus petites (dans ce cas il ne s'agit pas de tiles au sens tilecache
ce qui est je pense le but de gdal2tiles). Ca donnerait un ensemble de
lignes du style :
Code:
gdal_translate.exe -of TIFF -srcwin xmin ymin xmax ymax -co "WORLDFILE=YES" pathtotiff pathtomosaiquex_y.tif
où xmin ymin et xmax ymax défissent une dalle de 100Mo environ (typiquement
une première ligne du style 0 0 5000 5000, puis une seconde 0 5000 5000
10000, ...)
(si tu ne sais pas combien de pixels a ton image de départ, tu peux passer
par gdalinfo pour l'avoir)
ensuite, pour chaque fichier généré par le batch, faire un gdal_addo qui
génèrera un overview sur chacune des images pour ajouter en perf. (je ne me
rappelle plus la syntaxe exacte).
puis, un gdaltindex pour générer le shapefile d'index de ton mini-catalogue
d'images
enfin, dans ton mapfile, une layer de type :
LAYER
TYPE RASTER
TILEINDEX"pathtoshapeindex"
TILEITEM "LOCATION" #nom du cahmps généré par défaut par gdaltindex
END
Dans l'ensemble je pense que ça devrait marcher ...
Cheers,
Gretti
Hors ligne
#8 Mon 13 October 2008 15:07
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Bonjour Gretti,
merci pour cette super réponse!
1> Non je ne comprends pas pourquoi mon raster ne passe pas en entier même lentement...., il doit y avoir un paramètre côté serveur qui limite...ou un paramètre lié à Mapserver, je n'y comprend rien.
2> gdal_translate : j'ai donc découper mon raster en 8 et j'ai obtenu des dalles (fichiers tif)
3> gdaladdo : je créer des overviews de mes dalles: 2 4 8 16 (fichiers ovr)
Questions : Comment dois je utiliser gdaltindex ? Dois je le faire pointer les fichiers (tif) ou les fichiers (ovr) ??
Merci encore pour votre aide, et conseiller gdal à tous !
Bert
Hors ligne
#9 Mon 13 October 2008 15:15
Re: mapserver/openlayers image tuilée, navigation fluide
Bonjour,
Exemple avec des tuiles de géosignal :
Code:
gdaltindex Referentiel/geosignal/IDF/25k/index.shp Referentiel/geosignal/IDF/25k/*.tif
puis dans le mapfile :
Code:
LAYER NAME "geosignal_25k" GROUP geosignal STATUS ON TYPE RASTER TILEINDEX "Referentiel/geosignal/IDF/25k/index.shp" TILEITEM "Location" PROJECTION "init=epsg:27582" END END
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#10 Mon 13 October 2008 15:57
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Bonjour Yves,
merci pour l'exemple cela fonctionne, les tuiles sont OK. Mais je ne suis toujours pas satisfait du rendu ....
Comment est gérée la résolution ou la compression des images côté client ?
Qu'est ce que l'on observe et où peut-on le régler ?
Merci.
Bertrand
Hors ligne
#11 Mon 13 October 2008 16:10
Re: mapserver/openlayers image tuilée, navigation fluide
Bertrand,
Peux tu être plus précis par "pas satisfait du rendu" ? Une copie d'écran montrant ce qui ne te convient pas sera plus parlant je pense.
Il se peut que GDAL ait changer la palette de couleur, que mapserver utilise un outpuformat n'utilisant pas la bibliothèque AGG mais GD qui ne donne pas une qualité satisfaisante ...
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#12 Mon 13 October 2008 18:12
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Pardon, Yves....
voici comment je vois mon image dans un SIG (ArcGIS) et comment elle sort depuis mon mapserver.....
C'est pour cela que je ne suis pas satisfait du rendu....
L'image est nettement compressée....
Merci pour vos conseils
Bertrand
Hors ligne
#13 Mon 13 October 2008 18:56
- Guillaume Sueur
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 23 Sep 2005
- Messages: 331
- Site web
Re: mapserver/openlayers image tuilée, navigation fluide
c'est le nombre de couleurs qui n'est pas bon dans ton OUTPUTFORMAT
Prends du 24bits (RGB)
Hors ligne
#14 Tue 14 October 2008 10:09
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Bonjour Guillaume,
j'ai essayé mais cela ne fonctionne pas j'ai toujours l'effet pixelisation (compression) et les mêmes couleurs....
Et comment mapserver gère le format de sortie de telle ou telle couche ? (celle là je dois la sortir en PC256, l'autre en RGBA, ....??)
J'ai une image Tif (3 bandes) gérée avec GDAL et je veux la restituer en RGB 24bit.....
J'ai tapé cela dans mon bloc MAP :
OUTPUTFORMAT
NAME GTiff
DRIVER 'GDAL/GTiff'
MIMETYPE 'image/tiff'
IMAGEMODE RGB
EXTENSION 'tif'
END
? Qu'est ce qui ne pourrait ne pas aller ?
Merci de votre aide
Bertrand
Hors ligne
#15 Tue 14 October 2008 10:14
- Guillaume Sueur
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 23 Sep 2005
- Messages: 331
- Site web
Re: mapserver/openlayers image tuilée, navigation fluide
Vous voulez vraiment générer du TIF ?
Hors ligne
#16 Tue 14 October 2008 10:20
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Non pas forcément, mais pour le moment je lui mets cela et je n'ai pas du Tif en sortie....
Cela ressemblerai à ca :
OUTPUTFORMAT
NAME jpegfull
DRIVER "GD/JPEG"
MIMETYPE "image/jpeg"
IMAGEMODE RGB
EXTENSION "jpg"
FORMATOPTION "QUALITY=100"
END
pour du jpeg....
sinon quels sont les meilleurs formats rendu/performance sachant que dans l'avenir je vais lui mettre des tuiles de 100 Mo?
Merci Guillaume
Hors ligne
#17 Tue 14 October 2008 10:22
Re: mapserver/openlayers image tuilée, navigation fluide
Pourquoi utilises tu du tiff ? le PNG ou le JPEG n'est pas correcte ?
Que donne un :
COMPRESS=NONE
?
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#18 Tue 14 October 2008 10:23
Re: mapserver/openlayers image tuilée, navigation fluide
La page de documentation : http://mapserver.gis.umn.edu/docs/refer … tputformat te donnera quelques infos sur les outputformats
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#19 Tue 14 October 2008 10:29
- Guillaume Sueur
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 23 Sep 2005
- Messages: 331
- Site web
Re: mapserver/openlayers image tuilée, navigation fluide
Il doit y avoir d'autres OUTPUTFORMAT définis. Montrez-nous tout votre fichier .map, sans les LAYERs cependant.
Merci
Hors ligne
#20 Tue 14 October 2008 11:11
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
En effet, lorsque je mets seulement le OUTPUTFORMAT "jpegfull" cela ne renvoie rien du tout....
Voici mon mapfile et les différents OUTPUT :
#
# Start of map file
#
MAP
EXTENT -9056385 -7503565.5 -3873142.75 1389331.875
#EXTENT -19977777 -7481525 20037508 18356400
SIZE 842 605
IMAGETYPE png_rgba
SHAPEPATH "../../config/default"
SYMBOLSET "../../config/default/symbols/symbols35.sym"
FONTSET "../../config/default/ird.font"
PROJECTION
'init=epsg:54004'
END
OUTPUTFORMAT
NAME gif
DRIVER 'GD/GIF'
MIMETYPE 'image/gif'
IMAGEMODE PC256
EXTENSION 'gif'
END
OUTPUTFORMAT
NAME png_rgba
DRIVER "GD/PNG"
MIMETYPE "image/png"
IMAGEMODE rgba
TRANSPARENT ON
EXTENSION "png"
END
OUTPUTFORMAT
NAME jpegfull
DRIVER "GD/JPEG"
MIMETYPE "image/jpeg"
IMAGEMODE RGB
EXTENSION "jpg"
FORMATOPTION "QUALITY=100"
COMPRESS=NONE
END
OUTPUTFORMAT
NAME GTiff
DRIVER 'GDAL/GTiff'
MIMETYPE 'image/tiff'
IMAGEMODE RGB
EXTENSION 'tif'
END
#
# Start of web interface definition
#
Ici IMAGETYPE est png_rgba (c'est bien du 32 bits??)
Merci de vos conseils
Bertrand
Hors ligne
#21 Tue 14 October 2008 12:07
- Guillaume Sueur
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 23 Sep 2005
- Messages: 331
- Site web
Re: mapserver/openlayers image tuilée, navigation fluide
Une question quand-même : par quel biais générez-vous les images ? WMS ? mapserv ? mapscript ? shp2img ?
et aussi, quel est le format réel de l'image générée ?
Hors ligne
#22 Tue 14 October 2008 14:02
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Je génère les images avec mapserver dans une interface mapbuilder. Les shapefiles sont dans une BD postgis et les rasters stockés dans le dossier 'imagepath'.
Je ne sais pas répondre à cette question : Quel est le format réel de l'image générée ? Quand je fais clic droit enregistrer l'image sous (c'est : wms.gif) ???
Hors ligne
#23 Tue 14 October 2008 15:23
- Guillaume Sueur
- Participant assidu
- Lieu: Toulouse
- Date d'inscription: 23 Sep 2005
- Messages: 331
- Site web
Re: mapserver/openlayers image tuilée, navigation fluide
Voilà, c'est donc que c'est le format .gif qui est utilisé (ce qui semble logique au vu de l'image). Donc il faut vérifier la configuration de MapBuilder ou des appels WMS pour leur demander de créer des cartes en png_rgba (qu'il vaudrait mieux renommer en png soit dit en passant...)
Hors ligne
#24 Tue 14 October 2008 17:27
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
J'ai un fichier context.xml qui configure l'affichage de mapbuilder mais les modif ni changent rien.
Pour WMS je ne sais pas où je dois chercher...Rien que de réussir une modif/ et voir l'effet sur l'affichage pourrait me remplir de joie...
Merci en tout cas
b.
Hors ligne
#25 Wed 15 October 2008 10:51
- bebert_lama
- Participant assidu
- Date d'inscription: 9 Nov 2006
- Messages: 253
Re: mapserver/openlayers image tuilée, navigation fluide
Bonjour à tous,
et bien je suis très satisfait (merci Guillaume) les modifications ont bien marché et j'ai ma restitution en PNG ! C'était bien du côté Mapserver (déclaration ImageType) et du côté de Mapbuilder (fichier context.xml).
Maintenant, j'ai une autre question pour améliorer la fluidité :
Si je découpe mon image en 8 zones A1, A2, B1, ....et que je sais que les clients vont naviguer souvent dans la zone B2, est ce que je peux redécouper cette zone en 16 images, les tuilées,....afin d'améliorer la fluidité ??
En gros j'aimerais imbriquées des images tuilées....
Merci de votre aide
Bertrand
Hors ligne