detecção e análise de movimento em vídeosalekoe/papers/seminario2... · seminário tvglobo...
TRANSCRIPT
Detecção e Análise de Movimento em Vídeos
Alceu de Souza Britto Jr.Alessandro L. Koerich
InviSys Sistemas de Visão Computacional LtdaPrograma de Pós-Graduação em Informática (PPGIa–PUCPR)
Seminário TVGlobo EngenhariaSão Paulo, SP
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Agenda
• Introdução• Detecção de movimento
– Fluxo ótico– Segmentação Background / Foreground
• Rastreamento de elementos (Tracking)• Classificação de eventos
– Convencionais/Não-convencionais
• Múltiplas câmeras• Próximos desafios
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
- Objetivos- Controle, monitoramento e/ou segurança de ambientes.
- Aplicações- Câmeras de segurança- Monitoramento de tráfego- Contagem de pessoas- Vídeo conferência- Piloto automático- Dentre outras, …
Detecção e Análise de Movimentos: Introdução
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Detecção e Análise de Movimentos: Introdução
• Tarefas envolvidas:
– Baixo nível (segmentação e rastreamento)• Detecção de elementos em movimento: pessoas, veículos, outros
objetos.
• Identificação de cada elemento detectado: efetuando alguma rotulação.
- Rastreamento de cada elemento: definindo-se a trajetória e/ou predição da trajetória.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Tarefas envolvidas:
– Alto nível (análise do comportamento, interpretação)
- Caracterização do movimento: mensurando-se variáveis como direção, velocidade, consistência temporal, …
- Classificação do movimento como convencional ou não-convencional.
- Fusão e interpretação dos resultados de várias câmeras
Detecção e Análise de Movimentos: Introdução
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Desafios– Câmeras fixas
• Problemas comuns: – Variação da Iluminação– Sombras – Imagem tremida– oclusão
– Câmeras móveis• Problema adicional:
– necessidade de compensação de movimento da câmera para construir background.
Detecção e Análise de Movimentos: Introdução
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Detecção de Movimento
• Abordagens:
– Fluxo óptico• Cálculo do movimento para uma região ou todo o frame.
– Rastreamento de objetos• Segmentação background (fundo) / foreground (movimento)• Rastreamento e análise dos elementos detectados em uma
seqüência de frames.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Detecção de Movimento: Fluxo Óptico
• Cálculo do movimento aparente do brilho da imagem considerando uma região ou todo um frame.
• Princípio:
– Se I(x,y,t) é o brilho, considera-se que:
• I(x,y,t) depende das coordenadas x,y da imagem.
• O brilho de cada pixel de um elemento em movimento não muda ao longo do tempo.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Se o objeto está se movendo no tempo dt e seu deslocamento é(dx,dy), então usando a série de Taylor:
...),,(),,( +∂∂
+∂∂
+∂∂
+=+++ dttIdy
yIdx
xItyxIdttdyydxxI
• De acordo com a 2a. consideração:
0...
),,(),,(
=+∂∂
+∂∂
+∂∂
=+++
dttIdy
yIdx
xI
tyxIdttdyydxxI
• Dividindo por dt tem-se a equação do fluxo óptico:
dtdyv
dtdxu
tIv
yIu
xI
==∂∂
=∂∂
+∂∂ ,
Detecção de Movimento: Fluxo Óptico
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
- Utiliza vetores de fluxo de objetos em movimento no tempo
- Complexidade computacional alta – possível para processamento em tempo real apenas com hardware especializado.
- Sensível a ruído.
Detecção de Movimento: Fluxo Óptico
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Detecção de Movimento: Localizando Elementos em Movimento
• Segmentação de uma cena em fundo (background) e elementos em movimento (foreground).
• Abordagens– Baseada em modelo explícito
• utiliza um modelo detalhado e fixo de cada elemento na cena.
– Baseada em modelo implícito (mais flexível)• utiliza modelos genéricos e criados dinamicamente.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Subtração simples utilizando background fixo, a qual consiste em:
– Selecionar um único frame que não contenha objetos de interesse (em movimento) para representar o (fundo) background
– Subtrair o frame selecionado como fundo de um frame contendo objetos de interesse. Os pixels resultantes cujos valores sejam diferentes de zero são considerados como foreground.
– Problemas: Sensível a variação de iluminação da cena, ou pequenas variação relacionadas ao processo de aquisição (balanço e/ou tremor da câmera - jitter).
Detecção de elementos em movimentoComo segmentar background/foreground?
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Exemplo subtração simples do fundo
Detecção de elementos em movimentoComo segmentar background/foreground?
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Exemplo subtração simples– Background fixo– Altamente dependente de um bom modelo do fundo
Detecção de elementos em movimentoComo segmentar background/foreground?
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Diferença temporal– Consiste em calcular a diferença entre frame corrente e o n-ésimo
frame anterior.– Fornece contorno do objeto em movimento.– Quanto maior o “n” mais espesso será o contorno.
Detecção de elementos em movimentoComo segmentar background/foreground?
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Diferença Temporal- Indicado para ambientes dinâmicos- Elementos apresentam buracos no interior.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Detecção de elementos em movimentoComo segmentar background/foreground?
Fundo fixo
Diferença de frames – 5o. anterior
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Abordagens Estatísticas– Baumberg and Hogg modelam o background utilizando um filtro
da mediana para cada pixel. Um limiar sob a diferença absoluta entre frames é utilizado para identificar o foreground.
– Haritaoglu et al. modelam a intensidade dos pixels do backgroundusando valores de mínimo e máximo e a diferença máxima entre frames. Se a intensidade de um pixel está fora do modelo éclassificado como foreground.
– Ridder et al. usam filtro de Kalman em cada pixel para modelar a intensidade e assim predizer o background, contudo os autores ainda utilizam um limiar sob a diferença absoluta entre framespara identificar o foreground.
– Stauffer and Grimson modelam a história de cada pixel (cor em espaço RGB) por uma mistura de Gaussianas.
Detecção de elementos em movimentoComo segmentar background/foreground?
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Abordagem Stauffer and Grimson– Robusto à variações de iluminação.
– Absorve movimentos repetitivos na cena (exemplo: movimento de folhas das árvores).
– Bom desempenho para rastreamento em regiões complexas ou rastreamento de objetos lentos;
– Boa opção quando há entrada e saída de elementos na cena (atualização dinâmica do background).
Detecção de elementos em movimentoComo segmentar background/foreground?
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Detecção de elmentos em movimentoComo segmentar background/foreground?
Stauffer and Grimson: Mistura de Gaussinas ??
• Múltiplas Gaussianas são necessárias para compensar as diferentes interações entre os pixels do background e fatores da cena, tais como:– Iluminação– Sombras– interações entre objetos
• Atualização das gaussianas acontece a cada frame.
• Cada frame contribui para as características do background, sendo que este tem variância menor que elementos em movimento.
∑=
Σ=K
ititi
ttit XNXP
1,,1, ),,()( μω
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Foreground?– O que não for background será considerado foreground.
• Para cada pixel, distribuições que possuem variânciamenor são usualmente parte do background.
Se um objeto torna-se estático por um longoperíodo de tempo, este será eventualmente
agregado ao background (o tempo denpende das características do objeto)
Detecção de elementos em movimentoStauffer and Grimson: Mistura de Gaussinas
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Um número pré-definido de Gaussianas é utilizado (entre 3 e 5);
• Cada valor de pixel deve ser avaliado segundo todas as Gaussianas;
• Cada Gaussiana tem um peso que indica quão bem esta representa a história do pixel;
• Se um pixel corresponde a uma Guassiana então seu peso éincrementado e a Gaussiana atualizada;
• Se o peso cair abaixo de um limiar então a Gaussiana é eliminada.
• Se não acontece uma correspondência então uma nova Gaussiana écriada com um peso baixo.
Detecção de elementos em movimentoStauffer and Grimson: Peso e quantidade de Gaussinas
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• RGB é sensível a sombras;
• O uso de um espaço de cores que separa intensidade da informação matiz (croma) é importante para tratar sombra e variações de iluminação.
• HSV ou YUV são utilizados com freqüência.
Detecção de elementos em movimentoStauffer and Grimson: Escolha do Espaço de Cor
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Segmentação utilizando Stauffer & Grimson
- Região central dos elementos fragmentada – movimento lento- Usando mistura de gaussianas- Exemplo A- Exemplo B
Detecção de elementos em movimentoStauffer and Grimson: Exemplo
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Detecção de elementos em movimentobackground/foreground - (Mckenna et al.)
- Modelo para pixels baseado em informações do gradiente (Sobel) calculado com base em informações de cromaticidade.
- Resultados para diferentes limiares calculados com base em desvio padrão (1, 2, 3, 5, e 10)
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Detecção de elementos em movimentobackground/foreground - (Mckenna et al.)
1) Subtração do fundo baseado em cor2) Subtração baseada em gradiente (Sobel)3) Combinação das anteriores4) Depois de filtro da mediana5) Segmentação6) Agrupamento e bounding boxes
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Abordagem não paramétrica – utiliza uma função “kernel” para estimar a probabilidade de um pixelter uma determinada intensidade no tempo t.– Resultados:
• Dia chuvoso• Floresta• Lente especial
Detecção de elementos em movimentobackground/foreground - (Elgammal et al.)
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Kim et al.– Modela background criando um codebook para cada
pixel– Diferente número de codewords.– Características: cor e brilho– Exemplo:
Detecção de elementos em movimentobackground/foreground - (Elgammal et al.)
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Pixels considerados foreground devem ser agrupados para formar objetos.
• Filtragem e algoritmo de detecção de componentes conexos normalmente são utilizados.
• O resultado é uma lista de objetos com tamanho e posição conhecidos.
• Rastreamento (Tracking): Acompanhar elementos emmovimento no campo de visão da camera.
Detecção de elementos em movimentoComo tratar o foreground ?
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Baseado em regiões– Background mantido dinamicamente e objetos em movimento
detectados subtraindo background da imagem corrente.
• Baseado em contorno ativo– Mais simples e mais eficiente– Reduz complexidade computacional– Precisão limitada a nível de contorno
Rastreamento de Elementos(Tracking - abordagens)
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Baseado em características– Globais: centróides, perímetros, áreas, cores, ...– Locais: segmentos de linhas e curvas, vértices.– Grafos: distâncias e relações entre características.
• Baseado em modelos– Utiliza modelos criados com conhecimento a priori do ambiente.
• Modelos baseados no corpo humano.• Modelos de movimento.• Modelos baseados em veículos.
Rastreamento de Elementos(Tracking - abordagens)
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Rastreamento de Elementos (Tracking)
• Problemas:– Oclusão;– Referenciar o mesmo objeto durante a trajetória;
• Possíveis Soluções:– Predição do movimento;
• Função de Custo para identificar o elemento• Filtro de Kalmann
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Função de Custo
– dP é a distância dos centros de massa;– dS é a diferença de tamanho;– dD é a diferença de direção;– dT é a diferença da persistência (Time To Live);– wP, wS, wD são os respectivos pesos;
– Cada objeto do quadro anterior deve ser assimilado a região de movimento no quadro atual que lhe fornecer o menor custo;
Rastreamento de Elementos(Tracking – Função Custo)
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Predição do Movimento:
– Ois é a velocidade de deslocamento;
– S é um decremento de velocidade;– Rj é a região de movimento mais próxima ao objeto;– Oc é o ultimo centro conhecido pelo objeto
• A nova posição será dada por:– Oc = Oc + Os
Rastreamento de Elementos(Tracking – Função Custo)
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Rudolph E. Kalman (1960) – solução recursiva para a filtragem linear de dados discretos.
• Equações matemáticas implementam um preditor/corretorque minimiza o erro estimado para a covariância.
• Aplicado para tracking (Greg Welch, Gary Bishop) (www.cs.unc.edu/~welch/kalman)
Rastreamento de ElementosTracking: Filtro de Kalman
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Filtro de Kalman estima o estado do sistema em um dado tempo e então o realimenta com base na mensuração do ruído.
• Filtro de Kalman:
– (1) Equações p/Atualização no Tempo• Responsável por projetar no tempo o estado corrente e a estimativa
de erro para obter uma estimativa a priori para o próximo passo.
– (2) Equações p/Atualização de Medidas• Realimentação de medidas – incorpora novas medidas na estimativa
a priori para obter uma estimativa melhorada (a posteriori).
Rastreamento de ElementosTracking: Filtro de Kalman
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Preditor
Predição: projeta o estado estimado no tempo.
Corretor
Atualização: ajusta a estimativa com medidas
realizadas no tempo projetado.
• Ciclo do filtro– Estado = centro de massa do elemento em movto.
Rastreamento de ElementosTracking: Filtro de Kalman
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Com modelo explícito para cada tipo de movimento (Ramanan & Forsyth)
Classificação de eventos: Abordagens
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Com modelo explícito para cada tipo de movimento (Ramanan & Forsyth)– Exemplos:
• Vídeo 1• Video 2
Classificação de eventos: Abordagens
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Abordagem sem modelo específico para movto– Exemplo (Hochulli at el.)
• Extração de características• Seleção de características• Implementação de classificador (KNN)• Classificação de elementos em movimento como: eventos
convencionais e não convencionais.
Classificação de eventos: Abordagens
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Classificação de eventos: AbordagemHochulli at al.
• Extração de características que descrevem: elemento e/oumovimento;
• Exemplos de características para descrição do elemento:– Globais:
• Área, Perímetro, Cor;
– Locais:• Curvas, Contornos, traços;
– Gráficas:• Distâncias, Geometria;
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Exemplo de características que descrevem o movimento:
• Dado um instante “t” da trajetória, extrai-se informações sobre:– Velocidade;– Posição– Deslocamento;– Variação da Direção e Consistência temporal.
Classificação de eventos: Abordagem Hochulli at al.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Classificação de eventos: Abordagem Hochulli at al.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Dividida em duas etapas:
– Treinamento: É a fase onde o sistema aprende o que é um movimentoconvencional ou não-convencional. É necessario a intervenção do usuário;
– Classificação: Com base no que foi “ensinado” na fase de treinamento, o sistema classifica novos movimentos automaticamente, sem a intervenção do usuário;
Classificação de eventos: Abordagem Hochulli at al.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Uma janela temporal determina o tempo de classificação do movimento;
• Durante este tempo é formado o Conjunto de Vetores de características que descrevem o movimento;
• Para cada vetor do conjunto é computado uma distânciaEuclidiana com os demais vetores da base (KNN);
Classificação de eventos: Abordagem Hochulli at al.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Uma vez rotulado os vetores do conjunto, é feita uma votaçãoentre os vetores do conjunto para classificar o movimentocomo convencional ou não-convencional;
• Vantagens:– Metódo Simples e Direto;
• Desvantagens:– Pode se tornar computacionalmente caro;
Classificação de eventos: Abordagem Hochulli at al.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Continuidade– HMM– SVM– SVM ONE-CLASS– Máquinas de estado.
Classificação de eventos: Abordagem Hochulli at al.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Ambiente 1– 3 Tipos de eventos analisados:
• Andando;• Correndo;• ZigZag
– Taxa de Acerto: 77.20%;
– Características mais representativas: • Velocidade;• Direção;
Classificação de eventos: Abordagem Hochulli at al.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Ambiente 2– 2 Tipos de eventos analisados
• Andando;• Briga Simulada;
– Taxa de Acerto: 82.05%
– Características mais representativas:• Posição;• Deslocamento;• Variação do Tamanho;
Classificação de eventos: Abordagem Hochulli at al.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Múltiplas Câmeras: Principais características
• Instalação– Desempenho e custo– Como cobrir uma região toda com o menor número de câmeras?– Possibilidades: sobreposição dos campos de visão e câmeras
espalhadas arbitrariamente.– (Pavlidis, et al):
• Instala 1a. Câmera;• Instala 2a. Câmera com 25%-50% sobreposição com o campo de
visão da 1a.• Cada nova câmera de ser instalada com 25%-50% de sobreposição
com o campo de visão combinado das demais câmeras.
• Correspondência de Objetos– Métodos baseados em geometria: características geométricas
são projetadas em um mesmo espaço.– Métodos baseados em reconhecimento: histograma de cores.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Múltiplas Câmeras
• Chaveamento entre câmeras– Cai et al. determinam um índice de confidência para o
rastreamento. Quando o índice está abaixo de um limiar o sistema procura pela câmera com mais alta confidência e a torna ativa.
• Fusão de dados– Importante para tratamento de oclusão ou mesmo
continuidade do rastreamento– Depende do esquema de instalação das câmeras.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Sistema com campos de visão sobrepostos– Boyd et al.
• Campos de visão de múltiplas câmeras são transformados em um único campo de visão;
– Grimson et al. • Conjunto de câmaras espalhadas arbitrariamente em um ambiente• Determina automaticamente como mapear os campos de visão locais
em um campo de visão coerente • Classifica as atividades monitoradas.
– Huang & Russell• Tenta encontrar o mesmo veículo nos diferentes campos de visão
para efetuar contagem e monitorar o tempo.• Utiliza aparência e considera a posição das câmeras ao longo do
caminho simples a ser monitorado;• Considera objetos com movimento determinístico, exceto objetos que
entram e deixam o ambiente.
Múltiplas Câmeras
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Múltiplas Câmeras
• Câmeras em posições arbitrárias– Kettnaker & Zabih
• Sistemas múltiplas câmeras – não considera sobreposição nem caminho simples (determinístico);
• Câmeras em sistema de corredores – objetos com caminhos arbitrários
• Pedestres podem escolher o caminho (não determinístico);• Sistema é capaz de reconstruir o caminho de todos os
objetos.• Possível aplicação: planejamento de tráfego.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Caminho não determinístico e não sobreposição de campos de visão (Kettnaker & Zabih)
Múltiplas Câmeras
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Esquema proposto em (Xu et al.)
Múltiplas Câmeras
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Detecção e rastreamento de jogadores– Filtro de Kalmann (a partir do campo de visão de uma
câmera)
Múltiplas Câmeras
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
• Rastreamento de cada jogador é atualizado com base em medidas das várias câmeras.
• A atualização é realizada com base nas medidas dos K-vizinhos mais próximos.
Múltiplas Câmeras
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Múltiplas Câmeras
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Futuro ???
• Combinação de monitoramento de vídeo e identificação de pessoas (Biometria).
• Classificação de comportamentos• Detecção de anormalias e predição de
comportamento.
Estratégias de Processamento de Vídeo para Detecção e Tracking de Objetos em Movimento Abril/2007
Contato
Alessandro L. [email protected]
[email protected]://lattes.cnpq.br/0691832345393815
Alceu de Souza Britto [email protected]@ppgia.pucpr.br
http://lattes.cnpq.br/4251936710939364
www.invisys.com.brwww.ppgia.pucpr.br