Colorisation [Résolu]

Signaler
Messages postés
167
Date d'inscription
mardi 11 septembre 2007
Statut
Membre
Dernière intervention
11 février 2009
-
Messages postés
167
Date d'inscription
mardi 11 septembre 2007
Statut
Membre
Dernière intervention
11 février 2009
-
Voici mon code :

Public Shared Sub Colorize(ByRef bmp As Drawing.Bitmap, ByVal ColorizingColor As Color)
        For x As Integer = 0 To bmp.Width - 1
            For y As Integer = 0 To bmp.Height - 1
                Dim c As Color = bmp.GetPixel(x, y)
                c.GetBrightness()
                Dim r As Integer = c.GetBrightness * ColorizingColor.R
                Dim g As Integer = c.GetBrightness * ColorizingColor.G
                Dim b As Integer = c.GetBrightness * ColorizingColor.B
                Dim nc As Color = Color.FromArgb(r, g, b)
                bmp.SetPixel(x, y, nc)
            Next
        Next
    End Sub

Il permet de "coloriser" une image, seulement si je colorise avec une couleur apres avec une autre et encore une autre l'image devient de plus en plus sombre. Avec Gimp ou photoshop, la clarté de l'image reste là même après colorization ça ne change pas le niveau de gris.

Comment y remédier pour garder le meme niveau gris/alpha pour ne pas perdre la clarté de l'image ?

Redman

5 réponses

Messages postés
14757
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
14 janvier 2021
151
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
67
tu prend la couleur de chaque pixel, puis tu la restaure en y opérant un étrange calcul.

pas compris ce que tu cherches a faire...
Messages postés
167
Date d'inscription
mardi 11 septembre 2007
Statut
Membre
Dernière intervention
11 février 2009

Non, vous n'avez pas compris, je me ré explique, mon code permet de faire une monochromie avec la couleur choisie. J'ai réussi à le faire c'est donc le code que je vous ai montré, seulement si je répète plusieurs fois l'action l'image deviens de plus en plus sombre, je voudrais préserver la luminosité d'origine.

Redman
Messages postés
14757
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
14 janvier 2021
151
Bonjour,

Bon, je pense avoir compris, si ta "ColorizingColor" est plus sombre que le blanc pétant, tu a l'effet que tu nous dis.

Pour cela, effectue un calcul entre la luminosité moyenne de l'image et la luminosité de "ColorizingColor" et ensuite applique le coefficient de correction.

http://nhen0039.chez-alice.fr/index.php
Messages postés
167
Date d'inscription
mardi 11 septembre 2007
Statut
Membre
Dernière intervention
11 février 2009

Merci :D

Redman