Estou tentando implementar um método de subtração de fundo simples para a detecção de objetos em movimento em uma cena específica. O objetivo é segmentar um movimento específico de um vídeo para usá-lo em outro vídeo. O algoritmo que estou seguindo é: 1. Pegue os primeiros 25 quadros do vídeo e mande-os para obter um modelo de fundo. 2. Encontre o desvio padrão desses 25frames e armazene os valores em outra imagem. 3. Agora eu estou calculando a diferença absoluta entre cada quadro e o modelo de fundo médio pixel sábio. A saída que estou recebendo é uma espécie de movimento transparente sendo destacado em branco (a diferenciação absoluta está resultando na transparência que eu penso). Quero saber se minha abordagem é correta ou não considerar que vou fazer uma segmentação sobre esse resultado como próximo passo E também não estou entendendo como usar a imagem de desvio padrão. Qualquer ajuda será apreciada. Por favor, deixe-me saber se este não é o tipo de pergunta que eu devo publicar no estouro de pilha. Nesse caso, qualquer referência ou links para outros sites serão úteis. Solicitado 26 de junho 13 em 9: 12Introdução Identificar objetos em movimento de uma seqüência de vídeo é uma tarefa fundamental e crítica em muitas aplicações de visão de computador. Uma abordagem comum é realizar a subtração de fundo, que identifica objetos em movimento a partir da parte de uma moldura de vídeo que difere significativamente de um modelo de fundo. Há muitos desafios no desenvolvimento de um bom algoritmo de subtração de fundo. Primeiro, deve ser robusto contra mudanças de iluminação. Em segundo lugar, deve evitar detectar objetos de fundo não estacionários, como mover folhas, chuva, neve e sombras, movendo objetos. Finalmente, seu modelo de fundo interno deve reagir rapidamente às mudanças de fundo, como o início e a parada de veículos. Nossa pesquisa começou com uma comparação de vários algoritmos de subtração de fundo para detectar veículos em movimento e pedestres em sequências de vídeo de tráfego urbano (Cheung e Kamath, 2004). Consideramos abordagens que variam de técnicas simples, como a diferenciação de quadros e a filtragem mediana adaptativa, a técnicas de modelagem probabilística mais sofisticadas. Embora técnicas complicadas muitas vezes produzam desempenho superior, nossas experiências mostram que técnicas simples, como filtragem mediana adaptativa, podem produzir bons resultados com uma complexidade computacional muito menor. Além disso, descobrimos que o pré e posterior processamento do vídeo pode ser necessário para melhorar a detecção de objetos em movimento. Por exemplo, por meio de suavização espacial e temporal, podemos remover a neve de um vídeo como mostrado na Figura 1. Pequenos objetos em movimento, como mover folhas em uma árvore, podem ser removidos por processamento morfológico dos quadros após a identificação dos objetos em movimento , Como mostrado na Figura 2. Figura 1. Quadro de vídeo à esquerda mostrando uma cena de tráfego enquanto neva. Observe as marcas na imagem devido aos flocos de neve. O mesmo quadro de vídeo após o alisamento espacial e temporal está à direita, sem as marcas de neve. Figura 2. A moldura de vídeo na esquerda destaca, em rosa, os objetos detectados como em movimento. Observe o movimento das folhas nas árvores em primeiro plano. O processamento morfológico limpa o quadro de vídeo como mostrado à direita. A taxa e o peso das atualizações do modelo influenciam significativamente os resultados do primeiro plano. Os modelos de fundo de adaptação lenta não podem superar rapidamente grandes mudanças no fundo da imagem (como uma nuvem que passa sobre uma cena). Isso resulta em um período de tempo em que muitos pixels de fundo são incorretamente classificados como pixels de primeiro plano. Uma taxa de atualização lenta também tende a criar uma máscara fantasma que trilha o objeto real. Os modelos de fundo de adaptação rápida podem lidar rapidamente com as mudanças em segundo plano, mas falham em baixas taxas de quadros. Eles também são muito suscetíveis ao ruído e ao problema de abertura. Essas observações indicam que uma abordagem híbrida pode ajudar a mitigar as desvantagens de cada um. Criamos uma nova técnica de validação de primeiro plano que pode ser aplicada a qualquer algoritmo de subtração de fundo de adaptação lenta (Cheung e Kamath 2005). Os métodos de adaptação lenta produzem máscaras relativamente estáveis e tendem a ser mais inclusivos do que os métodos de adaptação rápida. Como resultado, eles também podem ter alta taxa de falsos positivos. A validação do primeiro plano examina os pixels de primeiro plano individuais na tentativa de eliminar falsos positivos. Nosso algoritmo primeiro obtém uma máscara de primeiro plano de um algoritmo de adaptação lenta e, em seguida, valida pixels de primeiro plano por um modelo de objeto móvel simples, construído usando estatísticas de primeiro plano e de fundo, bem como um algoritmo de adaptação rápida (Figura 3). Figura 3. As misturas da abordagem gaussiana (a) não são muito robustas em mudanças de iluminação em comparação com o método proposto (b). Experimentos de verdade terrestre com sequências de tráfego urbano mostraram que nosso algoritmo proposto produz desempenho comparável ou melhor do que outras técnicas de subtração de fundo (Figura 4). Figura 4: Comparação de diferentes algoritmos. (A) Imagem original mostrando um carro que começa a se mover depois de estar parado por algum tempo. Primeiro plano detectado por (b) diferenciação de quadros, (c) mediana aproximada, (d) mediana, (e) filtro de Kalman, (f) misturas de gaussianos, e (g) nosso novo método com validação de primeiro plano. Agradecimentos Os vídeos usados no nosso trabalho são do site mantido pela KOGS-IAKS Universitaet Karlsruhe. Agradecemos a sua vontade de divulgar seus dados publicamente. Referências Cheung, S.-C. E C. Kamath, Súbita de fundo robusto com Validação de primeiro plano para vídeo de tráfego urbano, EURASIP Journal on Applied Signal Processing, Volume 14, pp 1-11, 2005. UCRL-JRNL-201916. Cheung, S.-C. E C. Kamath, técnicas robustas para subtração de fundo em vídeo de tráfego urbano, comunicação de vídeo e processamento de imagens, SPIE Electronic Imaging, San Jose, janeiro de 2004, UCRL-JC-153846-ABS, UCRL-CONF-200706 PDF. Uma biblioteca de subtração de fundo Última atualização da página: 18102017 Versão mais recente da biblioteca: 1.9.2 (veja as Notas de versão para mais informações) A BGSLibrary foi desenvolvida por Andrews Sobral e fornece uma estrutura C fácil de usar baseada em OpenCV para executar subtração de fundo (BGS) em vídeos. A BGSLibrary compila em Linux, Mac OS X e Windows. Atualmente, a biblioteca oferece 37 algoritmos BGS. Uma grande quantidade de algoritmos foram fornecidos por vários autores. O código-fonte está disponível na licença GNU GPL v3, a biblioteca é gratuita e de código aberto para fins acadêmicos. Para usuários do Windows, é fornecido um projeto de demonstração para o Visual Studio 20102017. Uma versão executável da BGSLibrary está disponível para Windows 32 bits e 64 bits. Para usuários de Linux e Mac, um Makefile pode ser usado para compilar todos os arquivos. Nota: a BGSLibrary é baseada no OpenCV 2.X, se você quiser usar o OpenCV 3.x, confira nosso ramo opencv3. O algoritmo PBAS foi removido da BGSLibrary porque é baseado no algoritmo patenteado ViBE. Alguns algoritmos da bgslibrary são gratuitos para fins comerciais e outros não. Primeiro, você precisa entrar em contato com os autores do seu método de subtração de fundo desejado e verificar com eles a licença apropriada. Para obter mais informações adicionais, consulte: Posso usar um software GPLv3 como parte da minha aplicação comercial. Se você usa esta biblioteca para suas publicações, cite-a como: Sobral, Andrews. BGSLibrary: uma biblioteca de subtração de fundo OpenCV C. IX Workshop de Viso Computacional (WVC2017), Rio de Janeiro, Brasil, junho de 2017. (PDF em português brasileiro com resumo em inglês). Sobral, Andrews Bouwmans, Thierry. Biblioteca BGS: uma estrutura de biblioteca para avaliação de algoritmos em segmentação de primeiro plano. Capítulo sobre o manual de modelagem de fundo e detecção de primeiro plano para vigilância de vídeo, CRC Press, Taylor e Francis Group, 2017. (PDF em inglês). Alguns algoritmos da BGSLibrary foram utilizados com sucesso em meus seguintes trabalhos: (2017) Sobral, Andrews Vacavant, Antoine. Uma revisão abrangente de algoritmos de subtração de fundo avaliados com vídeos sintéticos e reais. Visão de visão e imagem de computador (CVIU), 2017. (Online) (PDF) (2017) Sobral, Andrews Oliveira, Luciano Schnitman, Leizer Souza, Felippe. (Melhor Prêmio de Papel) Classificação de Congestionamento de Tráfego Rodoviário Usando Propriedades Holísticas. Na Conferência Internacional sobre Processamento de Sinais, Reconhecimento de Padrões e Aplicações (SPPRA2017), Innsbruck, Áustria, fev de 2017. (Online) (PDF) Lista dos algoritmos disponíveis no nome do Algoritmo BGSLibrary (clique para ver o código fonte) Como usar a Biblioteca BGS Em outro código C Baixe o último código fonte do projeto, copie o diretório packagebgs para o seu projeto e crie a pasta config (bgslibrary use-o para armazenar arquivos de configuração xml). Para usuários do Windows, é fornecido um projeto de demonstração para o Visual Studio 2010. Como contribuir com o projeto BGSLibrary Todos são convidados a cooperar com o projeto BGSLibrary enviando qualquer implementação de algoritmos de subtração de fundo (BS). Veja o seguinte tutorial: githubandrewssobralbgslibraryblobmasterdocsbgslibraryhowtocontribute. pdf Lista completa de colaboradores da BGSLibrary Gostaria de agradecer a todos aqueles que contribuíram de alguma forma para o sucesso desta biblioteca, especialmente os seguintes povos (em ordem alfabética): Ahmed Elgammal (EUA) Antoine Vacavant (França), Benjamin Laugraud (Bélgica), Csaba Kertsz (Finlândia), Domenico Bloisi (Itália), Donovan Parks (Canadá), Eduardo Barreto Alexandre (Brasil), Fida EL BAF (França), Iigo Martinez, Jean - Marc Odobez (Suíça), Jean-Philippe Jodoin (Canadá), JIA Pei (China), Jian Yao (China), Hemang Shah, Holger Friedrich, Laurence Bender (Argentina), Lionel Robinault (França), Luca Iocchi (Itália), Luiz Vitor Martinez Cardoso (Brasil), Martin Hofmann, Philipp Tiefenbacher e Gerhard Rigoll (Alemanha), Rim Trabelsi (Tunísia), Simone Gasparini (França), Stefano Tommesani (Itália), Thierry Bouwmans (França), Vikas Reddy (Austrália), Yani Ioannou (Canadá), Zhenjie Zh Ao (China) e Zoran Zivkovic (Países Baixos). Versão 1.9.2: Adicionado algoritmos SuBSENSE e LOBSTER de Pierre-Luc et al. (2017). Versão 1.9.1: algoritmo de subtração de fundo Sigma-Delta adicionado (SigmaDeltaBGS) de Manzanera e Richefeu (2004). Versão 1.9.0: Adicionado um novo quadro para a subtração de fundo usando múltiplas caixas (SJNMultiCueBGS) de SeungJong Noh e Moongu Jeon (2017). Adicionado suporte OpenCV 2.4.8 (todas as dependências são vinculadas estaticamente). Versão 1.8.0: Subtração de fundo multimodal independente independente (IMBS) de Domenico Daniele Bloisi (2017). Aprendizado do Modelo de Fundo Adaptive-Selective Adicionado. Versão 1.7.0: Detecção de primeiro plano baseada em textura com MRF de Csaba Kertsz (2017). Algumas melhorias e correções de bugs. Versão 1.6.0: Adicionado KDE de A. Elgammal, D. Harwood, L. S. Davis, modelo não paramétrico para a subtração de fundo ECCV00 (graças a Elgammal). Subtração de fundo com base em textura de Marko Heikkila e Matti Pietikainen Um método baseado em textura para modelar o fundo e detectar objetos em movimento PAMI06. Adicionado suporte OpenCV 2.4.5, algumas melhorias e correções de bugs. Versão 1.5.0: Adicionado VuMeter de Yann Goyat, Thierry Chateau, Laurent Malaterre e Laurent Trassoudaine (graças a Antoine Vacavant). Adicionado o aplicativo MFC OpenCV C (com código-fonte) usando a Biblioteca BGS para usuários do Windows. Adicionado o suporte OpenCV 2.4.4 (todas as dependências estão ligadas DLLs estáticamente), algumas melhorias e correções de bugs. Versão 1.4.0: PBAS adicionado (Segmentador adaptativo baseado em Pixel) de M. Hofmann, P. Tiefenbacher e G. Rigoll. Adicionado T2F-GMM com MRF de Zhenjie Zhao, Thierry Bouwmans, Xubo Zhang e Yongchun Fang. (Graças a Zhenjie Zhao e Thierry Bouwmans) Adicionado GMG de A. Godbehere, A. Matsukawa, K. Goldberg (opencv nativo). Adicionado o suporte OpenCV 2.4.3 (todas as dependências estão ligadas DLLs estáticamente), algumas melhorias e correções de bugs. Versão 1.3.0: Adicionado Fuzzy Sugeno e Choquet Integral com atualização de modelo de fundo adaptável (graças a Thierry Bouwmans) Atualização da análise de máscara de primeiro plano, agora com número de Positivos Verdadeiros (TP), Negativos Verdadeiros (TN), Positivos falsos (FP) Falso Negativo (FN), Taxa de Detecção, Precisão, Medida, Precisão, Taxa Falso Negativa (FNR), Taxa Falsa Positiva (FPR), Taxa Verdadeira Positiva (TPR) e imagens ROC (graças a Thierry Bouwmans) Adicionado suporte OpenCV 2.4 Alguns Melhorias, correções de bugs. Versão 1.2.0: Adicionado BGS de várias camadas (graças a Jian Yao e Jean-Marc Odobez) Adicionado Modelos de Subtração de Fundo de Laurence Bender (Gaussiano Simples, Gaussiano Fuzzy, Mistura de Gaussianos, SOM Adaptativo e SOM Adaptativo Fuzzy) Análise de máscara de primeiro plano adicionada (Medida de similaridade) Versão 1.1.0: Adicionado Type2-Fuzzy GMM UM e UV (graças a Thierry Bouwmans) Adicionado suporte para calcular o tempo médio de algoritmos (veja o parâmetro tictoc em. configFrameProcessor. xml) Versão 1.0.0: Primeira versão estável Adicionado 14 algoritmos de subtração de fundo (07 adaptados de Donovan Parks)
No comments:
Post a Comment