Vous voulez vous entraîner un peu avant c0d1ngUP ?
Voici le troisième volet de la phase d’entraînement.
Le portrait est :
Ce défi est assez facile. L’idée générale est de parcourir toute l’image et de modifier la valeur de chaque composante de chaque pixel.
Techniquement, il faut disposer d’une bibliothèque pour relire le format PNG.
Avec Python, il est assez habituel d’utiliser PIL
pour faire ceci, mais il existe d’autres modules permettant de réaliser ce travail dans à peu près tous les langages.
Il faut par ailleurs pouvoir parcourir chaque pixel et extraire les composantes R, V, B, ce que peut faire PIL
.
Pour réaliser la transformation numérique demandée (trouver le nombre qui a la représentation binaire lue à l’enviers sur 8 chiffres), il est possible de la programmer soi même en réalisant des divisions et multiplications par 2 successives. On peut aussi passer par une chaîne de caractères, qu’il peut être plus facile de lire à l’envers.
Une fois l’image retrouvée, il reste à utiliser un outil de recherche par image. Il en existe plusieurs, et le défi propose Tineye.