begin process at 2012 05 28 22:58:22
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Maths & Algorithmes

 > 

Conversion HSL à RGB


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Conversion HSL à RGB

samedi 19 juin 2004 à 02:00:30 | Conversion HSL à RGB

Stepharcher

Bonjours à tous !

Je cherche une personne forte en math ! Voici mon problème, j'ai besoin de faire des transformations d'images, et pour se faire, j'ai besoin d'une conversion RGB à HSL, puis HSL à RGB. Le problème est que je ne sais pas comment mathématiquement retrouver le RGB avec la formule HSL si dessous :

[ ((R-V)+(R-B)) ]
H = acos [ ------------------------------------- ]
[ 2*sqrt((R-V)*(R-V) + (R-B)(V-B)) ]

S = 1 - [ 3*MIN(R,V,B) ]
[----------------- ]
[ (R + V + B) ]

L = (R + V + B)/3


Je sais que c'est un peu violent... Voici un aperçu de mon programme
http://www.cppfrance.com/code.aspx?ID=23785
qui permettra de faire une recherche de contour et autre calcul.

Merci de votre attention

Stéph
samedi 19 juin 2004 à 02:03:40 | Re : Conversion HSL à RGB

Stepharcher

oh là ! la formule passe mal à l'écran ! Je l'écrit autrement :

H=2*Pix1.R-Pix1.G-Pix1.B;
H=((float)(Result.H))/(2*(float)sqrt((Pix1.R-Pix1.G)*(Pix1.R-Pix1.G)+(Pix1.R-Pix1.B)*(Pix1.G-Pix1.B)));
H=(float)acos(Result.H);

S=(1-(3*min(R, V, B)/(Pix1.R+Pix1.G+Pix1.B)));

L=(Pix1.R+Pix1.G+Pix1.B)/3;



Stéph
samedi 19 juin 2004 à 11:41:57 | Re : Conversion HSL à RGB

DARKSIDIOUS

Membre Club Administrateur CodeS-SourceS
Tu sais, il existe une API pour ce genre de conversion :

Je te donne la déclaration en VB car je ne connais pas l'équivalent en C :


'fonction permettant de convertir une couleur RGB en une couleur HLS
Private Declare Sub ColorRGBToHLS Lib "shlwapi.dll" ( _
ByVal LNG_Couleur As Long, _
LNG_Teinte As Long, _
LNG_Luminnce As Long, _
LNG_Saturation As Long)

'fonction permet de convertir une couleur HLS en une couleur RGB
Private Declare Function ColorHLSToRGB Lib "shlwapi.dll" ( _
ByVal Hue As Long, _
ByVal Lum As Long, _
ByVal Sat As Long) As Long


DarK Sidious

[Responsable API/VB du site www.ProgOtoP.com]
Téléchargez ProgOtoP API Viewer
dimanche 20 juin 2004 à 14:30:35 | Re : Conversion HSL à RGB

Stepharcher

Merci beaucoup ! Ca m'évite des calculs trop compliqués !

Stéph
dimanche 20 juin 2004 à 16:00:20 | Re : Conversion HSL à RGB

Stepharcher

Mais j'ai un problème : je n'est pas une version assez récente de shlwapi.lib pour pouvoir m'en servir... tu connais pas un endroit où je peux l'avoir ?

merci

Stéph
mercredi 25 mai 2005 à 14:13:34 | Re : Conversion HSL à RGB

martinbrochet

bonjour je souhaite passer 24 bits au 8 bits dois je simplement fair le moyenne des R G et B (cad (R+G+B)/3) ca peut pas etre aussi simple tout de meme ?????
comment qu'on fait alors pour passer du 24 bits au 8 bits?
merci d'avance


Martin B


Cette discussion est classée dans : problème, conversion, rgb, hsl


Répondre à ce message

Sujets en rapport avec ce message

conversion [ par helenesadus ] Bonjour,J'ai un problème que je n'arrive pas à résoudre.Je dois convertir une chaine de 10 caractère ASCII en décimale, par exemple pour 1FbqEcVoici l conversion mp3 [ par HCJarod ] Salut a tous, j'ai rechercher sur le site un source pour ripper un cd audio en mp3 mais sans succès. Si quelqu'un a quelquechose ça serai sympa. merci conversion int en char* [ par arwenita ] Encore un petit problème en C++...Dans mon programme, je voudrais afficher une liste de nombres (premiers), que je récupère de la fonction Crible(n).L Problème de conversion byte[] en int [ par Quemar ] Bonjour, j'ai un probleme de conversion j'utilise une liaison serie pour communiquer avec un instrument qui me renvoie des tableaux de bytes...  (enf conversion [ par algori ] Bonjour,Voila mon problème :J'ai un edit dans ma dialogbox et le problème est que je récupère une variable de type char cool[...]. Le truc est qu'il f Conversion de int en byte [ par cyrillecc ] Bonjour,Je suis actuellement en projet et je reprends un logiciel d'un professeur qui prends en charge des conversions d'images de RGB vers XYZpuis en Problème de conversion!!! [ par arfimounir ] Salut, j'ai bésoin de l'aide sur le problème suivant en VC++ 2005:Exemple: X = 100               Y = X / 3   sprintf(bfr, "%i",Y)   Y = 30   ou   brf Problème de conversion [ par thmatew ] Bonjour,Voici le probleme : j'utilise une fonction qui prend en paramètre un System::Object ^%, le type de la valeur retournée est un System::Int32[], conversion 0x00BBGGRR en RGB [ par gege1024 ] voila, je recupere une couleur garce à :  ChooseColor(&cc) comment convertir : cc.rgbResult   en 3 composantes  R,V,B  ????? (je veux obtenir les 3 va Concaténation et Conversion [ par beebopcmoi ] Bonjour a tous [^^happy13] enfin a ceux qui me liront :p Je suis un newbie dans le monde du C, et je galère un peu sur un problème qui je pense est t


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,374 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales