I wrote a simple example in SCAR to show you how I would do it. It's slow and sloppy and has a bit of trouble singling out the second bitmap, but it will give you an idea of how to start.
program New;
const
WhichBMP = 1; //which bitmap to test: 1 or 2
var
P: TPointArray;
ATPA: T2DPointArray;
I, T, Time, C, BMP, w, h, x, y: Integer;
B: Array of Array of Boolean;
begin
case WhichBMP of
1: BMP := BitmapFromString(363, 223, 'beNrtnemNXDkMhDuTDsWhOBSH4' +
'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' +
'Rpl7CV0zIIJ63G2v4D5fzDcQ==');
2: BMP := BitmapFromString(365, 223, 'beNrtneuNHLkOhSeTCcWhOBSH4' +
'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');
end;
SetTargetBitmap(BMP);
GetBitmapSize(BMP, w, h);
DisplayDebugImgWindow(w, h);
SafeDrawBitmap(BMP, GetDebugCanvas, 0, 0);
Time:= GetSystemTime;
for T:= 1 to 7 do
begin
SetLength(B, 0);
FindColorsTolerance(P, clWhite, 0, 0, w, h, 0);
SetLength(B, w);
for I:= 0 to w - 1 do
SetLength(B[I], h);
for I:= 0 to High(P) do
B[P[I].x][P[I].y]:= True;
for I:= 0 to High(P) do
begin
C:= 0;
for x:= -4 to 4 do
for y:= -4 to 4 do
if(B[min(max(P[I].x + x, 0), w - 1)][min(max(P[I].y + y, 0), h - 1)])then
inc(C);
if(C < 5)then
begin
FastSetPixel(BMP, P[I].x, P[I].y, 0);
Swap(P[I], P[High(P)]);
SetLength(P, High(P));
end;
end;
// wait(2000);
SafeDrawBitmap(BMP, GetDebugCanvas, 0, 0);
end;
for x:= 0 to w - 1 do
for y:= h - 4 to h - 1 do
FastSetPixel(BMP, x, y, 0);
for T:= 1 to 2 do
begin
FindColorsTolerance(P, clWhite, 0, 0, w, h, 0);
SetLength(B, 0);
SetLength(B, w);
for I:= 0 to w - 1 do
SetLength(B[I], h);
for I:= 0 to High(P) do
B[P[I].x][P[I].y]:= True;
for I:= 0 to High(P) do
for x:= -5 to 5 do
for y:= -5 to 5 do
if(B[P[I].x + x][P[I].y + y])then
FastSetPixel(BMP, P[I].x + (x div 2), P[I].y + (y div 2), clWhite);
SafeDrawBitmap(BMP, GetDebugCanvas, 0, 0);
end;
FindColorsTolerance(P, clWhite, 0, 0, w, h, 0);
ATPA:= SplitTPAEx(P, 1, 1);
for I:= 0 to High(ATPA) do
if(Length(ATPA[I]) < 150)then
for x:= 0 to High(ATPA[I]) do
FastSetPixel(BMP, ATPA[I][X].x, ATPA[I][X].y, 0);
SafeDrawBitmap(BMP, GetDebugCanvas, 0, 0);
writeln(inttostr(GetSystemTime - Time));
ResetDC;
FreeBitmap(BMP);
end.