Traitement d'image avec de la récursivité

Résolu/Fermé
Matt - 28 oct. 2020 à 10:24
Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 - 28 oct. 2020 à 11:31
Bonjour, je suis actuellement bloqué sur la partie B d'un TP sur la récursivité que mon professeur m'a distribué en cour puisque je suis complétement bloqué.
Je vous ai copier/coller l'énoncer en dessous.

Merci par avance

Écrire une procédure echange_pix(image, x0, y0, x1, y1) qui échange les pixels de
coordonnées (x0, y0) et (x1, y1) de l’image passée en paramètre.

On adopte dans cette question une stratégie diviser pour régner. L’image est divisée en
quatre quadrants. Chaque cadran est tourné récursivement puis une permutation circulaire des quadrants est effectuée.

La permutation circulaire est réalisée en enchaînant plusieurs échanges de cadran.
Le schéma suivant présente un exemple de stratégie permettant de le faire :

Aide : Inspirez-vous de ce qui a été fait à la question 3. de la partie A. Prenez garde au type des objets. Il faut écrire une procédure (il n’y a rien à renvoyer). La méthode putpixel modifie
l’image à laquelle on l’applique.

2. Echange quadrant

Écrire une procédure echange_quadrant(image, x0, y0, x1, y1, n) qui échange
deux quadrants carrés de taille n dont le premier a pour coordonnées de départ (x0, y0) et
le second pour coordonnées de départ (x1, y1).
Astuce : On échange les pixels deux à deux à l’aide de deux boucles imbriquées.

3. Tourne quadrants

Écrire une procédure récursive tourne_quadrants(image, x0, y0, n) qui
- prend en argument l’image considérée, une coordonnée de départ (x0, y0), une taille
n ;
- applique récursivement des rotations à chaque quadrant ;
- applique les permutations circulaires échangeant les quatre quadrants pour finaliser la
rotation.

Aide : Décomposez l’image en quatre sous-images en prenant garde que les coordonnées des pixels soient des entiers. Ensuite, appliquez la stratégie de permutation circulaire exposée dans l’énoncé.

4. Quart de tour

Écrire une procédure effectuant la rotation du quart de tour de l’image.
Enregistrer l’image (attention au chemin et au nom+extension) et l’afficher.
Aide : Réalisez la procédure qui fait finalement la rotation, utilisez les méthodes show() et
save(fichier) sur l’image.



Configuration: Windows / Chrome 86.0.4240.111

1 réponse

Phil_1857 Messages postés 1872 Date d'inscription lundi 23 mars 2020 Statut Membre Dernière intervention 28 février 2024 168
28 oct. 2020 à 11:31
Bonjour,

Ce forum est nourri par des bénévoles qui prennent sur leur temps,
et personne ne donnera de solution toute faite :

https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
1