mardi 16 octobre 2012

Tuiler une image avec ImageMagick

Voici en quelques commandes comment tuiler une image via l'outil imagemagick.

convert -alpha off <image_source> -define tiff:tile-geometry=256x256 -compress jpeg 'ptif:<image_dest>.tif'

-alpha off : ce paramètre est optionnel pour tuiler une image mais il évite de répercuter le canal alpha sur les tuiles.
Remarque : Certains produit d'affichage d'images tuilées (IIPImage) ne gère pas la couche alpha.

<image_source> : chemin d'accès complet et qualifié du fichier d'image à tuiler.

-define tiff:tile-geometry=256x256 : définit la taille des tuiles à générer. Dans l'exemple ci-dessus, chaque tuile est un carré de 256 pixels de coté.

-compress jpeg : définit le type de compression à appliquer sur chacune des couches. Généralement, trois types de compression sont supporté : JPEG, LZW, NONE.

'ptif:<image_dest>' : spécifie le chemin d'accès complet et qualifié du fichier à produire. Le fichier doit impérativement avoir l'extension tif.

IIPImage : requêtes émises par le client IIPMooviewer

Lors de l'initialisation du client IIPMooViewer, les requêtes suivantes sont émises :


La 1er requête consiste à demander des informations sur l'image à afficher :

http://localhost/fcgi-bin/iipsrv.fcgi?FIF=<image_source_absolute_path>&obj=IIP,1.0&obj=Max-size&obj=Tile-size&obj=Resolution-number

La 2nd requête (pour la construction de la frame "miniature") présente la forme suivante :

http://localhost/fcgi-bin/iipsrv.fcgi?FIF=<image_source_absolute_path>&SDS=0,90&CNT=1.0&WID=168&QLT=99&CVT=jpeg

La Nème requête d'affichage d'une tuile N présente la forme suivante :

http://localhost/fcgi-bin/iipsrv.fcgi?FIF=<image_source_absolute_path>&cnt=1&sds=0,90&jtl=5,21

IIPImage : Impact de la compression sur le temps de réponse

Conditions de test :

Caractéristiques du serveur :
Les mesures suivantes ont été réalisés sur un ordinateur portable présentant les caractéristiques suivantes:
   - Processeur : Intel Celeron 1,6GHz
   - Mémoire : 2Go
   - HD : 60Go 5400tr/min

Caractéristiques de l'image de test :   - Taille de l'image originale : 11000x9000
   - Poids de l'image originale : 294 Mo.
   - Poids de l'image originale compressé en JPEG : 36 Mo.

Résultats des mesure :

Type de fichier : TIF
Type de compression : /
Temps de génération : 3min52
Taille du fichier : 400 Mo
Temps de restitution de tuile (IIPImage) : 10 à 15 ms

Type de fichier : TIF
Type de compression : LZW
Temps de génération : 4min08
Taille du fichier : 357 Mo
Temps de restitution de tuile (IIPImage) : 35 à 70 ms

Type de fichier : TIF
Type de compression : ZIP
Temps de génération : 5min
Taille du fichier : 295 Mo
Temps de restitution de tuile (IIPImage) : 30 à 35 ms

Type de fichier : TIF
Type de compression : JPEG
Temps de génération : 5min06
Taille du fichier : 83 Mo
Temps de restitution de tuile (IIPImage) : 35 à 40 ms

Type de fichier : JPEG 2000
Type de compression : /
Temps de génération : ?
Taille du fichier : 11 Mo
Temps de restitution de tuile (IIPImage) : 150 à 200 ms

Conclusion :
Si le temps de génération n'est pas l'élément le plus important, le format TIF avec une compression JPEG apporte le meilleur compromis temps de réponse / taille de fichier

Jenkins : Prise en charge de SVN 1.7

Par défaut, Jenkins (a minima, en version 1.485) ne prend en charge les versions de SVN jusqu'à la version 1.6.
Il est possible de remédier à cette limitation en surchargeant le plugin subversion.

Pour cela :
- arrêter le serveur d'application
- télécharger le plugin subversion suivant :
        https://issues.jenkins-ci.org/secure/attachment/21771/subversion-svnkit-1.7.4.hpi
- déployer le plugin dans le répertoire jenkins_war\WEB_INF\plugins\
- redémarrer le serveur d'application
- dans la console d'administration, sélectionner la version de SVN : 1.7

Et voilà.

Pour plus d'info, consulter : https://issues.jenkins-ci.org/browse/JENKINS-11933

Migration de Hudson vers Jenkins


Situation de départ :

Hudson est installé dans un serveur d'application de type JBoss AS. L'espace de travail est déclaré via le fichier web.xml (hudson.war\WEB-INF\weeb.xml) de la manière suivante :
   <env-entry>
      <env-entry-name>HUDSON_HOME</env-entry-name>
      <en-entry-type>java.lang.string</env-entry-type>
      <env-entry-value>E:\Hudson</env-entry-value>
   </env-entry>

Déployer Jenkins :

- Arrêter le serveur d'application JBoss AS
- Créer un répertoire de travail pour accueillir l'environnement d'exécution (workspace) de Jenkins. Par exemple : E:\Jenkins
- Dezipper le fichier jenkins.war dans le répertoire /deploy de JBoss AS
- Editer le fichier jenkins.war\WEB-INF\weeb.xml
- Modifier la déclaration de la variable d'environnement JENKINS_HOME de la manière suivante :
   <env-entry>
      <env-entry-name>JENKINS_HOME</env-entry-name>
      <en-entry-type>java.lang.string</env-entry-type>
      <env-entry-value>E:\Jenkins</env-entry-value>
   </env-entry>


Migration :

- Copier le contenu du répertoire E:\Hudson\Jobs\ vers E:\Jenkins\Jobs\
- Redémarrer le serveur d'application JBoss AS
Un message d'avertissement indique que des données sont dans un format "ancien".
- Cliquer sur le bouton "Gérer"

Et voilà.
Related Posts Plugin for WordPress, Blogger...