Вниз
Скачать: CL | DM;

Считать попиксельно яркость градиента серого и записать в массив   Найти похожие ветки 

← →
FreeSky ©   (2003-09-18 12:25) [0]

Народ подскажите пожалуйста функцию, которая считывает яркость пикселя. Если есть пример буду благодарен.


← →
ZEE ©   (2003-09-18 13:07) [1]

Сначала считываешь цвет (rgb), а потом:
http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988625431&n=21


← →
pasha_676 ©   (2003-09-18 13:07) [2]

Как то непонятно что надо. Цвета считать из bmp в заданной точке? Ну и что там не понятного. TBitmap+F1.


← →
simmoril ©   (2003-09-18 16:46) [3]

Если нужна яркость пикселей то,собственно, вот:

function BLimit(A: Integer): Byte;
begin
if A < 0 then Result := 0
else if A > 255 then Result := 255
else Result := A;
end;

...

var
Bitmap: TBitmap;
Matrix: array of array of Byte;
x, y: Integer;
p: pByteArray;

begin
Bitmap := TBitmap.Create;
try
Bitmap.LoadFromFile("file.bmp");
Bitmap.PixelFormat := pf24Bit;
SetLength(Matrix, Bitmap.Height);
for y := 0 to Bitmap.Height - 1 do
begin
p := Bitmap.ScanLine[y];
SetLength(Matrix[y], Bitmap.Width);
for x := 0 to Bitmap.Width-1 do
Matrix[y,x]:=BLimit(Round((p[x*3]*0.11 + p[x*3+1]*0.59 +
p[x*3+2]*0.3)));
end;
finally
Bitmap.Free;
end;
end;

Все это работает правильно.
matrix - это и есть массив яркостей пикселей.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.018 c
1-63227
ikivio
2004-01-09 15:33
2004.01.20
StringGrid и Selected.


14-63321
Дед мороз
2003-12-31 08:35
2004.01.20
С новым годом!


14-63343
_none_
2003-12-30 12:40
2004.01.20
можете ли вы на новый год не пить?


1-63252
Maxkat
2004-01-08 19:53
2004.01.20
WinExec, проблема с ненужным копированием файлов


7-63426
Tik
2003-11-06 17:35
2004.01.20
Иконки в ХР




   Наверх