1 / 6
Image initiale
Chaque couleur occupe une position dans le carré.
Laboratoire interactif · Algèbre et systèmes dynamiques
Étirer, comprimer et recomposer une image : observez le mélange étape par étape
Imaginez que vous étirez une pâte, la repliez et recommencez. La transformation du boulanger agit de façon analogue sur les points d’un carré. Commencez avec les quatre quadrants colorés sur une grille 8×8, appuyez sur « 1 itération en avant » et observez les changements ; augmentez ensuite la résolution pour voir le mélange plus finement.
Choisissez une image de démonstration ou importez la vôtre. Par défaut : quatre quadrants sur une grille 8×8.
L’image est recadrée au centre si elle n’est pas carrée, puis adaptée à la grille choisie. À la fin du cycle, elle revient exactement à cette version sur la grille, et non au fichier original en pleine résolution. Le fichier reste dans votre navigateur et n’est pas envoyé au serveur. Jusqu’à 32 itérations sont conservées.
Cliquez sur l’image pour suivre un point.
« Exécuter N itérations » calcule aussitôt tous les pas choisis. Chaque image intermédiaire apparaît dans la galerie ci-dessous et peut être ouverte séparément. « 1 itération inverse » parcourt la transformation à rebours.
Chaque vignette est un état réellement calculé. Sélectionnez-la pour la revoir et poursuivre à partir de là. Les six panneaux plus bas expliquent un seul pas.
Les six panneaux expliquent les étapes d’une seule itération : ce ne sont pas six itérations et ils ne montrent pas le retour à l’image initiale. Les cinq premiers sont schématiques ; le sixième est le résultat exact du premier pas sur la grille choisie. Utilisez le bouton du laboratoire pour voir le retour.
1 / 6
Chaque couleur occupe une position dans le carré.
2 / 6
Nous séparons idéalement la moitié gauche de la moitié droite.
3 / 6
Chaque moitié est élargie à la largeur initiale ; la moitié gauche est montrée ici.
4 / 6
Les deux moitiés élargies sont raccourcies et montrées séparément pour rester visibles.
5 / 6
La moitié gauche occupe la bande supérieure et la moitié droite la bande inférieure.
6 / 6
Les pixels sont permutés sans perte ; les lignes voisines s’entrelacent dans les nouvelles colonnes.
Le dessin schématique illustre l’application continue. Sur une grille finie, nous utilisons une permutation des pixels : elle garde N×N cases et n’invente ni ne supprime de couleurs après le recadrage initial.
Cliquez sur l’image originale : vous verrez les coordonnées du point après chaque itération calculée et un parcours schématique dans le carré. Le point suit la formule continue, non la permutation des centres de pixels.
Aucun point sélectionné.
Cette transformation d’un carré rappelle le geste du boulanger : étirer la pâte, la comprimer et superposer les parties. Répétée souvent, une région initialement compacte se répartit en bandes de plus en plus fines.
Chaque moitié est étirée horizontalement d’un facteur 2 et comprimée verticalement d’un facteur 1/2. Le produit des facteurs vaut 1 : l’application continue conserve l’aire. Les deux moitiés remplissent sans chevauchement les bandes supérieure et inférieure du carré.
La règle n’emploie aucun hasard : la position suivante de chaque point est précise. Pourtant, deux points dont les coordonnées x initiales sont très proches peuvent se séparer rapidement, car leur distance horizontale double jusqu’au repliement. C’est la sensibilité aux conditions initiales.
Si x s’écrit en base 2 sous la forme 0.b₁b₂b₃…, la multiplication par 2 suivie de la suppression de la partie entière donne 0.b₂b₃… : c’est le décalage binaire, ou décalage de Bernoulli. Le premier chiffre b₁ détermine la bande supérieure ou inférieure et est enregistré dans la coordonnée y.
Une image numérique contient un nombre fini de pixels. Notre version discrète est une permutation réversible : elle conserve chaque pixel et finit nécessairement par retrouver un état antérieur. Le mélange visuel est instructif, mais ce n’est ni un chiffrement ni un véritable hasard.
B(x,y) = (2x, y/2) si x < 1/2
B(x,y) = (2x−1, (y+1)/2) si x ≥ 1/2
Exemple : en appliquant trois fois la règle à (0.3, 0.4), on obtient :
(0.3, 0.4) → (0.6, 0.2) → (0.2, 0.6) → (0.4, 0.3)