Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

Script de pré-traitement d'images - Ubuntu 24 / Python 3

De AJLSM
Aller à la navigation Aller à la recherche

Script de pré-traitement d'images - Ubuntu 24 / Python 3

[modifier | modifier le wikicode]

Ces scripts et JAR de pré-traitement d'images ont été adaptés pour fonctionner sur Ubuntu 24.04.

Objectifs :

  • remplacer les dépendances obsolètes (Python 2, Java 7)
  • conserver le fonctionnement existant
  • maintenir la compatibilité avec les outils historiques (ImageMagick, VIPS)

---

État de compatibilité validé

[modifier | modifier le wikicode]
  • Compilation des JAR : Java 6 (major version 50)
  • Runtime validé : OpenJDK 17
  • Scripts convertis de Python 2 vers Python 3
  • Version validée : Python 3.12
  • ImageMagick (convert, identify)
  • VIPS (traitement pyramidal)

---

Dépendances à installer sur Ubuntu 24

[modifier | modifier le wikicode]
apt update
apt install -y openjdk-17-jdk-headless python3 imagemagick libvips-tools 2to3

---

Versions testées sur eole3

[modifier | modifier le wikicode]
java -version

Résultat validé :

openjdk version "17.0.18" 2026-01-20
OpenJDK Runtime Environment (build 17.0.18+8-Ubuntu-124.04.1)
OpenJDK 64-Bit Server VM (build 17.0.18+8-Ubuntu-124.04.1, mixed mode, sharing)
python3 --version

Résultat validé :

Python 3.12.3
convert --version
identify --version

Résultat validé :

ImageMagick 6.9.12-98
vips --version

Résultat validé :

vips-8.15.1

---

Modifications apportées

[modifier | modifier le wikicode]

Remplacement de Java 7

[modifier | modifier le wikicode]

Ancien :

/home/ajlsm/java7/jre1.7.0_80/bin/java

Nouveau wrapper :

/home/ajlsm/bin/java-pretraitement

Contenu :

#!/usr/bin/env bash
exec /usr/bin/java "$@"

---

Conversion Python 2 vers Python 3

[modifier | modifier le wikicode]

Scripts concernés :

  • pretraitement_images_plus.py
  • pretraitement_images.py

Sauvegardes :

  • *.py.py2

Commande :

2to3 -w /home/ajlsm/script-pre-traitement/bin/pretraitement_images_plus.py
2to3 -w /home/ajlsm/script-pre-traitement/bin/pretraitement_images.py

Validation :

python3 -m py_compile /home/ajlsm/script-pre-traitement/bin/pretraitement_images_plus.py
python3 -m py_compile /home/ajlsm/script-pre-traitement/bin/pretraitement_images.py

---

Wrapper python

[modifier | modifier le wikicode]

Créer :

/home/ajlsm/bin/python

Contenu :

#!/usr/bin/env bash
exec /usr/bin/python3 "$@"

---

Variables d'environnement

[modifier | modifier le wikicode]
export PATH=/home/ajlsm/bin:/usr/local/bin:/usr/bin:/bin

Pour cron :

SHELL=/bin/bash
PATH=/home/ajlsm/bin:/usr/local/bin:/usr/bin:/bin

---

Vérifications

[modifier | modifier le wikicode]
which java
which python
which python3
which convert
which identify
which vips

Résultat attendu :

/usr/bin/java
/home/ajlsm/bin/python
/usr/bin/python3
/usr/bin/convert
/usr/bin/identify
/usr/bin/vips

---

Important : chemins eole3 (ZFS)

[modifier | modifier le wikicode]

Les données sont désormais sous :

/var/data/<client>-data/data/

Exemple :

Ancien :

/var/data/apbp-data/pleade/images

Nouveau :

/var/data/apbp-data/data/pleade/images

---

Exemple de lancement

[modifier | modifier le wikicode]
export PATH=/home/ajlsm/bin:/usr/local/bin:/usr/bin:/bin

/home/ajlsm/bin/java-pretraitement -jar \
/home/ajlsm/script-pre-traitement/ImagePretraitement/ImagePretraitement.jar \
/home/ajlsm/script-pre-traitement/bin/pretraitement_images_plus.py \
'/var/data/apbp-data/data/pleade/images' \
/var/data/apbp-data/data/data-private/pleade/images-preparees \
'hidef' \
true \
true \
/var/data/apbp-data/data/pleade/ImagePretraitement.log \
10

---

Résultat des tests

[modifier | modifier le wikicode]
  • Code retour : 0
  • Exécution complète fonctionnelle
  • Chaîne validée :
 * Java → Python → ImageMagick / VIPS

---

Points d'attention

[modifier | modifier le wikicode]

Ne pas installer

[modifier | modifier le wikicode]
apt install python-is-python3

Ne pas utiliser Java 7

[modifier | modifier le wikicode]

Conserver les scripts originaux

[modifier | modifier le wikicode]
  • *.py.py2

---

Fichiers concernés

[modifier | modifier le wikicode]
  • bin/pretraitement_images_plus.py
  • bin/pretraitement_images.py
  • bin/pretraitement_images_plus.py.py2
  • bin/pretraitement_images.py.py2
  • /home/ajlsm/bin/python
  • /home/ajlsm/bin/java-pretraitement

---

Pour faire fonctionner ces scripts sur Ubuntu 24 :

  1. Installer Java 17
  2. Installer Python 3
  3. Installer ImageMagick
  4. Installer VIPS
  5. Convertir les scripts Python 2 → Python 3
  6. Ajouter wrapper python
  7. Adapter les chemins avec /data/
  8. Configurer le PATH