IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Images Discussion :

Chiffrement et déchiffrement d'image par simple substitution


Sujet :

Images

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2022
    Messages : 2
    Par défaut Chiffrement et déchiffrement d'image par simple substitution
    Bonjour,

    Je suis étudiant et plutôt débutant sur MatLab. J'ai eu un cours sur le chiffrement d'image où je n'arrive pas à trouver la solution d'un exercice malgré multiple recherche. Pourtant je pense que la solution est toute bête. Le code ci-dessous permet de chiffrer l'image lena.png à partir d'une clé k générée au préalable. L'exercice demandé est, à partir de la clé k et de la nouvelle image générée y, de retrouver l'image lena.png.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    lena=imread('lena.jpg');
    lena=double(lena);
    k=randperm(256)-1
    for i=1:512
        for j=1:512
            y(i,j)=k(lena(i,j)+1);
        end
    end
    Merci par avance !

    Le soucis est que je n'arrive pas à comprendre comment marche la ligne "y(i,j)=k(lena(i,j)+1);"

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Par défaut
    Bonjour,

    L’instruction : «*"y(i,j)=k(lena(i,j)+1);"*» donne l’image y en remplaçant la valeur de l’image originelle d’adresse (i,j) par le
    contenu de k à cette adresse.

    L’inconvénient, c’est qu’un même pixel donnera la même valeur transformée.

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2022
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2022
    Messages : 2
    Par défaut
    Bonjour,

    J'ai finalement trouvé la réponse à l'aide d'un ami. Je vous met le code ci-dessous si cela intéresse quelqu'un.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    for a=1:512
       for b=1:512
          indice=find(k==y(a,b));
          if indice~=1
             z(a,b)=indice-1;
          else
             z(a,b)=1;
          end
       end
    end

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/08/2004, 12h24
  2. Problème de nb d'images par seconde
    Par Francky033 dans le forum DirectX
    Réponses: 7
    Dernier message: 17/04/2004, 10h37
  3. Capture image par imprime ecran
    Par tomnie dans le forum Applications et environnements graphiques
    Réponses: 9
    Dernier message: 14/04/2004, 09h02
  4. Capture d image par webcam
    Par moimoimoi3x dans le forum C++Builder
    Réponses: 7
    Dernier message: 03/07/2003, 08h48
  5. Blocage à 60 images par seconde
    Par houssa dans le forum OpenGL
    Réponses: 5
    Dernier message: 24/06/2003, 08h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo