Witam ,
Od kilku dni mam problem , nigdzie nie potrafię znalezc odpowiedzi.
Robie programik który za pomącą dspacka zczytuje obraz z kamery , wyszukuje pixela o danym kolorze i jesli znadzie to cos robi. Mam zamiar zrobic strzelnice z laserem i projektorem.
Ale program bardzo często wywala mi się w jednym miejscu.
Podaje kod , mam nadzieje ze coś wymyślicie , ponieważ ja jestem początkujacy.
var
x,y : integer;
color :TColor;
P : PByteArray;
r,g,c : byte;
begin
color:=image1.Picture.Bitmap.Canvas.Pixels[20,20]; <--- pobiera mi kolor ktorego ma wyszukac
r:=getRvalue(color);
g:=getGvalue(color);
c:=getBvalue(color);
for y:=0 to image.Picture.height-1 do
begin
P:=image.Picture.Bitmap.ScanLine[y];
for x:=0 to image.Width-1 do
if (g = P[X3+1])
and (R = P[X3+2]) or (R-1 = P[X3+2])
and (c = P[X3])
then
imagejpeg.Canvas.Ellipse(x,y,x+5,y+5);
Po chwili zawsze mi się zawiesza , nawet jak zapisze ze
image.Picture.Bitmap.PixelFormat:=pf24bit; nic sie nie zmienia.