Le langage SMS est exclu sur les forums ProgBoards, tout message ne respectant pas la charte sera déplacé, modifié, ou supprimé par nos modérateurs.

Forum Informatique » Algorithmes » Changer le gamma d'une image

neamar
Modérateur
Citer Windows XP Firefox 2 - Posté le 28/06/2007 à 17:25
Salut à tous !

Cela fait pas mal de temps que je recherche sur Internet comment faire des effets sur les images.

Je commence à en connaitre pas mal, mais il me manque encore un truc important : la correction gamma (je sais pas bien si c'est comme ca en francais,tout les articles que j'ai lus parlent de "Gamma lightening"). Cela permet de changer la luminosité d'une image, pour l'éclaircir par exemple, bien que cela soit surement plus évolué que


pixel.rouge+ = 5
pixel.vert+ = 5
pixel.bleu+ = 5



Si quelqu'un a des infos pour programmer ça....merci !

(je ne cois pas qu'ils s'agissent simplement de jouer sur L dans le modèle HSL non plus...)

Edité par neamar ( 28/06/2007 17:27:18 )
Before you criticize someone, you should walk a mile in their shoes. That way when you criticize them, you are a mile away from them and you have their shoes.

http://neamar.free.fr
Ou le portail général : http://neamar.fr
Francesco
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 28/06/2007 à 19:53
La correction gamma n'a rien à voir avec la luminosité. Enfin directement.
La correction gamma permet d'améliorer le rendu d'une image lors de son affichage (sur un écran, un vidéoprojecteur, etc...).

La correction gamma doit être refaite dès lors que le périphérique de visualisation change. Pourquoi ? Simplement parce que les nuances des couleurs ne sont pas afficher de la même manière. C'est ce changement de nuance qui donne l'impression de changement de luminosité...
Gates gave you the windows.
GNU gave us the whole house.(Alexandrin)
neamar
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 02/07/2007 à 21:28
Humm..je comprends ce que tu veux dire, et c'est aussi ce que Wikipediia m'avait répondu..cependant, j'ai trouvé à plusieurs endroits une histoire d'images "gamma lightened",

Un exemple : l'image de fond et l'image de premier plan sont différentes ici :



Citation de l'auteur :


This dialog uses two bitmaps - one which is a gamma-lightened version of the other.



Et les deux images :




Encore ?


Just look at the shadows. If this rock is indeed floating in the air, then why is it's shadow to the right of the rock when all the shadows of the plants, and indeed on the rock itself, are to the left?

This is a gamma lightened image. I also removed the pixelation artifacts caused by the excessive jpeg compression. As you can see, the shadow doesn't look like a simple black blob that was "photoshop'ed" into the image.




Edité par neamar ( 02/07/2007 21:29:09 )
Edité par neamar ( 02/07/2007 21:51:10 )
Before you criticize someone, you should walk a mile in their shoes. That way when you criticize them, you are a mile away from them and you have their shoes.

http://neamar.free.fr
Ou le portail général : http://neamar.fr
Francesco
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 03/07/2007 à 14:44
Les deux sont tout à fait compatibles. A l'origine, la correction gamma avait pour but d'atténuer la "déformation" due au périphérique sur lequel on le visualise, en modifiant légèrement la répartition des couleurs. En gros, on diminue un effet parasite.

Mais ce changement de répartition des couleurs peut-très bien être un effet souhaité, pour rendre un peu plus clair (ou plus sombre), une image...
Gates gave you the windows.
GNU gave us the whole house.(Alexandrin)
neamar
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 03/07/2007 à 14:50
Mais comment fait on cet effet ?
Before you criticize someone, you should walk a mile in their shoes. That way when you criticize them, you are a mile away from them and you have their shoes.

