Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.20;
Скачать: 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 вся ветка

Текущий архив: 2004.01.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.031 c
3-63005
Alex-kosmonavt
2003-12-23 11:21
2004.01.20
Insert


1-63149
Tahion2
2004-01-01 17:18
2004.01.20
Как задать путь по умолчанию для диалога выбора папки?


14-63300
Diablo
2003-12-26 23:07
2004.01.20
Как узнать размер файла?


14-63405
Undert
2003-12-27 19:38
2004.01.20
Как впихать wav или лучше MP3 в ресурсы Delphi и застваить чем-ни


8-63261
hedgehoge
2003-09-09 15:47
2004.01.20
Распознавание