Stéganographie

jenemyconnaispas Messages postés 7 Statut Membre -  
dsy73 Messages postés 9003 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour , j'ai vraiment besoin d'aide svp
Pour mon cour, je dois faire un programme stéganographique sur geany donc mon but est de cacher une image dans une autre ou un texte dans une image . D'apres ce que j'ai compris je dois modifier les octets de l'image pour pouvoir cacher le texte mais je ne sais pas comment afficher les octets de cette image et les modifier par la suite . En gros je suis bloquer pouvez vous m'aider?

4 réponses

  1. jenemyconnaispas Messages postés 7 Statut Membre
     
    Oui j'ai commencer pour l'instant dans mon programme j'ai réussi à afficher tout les octets de mon image. Donc la j'essaie d'arrondir chaque nuance de couleur à 0 donc je divise par 10 la valeur puis je la multiplie par 10. Je dois faire ceci pour tout les octets or je n'arrive a le faire que sur le premier octet alors j'essaie de faire une boucle mais c'est la que je bloque je n'arrive pas à modifier mon programme pour avoir une boucle.
    0
  2. dsy73 Messages postés 9003 Date d'inscription   Statut Contributeur Dernière intervention   2 547
     
    Tu devrais afficher ton code avec la coloration syntaxique.
    0
  3. jenemyconnaispas Messages postés 7 Statut Membre
     
    from PIL import Image
    img = Image.open("Lighthouse.jpg").convert("RGB")
    #l,h=img.size
    #print(l,h)
    couleurs = list(img.getdata())
    #print(couleurs)
    #img.putdata(couleurs)
    #L =couleurs[0,2359196]
    (r,v,b)=couleurs[0]
    for c in range(r,v,b):
    	r=(r//10)*10
    	v=(v//10)*10
    	b=(b//10)*10 
    
    print(r,v,b)
    
    0
    1. dsy73 Messages postés 9003 Date d'inscription   Statut Contributeur Dernière intervention   2 547
       
      Pourtant tu as bien une boucle, si tu mets le print() dans la boucle tu devrais voir les nouvelles valeurs RGB.
      0
    2. jenemyconnaispas Messages postés 7 Statut Membre > dsy73 Messages postés 9003 Date d'inscription   Statut Contributeur Dernière intervention  
       
      j'arrive à voir les nouvelles valeurs mais seulement pour le premier octet mais je n'arrive pas à le faire fonctionner pour tout les octets de l'image
      0
    3. dsy73 Messages postés 9003 Date d'inscription   Statut Contributeur Dernière intervention   2 547 > jenemyconnaispas Messages postés 7 Statut Membre
       
      for c in range(r,v,b):
      r=(r//10)*10
      v=(v//10)*10
      b=(b//10)*10
      print(r,v,b)

      Qu'est-ce que ça donne ?
      0
    4. jenemyconnaispas Messages postés 7 Statut Membre > dsy73 Messages postés 9003 Date d'inscription   Statut Contributeur Dernière intervention  
       
      sa me donne aussi que le premier octet
      0
    5. jenemyconnaispas Messages postés 7 Statut Membre
       
      en faite je n'arrive à le faire seulement octet par octet or il faudrait que je le fasse pour tout les octets en meme temps mais je ne vois pas comment je peux parametré.
      0