Merci pour tes explication, cela m'eclaire bcp :D plus. Je vais essayer de faire comme cela dans un premier temps. Je te tiendrai au courant...
Version imprimable
Merci pour tes explication, cela m'eclaire bcp :D plus. Je vais essayer de faire comme cela dans un premier temps. Je te tiendrai au courant...
Pas avant lundi je pourrai te dire si cela marche :)
ok pas de problème :wink:
Comme prévu je te répond, mais avec un peu de retard (dsl) :?
Hier j'ai testé l'algo, et il marche, cepandant j'ai changé la deuxieme partie, j'ai mis une autre formule:
if ((R>(3*g/2)&&R>(3*b/2)))
{
R=G=B=(R*31+G*61+B*8)/100;
}
L'autre formule me donnai un affet assez bizzard 8O
Sinon avec celle-ci les yeux disparaissent sans choquer.
Il me reste plus qu'a faire l'outil Selection, pour que l'utilisateur puiss juste selectionner la pupille de l'oeil, sinon l'effet s'applique sur tous les rouges de l'image.
Voilà :D
Je te remercie encore pour ton aide, elle à étée fructueuse :wink:
Tu pourrais préciser ta formule ? (g,b...) car ça m'intéresse...
A+
Ya pas de probleme je te la passerai mais pas tout de suite je ne l'ai pas sous la main, mais promis tu l'auras soit cette aprem ou en debut de semaine prochaine.
Je ne peut pas faire autrement :oops:
Mais t'inquiéte je te la passerai :D
Voilà comme prévu voici ca que donne mon algo :D
Bon préalablement il fodrai faire une selection des yeux, sinon l'eefet s'applique à tous les rouges de l'image...
for(int l=0;l<Info.bmiHeader.biWidth;l++)for(int h=0;h<Info.bmiHeader.biHeight;h
{
i=h*LineWidth+l*3;
r=Bits[i+2];
g=Bits[i+1];
b=Bits[i];
if ((r > (3 * g / 2) && r > (3 * b / 2)))
{
r=g=b= (r * 31 + g * 61 + b * 8) / 100;
Bits[i+2]=r;
Bits[i+1]=g;
Bits[i]=b;
}
}
SetDIBits(DstDC,DstBmp,0,Info.bmiHeader.biHeight,Bits,&Info,DIB_RGB_COLORS);
free(Bits);
return retVal;