salut, j'ai un projet a réaliser comme tous les ans et la j'ai un pb avec ce minuscule algo ...![]()
je converti une image bmp qui ce trouve dans une Timage en niveau de gris :
ca n'a pas l'air mal du tout mais mon image est rouge ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 void TForm1::Imageniveauxdegris1(TImage *Image) { int i,j,r,g,b; float y; Image->AutoSize = true; TImage *Image2 = new TImage(0); Image2->Height = Image->Height; Image2->Width = Image->Width; for (j=1;j<Image->Height ;j++ ) { for (i=1;i<Image->Width ;i++ ) { g = GetGValue(Image->Canvas->Pixels[i][j]); b = GetBValue(Image->Canvas->Pixels[i][j]); r = GetRValue(Image->Canvas->Pixels[i][j]); y = 0.299*g + 0.587*r + 0.114*b; Image2->Canvas->Pixels[i][j] = y; } } Image2->Picture->SaveToFile(ListeFichiers->Strings[compt] + "Binar2.bmp"); }
meme avec un code de ce type :
mon pb ce trouve peu etre au niveau de l'affectation du niveau de gris ... il faut pi etre mettre cette valeure sur les 3 composante RGB ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part y = 0.299*g + 0.587*b + 0.114*r;![]()
merci !!!
Partager