Реферат: Программа фильтрации шумов
ChangeCount := 0;
if Y - YOffset < 0 then
Break;
// Берем линию
CurrentLine := Image1.Picture.Bitmap.ScanLine[Y - YOffset];
PrevLine := Image1.Picture.Bitmap.ScanLine[Y - YOffset - 1];
if PrevLine[X] <> TargetPixel then
Break;
XOffset := 0;
// Заполняем влево ее пока не дойдем до границы объекта
if X - 1 >= 0 then
while CurrentLine^[X - XOffset - 1] = TargetPixel do
begin
CurrentLine^[X - XOffset] := 255;
Inc(XOffset);
Inc(ChangeCount);
if X - XOffset - 1 < 0 then
Break;
end;
XOffset := 0;
// Заполняем вправо ее пока не дойдем до границы объекта
if X + 1 < Image1.Picture.Bitmap.Width - 1 then
while CurrentLine^[X + XOffset + 1] = TargetPixel do
begin
CurrentLine^[X + XOffset] := 255;
Inc(XOffset);
Inc(ChangeCount);
if X + XOffset + 1 > Image1.Picture.Bitmap.Width - 1 then
Break;