Ressources numériques en sciences humaines et sociales OpenEdition Nos plateformes OpenEdition Books OpenEdition Journals Hypothèses Calenda Bibliothèques OpenEdition Freemium Suivez-nous

Polar Prism : visualisations expérimentales par transformation polaire dans ImageJ

Fig. 1. Un éventail de bandes colorées convergeant vers un point central, obtenu via une reconstruction polaire vers cartésienne, volontairement déformée.

Polar Prism est un plugin expérimental pour le logiciel ImageJ/Fiji qui s’appuie sur une opération classique de l’analyse d’images : la transformation en coordonnées polaires. La particularité de notre plugin est qu’il détourne volontairement l’étape de reconstruction pour générer des formes visuelles inédites.

Dans un usage “standard”, la transformation polaire sert à :
• linéariser des structures circulaires,
• mesurer des motifs radiaux,
• comparer des textures par angle et distance,
• reconstruire une image (aller-retour cartésien-polaire).

L’objectif de Polar Prism est différent. Pour nous, la transformation devient un instrument de visualisation. On obtient des images qui se comportent comme des signatures radiales, parfois proches d’une “empreinte” chromatique ou d’un diagramme d’angle.

Base conceptuelle de la transformation polaire

Pour un point (x, y) exprimé relativement à un centre (cx, cy) :
• rayon : r = sqrt(x² + y²)
• angle : θ = atan2(y, x) (converti dans [0, 360) degrés)

Dans une image polaire, on encode souvent :
• x_polaire = r (ou une version mise à l’échelle)
• y_polaire = θ (mappé sur la hauteur de l’image)

Pour reconstruire (polaire vers cartésien), on parcourt chaque pixel de l’image de sortie, on calcule (r, θ) correspondant, puis on échantillonne l’image d’entrée au point (x_polaire, y_polaire).

La qualité visuelle dépend largement de l’interpolation. Notre plugin utilise getInterpolatedPixel() pour les images en niveaux de gris et une interpolation bilinéaire “à la main” pour les images RGB (interpolateColorPixel()). C’est notamment ce qui contribue aux “rayons” continus (plutôt qu’à des artefacts en escalier).

Comment l’exécuter dans Fiji/ImageJ

  • Ouvrir Fiji/ImageJ
  • Ouvrir une image
  • (Optionnel) Dessiner une ROI pour définir un centre pertinent
  • Installer :
    • télécharger le script Polar_Prism.java
    • placer dans le dossier plugins/ (ou compiler via l’éditeur de plugins)
  • Lancer le plugin depuis le menu Plugins
  • Tester :
    • Prism + Smooth pour un rendu radial dense
    • désactiver les valeurs par défaut pour régler centre, biais radial, saturation

Refléxion

Le plugin ne suppose pas que l’entrée soit une “scène” photographique. Toute image rectangulaire peut être interprétée comme une carte où :

  • l’axe x encode un “rayon” (ou un index ordonné),
  • l’axe y encode un “angle” (ou une variable cyclique / une série).

Cela permet de visualiser :

  • des cartes polaires calculées en amont,
  • des images type sinogrammes (Fahey 2002),
  • des empilements de “slices”,
  • voire des matrices synthétiques (gradients, cartes de features, encodages).

La sortie devient alors un objet compact, comparable, souvent utile comme signature visuelle.

Version web

J’ai mis en ligne une version web de Polar Prism pour faciliter l’accès à l’outil, en particulier pour les utilisateurs sur Mac Apple Silicon (processeurs série M), où l’installation/compatibilité d’ImageJ/Fiji peut varier selon les versions et les configurations. Cette version JavaScript fonctionne directement dans le navigateur : on charge une image, on ajuste les paramètres, et on génère les rendus “prismatiques” sans dépendance locale.

https://ereyes.github.io/polarprism

Crédits

Variation Polar Prism : Everardo Reyes, 30 août 2017. Basé sur une version originale de Edwin F. Donnelly.

Reyes García, E. (2025). Polar Prism JS (1.0). Zenodo. https://doi.org/10.5281/zenodo.18011274

Références

Créativité computationnelle

GR1D organise une journée d’étude (JE) ce mercredi 14 mai 2025 au Campus Condorcet.

Cette JE vise à explorer une variété de perspectives englobées par le terme générique « le numérique » (the digital), en s’appuyant sur des expériences issues des arts, du design et des sciences humaines. Il interroge les limites conceptuelles et remet en question la théorie par la pratique. Il pose la question : dans quelle mesure la créativité dépend-elle du numérique ?

En tant qu’utilisateurs et habitants d’un monde de plus en plus numérique, il est essentiel de remettre en question les technologies familières qui nous entourent, de ne pas les considérer comme acquises et d’en ouvrir les boîtes noires (Sack 2013). Puisque le logiciel lui-même fonctionne comme une série de traductions de modes de pensée, nous devons comprendre ce qui est traduit, transformé et potentiellement effacé au cours du processus (Sack 2019).

Programme de la journée

9:00 – 9:30 – Accueil de participants

9:30 – 10:00 – Ouverture – Everardo Reyes (Université Paris 8, FR)

10:00 – 10:45 – Giuseppe Torre (University of Limerick, IE)

10:45 – 11:30 – Miguel Carvalhais (Universidade do Porto, PT)

11:30 – 12:15 – Discussion 

12:30 – 13:30 – Pause déjeuner

13:45 – 14:15 – Florent Di Bartolo (Université Gustave Eiffel, FR)

14:15 – 14:45 – Arthur Kuhn (Université Paris 8, FR)

14:45 – 15:15 – Discussion

15:15 – 15:30 – Pause

15:30 – 16:15 – Lauren Tilton & Taylor Arnold (University of Richmond, USA)

17:00 – 17:45 – Warren Sack (UCSC, USA) (Zoom talk live from Santa Cruz, CA)

17:45 – 18:15 – Discussion

18:15 – 18:30 – Mots de conclusion

Affiche

Lieu :

Salle 0.010, Bâtiment de Recherche Nord, Campus Condorcet

14 cours des Humanités, 93300 Aubervilliers