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

Traitement d'images Discussion :

Algorithme de redimensionnement d'images


Sujet :

Traitement d'images

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 8
    Points : 6
    Points
    6
    Par défaut Algorithme de redimensionnement d'images
    Bonjour à tous,

    Je ne suis pas sûr de poster dans la bonne catégorie, j'ai donc choisi le forum "Langages en général".

    Je suis à la recherche d'algorithme de traitement d'images.
    En particulier les algorithmes de redimensionnement, mais je n'arrive pas à trouver d'algorithmes ni de cours théoriques sur le sujet.

    Sauriez-vous m'orienter vers un site traitant de ce sujet?
    Merci par avance =)

  2. #2
    Membre éprouvé Avatar de I_believe_in_code
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    219
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 219
    Points : 1 043
    Points
    1 043
    Par défaut
    Methode "rouleau-compresseur" :

    Considerer chaque pixel de l'image destination comme un rectangle (sans doute un carre en fait) dont les coordonnees des coins sont connues.

    Faire pareil pour les pixels de l'image source.

    Ensuite, pour chaque pixel de l'image destination :

    1) Calculer pour chacun de ses coins les coordonnees correspondantes dans l'image source (le plus souvent on tombera quelque part a l'interieur d'un pixel), afin de delimiter un rectangle (ou carre) R de l'image source qui est "couvert" par le pixel correspondant dans l'image destination

    2) Calculer la moyenne M (ou la mediane Me) des pixels de la source presents dans le rectangle R. Ces pixels peuvent en fait se limiter a un seul pixel (en cas d'agrandissement). Prendre soin de ponderer, dans le calcul de M (ou de Me), chacun de ces pixels par l'aire de son intersection avec le rectangle R.

    3) Stocker M (ou Me) dans l'image destination.


    Ce sont les premiers algos de redimensionnement que j'ai codes pour le logiciel de traitement et d'analyse d'image que je developpe. Malgre leur naivete ils donnent de tres bons resultats. Celui base sur les moyennes "ajoute" un leger flou sur les images reduites mais il est tres robuste au sens ou il donne de bons resultats sur tous les types d'images. Celui base sur les medianes introduit des artefacts sur certaines (rares) images synthetiques ou deja traitees de facon tres particuliere, mais en revanche il "n'ajoute aucun flou" sur les images. Pour les photos et les dessins avec des degrades les resultats sont presque systematiquement meilleurs qu'avec les moyennes, les contours etant plus nets.

    Dans le cas d'un agrandissement, penser a faire suivre le redimensionnement d'un filtre pour adoucir l'image (un filtre moyen, dont le rayon est fonction du facteur d'agrandissement, est souvent suffisant)

    Il existe aussi des techniques plus matheuses, par exemples basees sur les FFT, et / ou specifiques a un type d'image en particulier. J'ai rarement ete epate par les differences de rendus entre deux techniques... les methodes naives marchent assez bien pour redimensionner une image. Sauf la methode brutale consistant a prendre un pixel sur quatre s'il faut par exemple diviser le nombre de pixels par quatre...

  3. #3
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 081
    Points
    16 081
    Par défaut
    Idem I_believe_in_code.

    Il y a deux approches principales pour le redimensionnement d'image:

    L'approche "géométrie", qui consiste à voir chaque image comme une mosaïque de pixels. On construit alors une transformation, c-a-d une fonction qui permet de calculer les pixels d'une image à partir des pixels de l'autre image.

    L'approche "traitement du signal", qui consiste à voir une image comme un échantillonnage (image pixelisée) d'un signal continu (image réelle). On part de l'image source pour reconstruire au mieux le signal continu, puis on ré-échantillonne ce signal pour obtenir l'image redimensionnée.
    ALGORITHME (n.m.): Méthode complexe de résolution d'un problème simple.

Discussions similaires

  1. Algorithme pour redimensionner une image
    Par ryosnake dans le forum Traitement d'images
    Réponses: 2
    Dernier message: 20/05/2009, 10h36
  2. [VB.NET] Redimensionner une image dans un PictureBox
    Par Monster77 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 05/04/2007, 18h24
  3. [réglé][JSP - Resin] Redimensionnement d'images ...
    Par Claude Pelletier dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 24/03/2005, 18h47
  4. [VB.NET] Redimensionner une image proportionnelement
    Par Monster77 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 19/10/2004, 12h10
  5. [MX2004] redimensionner une image lors du chargement
    Par ouinouin dans le forum Flash
    Réponses: 8
    Dernier message: 18/02/2004, 18h32

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