Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ricardosb2000

Detectar Movimento em uma camera

Recommended Posts

Método lento:

 

Basta comparar a imagem no momento X com a imagem no momento X - 1.

 

for X := 0 to Img1.Width - 1 do  for Y := 0 to Img1.Height - 1 do  begin    if Img1.Canvas.Pixels[X, Y] <> Img2.Canvas.Pixels[X, Y] then    begin      // as imagens são diferentes    end;  end;

Dá pra otimizar, usando scanline e CompareMem. Uma coisa a se observar é que esta técnica captaria até uma borboletinha sobrevoando, dependendo da distância e precisão da câmera. Entretanto seria simples de bolar uma heurística pra evitar estas situações, se indesejáveis, como número de pixels em desacordo, seja contíguos ou espalhados, por exemplo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.