http://neamar.free.fr
Ou le portail général : http://neamar.fr
AngeNoir
ProgBoarder
RemonterCiter Windows XP Firefox 2 - Posté le 04/07/2007 à 16:18
Salut neamar. (héhé

D'après moi, il suffit juste de prendre l'image en question, en faire une copie2, appliquer la fonction(Gamma) sur l'une delle, recopier toute les parties que l'on veut avoir sur l'image finale en les superposants et finalement, r'ajouter le texte.

C'est ce que je ferais dans ce cas.
D'après toi, est-ce logique?
A+
Ange.°.Noir
Le présent aura toujour besoin du passer pour avancer dans l'avenir.
neamar
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 04/07/2007 à 16:38
Oui c'est bien ca..mais tout le problème réside dans l'application de cette fonction Gamma : qui est elle et comment fonctionne-t-elle ? That is the question...
Before you criticize someone, you should walk a mile in their shoes. That way when you criticize them, you are a mile away from them and you have their shoes.

http://neamar.free.fr
Ou le portail général : http://neamar.fr
Freem
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 04/07/2007 à 17:25
Je sens que je vais poster une connerie car tu as déja dû aller regarder, mais les docs à la fin de l'article de wikipedia m'ont semblées interressantes même si je n'ai que survolé l'une d'entres elles ("Tutoriel sur la colorimétrie gamma").
http://fr.wikipedia.org/wiki/Correction_gamma
Tu me dis, j'oublie. Tu m'enseignes, je me souviens. Tu m'impliques, j'apprends. - Benjamin Franklin
Francesco
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 05/07/2007 à 16:29
C'est assez simple en réalite.

Prenons une image an niveau de gris, 0 = noir, 1 = blanc et tout nombre compris entre 0 et 1 représente un niveau de gris.

Pour faire une transformation gamma, il faut utiliser une bijection. Par exemple, si le moniteur est parfais, alors, à chaque niveau de gris d'une image sera vue tel qu'il est. Et la bijection, dans ce cas, est la fonction identité f(x) = x.

Si le moniteur n'est pas parfait, il peut assombrir un peu. Par exemple, un niveau de gris 0.5 apparaitrat à l'écran comme étant 0.4. Le but de la correction gamma est de modifier le niveau de gris initial, afin que le défaut du moniteur annule l'effet de la correction. Par exemple, après correction gamma, notre niveau de gris 0.5 va passer à 0.6. Puis, lorsque le moniteur passe par là, le moniteur n'étant pas parfais, le niveau 0.6 va apparaitre comme étant u nniveau 0.5. Et finalement, on a récupérer le niveau de gris initial !

La transformation s'appelle transformation gamma, car en pratique, la bijection utiliser est de la forme f(x)= x^gamma.

Pour les couleurs, c'est la même chose. Il suffit de traiter chacune des composantes RVB séparement. A noter qu'en théorie il est possible d'utiliser un gamma différent par couleur. En pratique, on utilise le même.

Gates gave you the windows.
GNU gave us the whole house.(Alexandrin)
neamar
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 05/07/2007 à 16:58
Merci à Freem et Francesco..c'est trouvé...

PS : Neliger, Pourquoi ne pas mettre une balise Résolue, comme sur d'autres forums bien connus ?
Before you criticize someone, you should walk a mile in their shoes. That way when you criticize them, you are a mile away from them and you have their shoes.

http://neamar.free.fr
Ou le portail général : http://neamar.fr
Freem
Modérateur
RemonterCiter Windows XP Firefox 2 - Posté le 05/07/2007 à 18:06
J'en ai déja discuté avec lui, mais il m'a fait cette remarque assez intelligente:
Il faudrait que tous ceux qui ont une réponse qui fonctionne s'en servent et il faudrait aussi regarder dans les archives pour regarder les problèmes qui ont été résolus.
Tu me dis, j'oublie. Tu m'enseignes, je me souviens. Tu m'impliques, j'apprends. - Benjamin Franklin

Poster une réponse

STOP aux fautes volontaires !
Message
Formatage
Note: pour partager du code source, merci d'utiliser le wall !
Smileys (sourire) (yekyek) (clein d'oeil) (désapprouve) (triste) (cool) (langue) (confus) (gêné) (neutre) (eek) (surpris) (diable) (flèche) (exclamation) (question) (diable) (idée) (méchant)
Pseudonyme
Recopiez le code
v6 © Computaid SPRL 2005-2008 - Tous droits réservés - Hébergé par eTigris - Page générée en 0,109 s - Crédits - Stats
1 connecté