Bonjour à tous !
Je travaille sur une transformation bijective d'image, qu'on appelle la Transformation Concentrique; dans cette transformation, il faut concevoir l'image comme une succession de rectangles emboîtés. Les pixels se déplacent sur ces rectangles dans le sens horaire.
J'ai des fonction mathématiques pour déplacer les pixels dans le sens horaire - c'est à dire, vers la droite, vers le bas, vers la gauche ou bien vers le haut - mais je n'arrive pas à trouver un moyen pour mettre dans mes conditions, lors de la programmation, c'est-à-dire, quand savoir lorsqu'un pixel est le coté gauche, droit, bas ou haut du rectangle.
Par exemple, pour une image de dimension 256x256, on sait que pour le premier rectangle, a partir de l'extérieur, si on donnait des coordonnées (x, y) aux pixels ( x pour numéro de la colonne, et y le numéro de la ligne ), on remarque que sur la première ligne, tous les pixels ont une valeur de y = 0, le coté droit x = 255, le coté gauche x = 0, le coté inférieur du rectangle y = 255. J'essaye de trouver une relation entre les cotés, mais je n'y arrive pas. J'ai essayé avec les modulos, par exemple si (y + 1) %256 = 0, alors c'est tel ou tel coté ... mais moi même je n'arrive pas à comprendre comment faire à partir de ça ..
Exemple:
Situatin initiale :
ABCDE
FGHIJ
KLMNO
PQRST
UVWXY
Situation finale
FABCD
KLGHE
PQMIJ
URSNO
VWXYT
Si quelqu'un pourrait bien m'aider s'il vous plaît ?
Merci beaucoup