1 / 22

Animando Humanos Virtuais em Tempo-Real usando Visão Computacional e Redes Neurais

UNISINOS - PUC/RS RBV - Rede Brasileira de Visualização / FINEP HP Brasil. Animando Humanos Virtuais em Tempo-Real usando Visão Computacional e Redes Neurais Nelson F. Souza Jr. Thiago Kehl Fernando S. Osório Cláudio R. Jung Soraia R. Musse. Apresentado por:

masao
Download Presentation

Animando Humanos Virtuais em Tempo-Real usando Visão Computacional e Redes Neurais

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UNISINOS - PUC/RS RBV - Rede Brasileira de Visualização / FINEP HP Brasil Animando Humanos Virtuais em Tempo-Real usando Visão Computacional e Redes Neurais Nelson F. Souza Jr. Thiago Kehl Fernando S. Osório Cláudio R. Jung Soraia R. Musse Apresentado por: Prof. Dr. Fernando S. OSÓRIO -PPG Computação Aplicada / Unisinos 1

  2. Agenda • Motivação / Histórico • Objetivos • > Interface Homem-Máquina • > Visão Geral do Projeto • Visão Computacional • > Reconhecimento de Posturas • > Extração de Atributos • > Aprendizado e Classificação Neural (ANN) • > Resultados: Rede Neural • Simulação com Humanos Virtuais • > Modelos de Comportamento (ações) • Arquitetura do Sistema • Conclusões e Perspectivas 2

  3. 1. Motivação / Histórico SVR 2000 3

  4. 2. Objetivos IHC - Interface Homem-Máquina • Interface usando dispositivos diferentes... • Convencionais => Teclado, Mouse, Joystick • Novos dispositivos => Interação Gestual • - Uso de data-gloves • - Uso de sensores de movimento (encoders, acelerômetros) • - Uso de câmeras • Diferencial: • - Custo • - Facilidade de uso / Simplicidade da Interação 4

  5. 2. Objetivos Visão Computacional • Pré-processar imagens de posturas de mãos coletadas através de uma Webcam • Construir um classificador capaz de identificar tais posturas Simulação com Humanos Virtuais • Servir como entrada para sistemas de simulação de comportamento de humanos virtuais em ambientes povoados • Definir para cada classe de posturauma ação selecionada dentro de uma série de comportamentos estruturados 5

  6. 2. Objetivos Visão Computacional • Pré-processar imagens de posturas de mãos coletadas através de uma Webcam • Construir um classificador capaz de identificar tais posturas Simulação com Humanos Virtuais • Servir como entrada para sistemas de simulação de comportamento de humanos virtuais em ambientes povoados • Definir para cada classe de posturauma ação selecionada dentro de uma série de comportamentos estruturados 6

  7. 2. Objetivos - Visão Geral do Projeto Visão Computacional Simulação com Humanos Virtuais WebCam: Processamento de Imagens Rede Neural: Treino / Uso na classificação Ações: Grupos de Humanos Virtuais 7

  8. Treinamento RNA [SNNS/C++] Aplicaçãode multidões de humanos virtuais [C++] Matlab Aquisição, procesamento e medidas Classificador RNA [C++] = Sockets e Memória Compartilhada 2. Objetivos - Visão Geral do Projeto Integração: Aquisição das Imagens, Classificação, Ações 8

  9. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação Neural (ANN) • 3.4 Resultados: Rede Neural Posturas escolhidas para utilização no experimento • 5 dedos (mão aberta) • 0 dedos (mão fechada) • 1 dedo (indicador) • 1 dedo (polegar) • 2 dedos (v – vitória) • 1 dedo (mínimo) 9

  10. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação Neural (ANN) • 3.4 Resultados: Rede Neural Posturas escolhidas para utilização no experimento • 5 dedos (mão aberta) • 0 dedos (mão fechada) • 1 dedo (indicador) • 1 dedo (polegar) • 2 dedos (v – vitória) • 1 dedo (mínimo) Posturas Gestos 10

  11. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação Neural (ANN) • 3.4 Resultados: Rede Neural Posturas escolhidas para utilização no experimento • 5 dedos (mão aberta) • 0 dedos (mão fechada) • 1 dedo (indicador) • 1 dedo (polegar) • 2 dedos (v – vitória) • 1 dedo (mínimo) Aquisição das imagens: - Aquisição das imagens a partir da Webcam - Pré-processamento das imagens no MATLAB - A limiarização e segmentação das imagens - Extração das referência (métricas/atributos) 11

  12. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação Neural (ANN) • 3.4 Resultados: Rede Neural Exemplo de extração de atributos: (a) Intensidade do canal azul. (b) Resultado da binarização. (c) Resultado do fechamento morfológico. (d) Imagem binária final restrita ou bounding box. Aquisição das imagens: - Aquisição das imagens a partir da Webcam - Pré-processamento das imagens no MATLAB - A limiarização e segmentação das imagens - Extração das referência (métricas/atributos) 12

  13. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação Neural (ANN) • 3.4 Resultados: Rede Neural Extração de Atributos (feições): Procedimentos que, aplicados a uma imagem retornam um valor numérico capaz de diferenciar os tipos de imagens - Histograma Vertical - Histograma Horizontal - Densidade de P/B - Alternância de P/B - Bounding Box Aquisição das imagens: - Aquisição das imagens a partir da Webcam - Pré-processamento das imagens no MATLAB - A limiarização e segmentação das imagens - Extração das referência (métricas/atributos) 13

  14. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação Neural (ANN) • 3.4 Resultados: Rede Neural Histograma Horizontal Extração de Atributos (feições): Procedimentos que, aplicados a uma imagem retornam um valor numérico capaz de diferenciar os tipos de imagens - Histograma Vertical - Histograma Horizontal - Densidade de P/B - Alternância de P/B - Bounding Box Aquisição das imagens: - Aquisição das imagens a partir da Webcam - Pré-processamento das imagens no MATLAB - A limiarização e segmentação das imagens - Extração das referência (métricas/atributos) 14

  15. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação Neural (ANN) • 3.4 Resultados: Rede Neural Histograma Vertical Extração de Atributos (feições): Procedimentos que, aplicados a uma imagem retornam um valor numérico capaz de diferenciar os tipos de imagens - Histograma Vertical - Histograma Horizontal - Densidade de P/B - Alternância de P/B - Bounding Box Aquisição das imagens: - Aquisição das imagens a partir da Webcam - Pré-processamento das imagens no MATLAB - A limiarização e segmentação das imagens - Extração das referência (métricas/atributos) 15

  16. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação Neural (ANN) • 3.4 Resultados: Rede Neural Entradas adotadas: Atributos das imagens 10 projeções verticais 10 projeções horizontais Dimensões da largura e altura do bounding box Base de treinamento e teste/validação do classificador: 22 entradas e 1 saída (a sua respectiva classe (1 dentre as 6 posturas) 600 exemplos (imagens) - 420 de treino (70%) e 180 de validação (30%) 70 exemplos de cada classe = 70 x 6 = 420 exemplos na base de treino Rede Neural: 22-22-6 (22 Input, 22 Hidden, 6 Output) Aprendizado: RProp (Resilent Propagation ~ BackProp acelerado) Softwares: JavaNNS SNNS Analyze SNNS2C 16

  17. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação • 3.4 Resultados: Rede Neural Taxa média de acertos - aprendizado : 99,95% Taxa média de erro - abaixo de 0,05%. Taxa de acertos (treino/teste): muito próxima a 100% 17

  18. 3. Visão Computacional • 3.1 Reconhecimento de Posturas • 3.2 Extração de Atributos • 3.3 Aprendizado e Classificação • 3.4 Resultados: Rede Neural Taxa média de acertos - aprendizado : 99,95% Taxa média de erro - abaixo de 0,05%. Taxa de acertos (treino/teste): muito próxima a 100% 18

  19. 4. Simulação com Humanos Virtuais Simulação de grupos - "Crowds" Aplicação de simulação militar: - Formação: Linha, Quadrado, Divisão de grupo, Junção - Agrupamento: Denso, Esparso Comando das tropas através de gestos - Reconhecimento de posturas - Associação da postura às ações 19

  20. 5. Arquitetura do Sistema • Exportação da rede com o melhor resultado • Utilização do SNNS2C para exportar a rede que apresentou o melhor resultado dentre todos os testes • Integração das aplicações via sockets e memória compartilhada • Aquisição da Imagem • Pré-Processamento: extração de atributos • Classificação com a rede (snns2c) • Classe identificada gera código da ação • Geração das ações => Animação do Humanos Virtuais 20

  21. 6. Conclusões e Perspectivas Tópicos abordados: - Interface Humano-Computador - Aprendizado e Reconhecimento de Posturas - Aplicação em Tempo Real - Visão Computacional - Simulação de Humanos Virtuais Trabalhos Futuros: - Reconhecimento de GESTOS (dinâmica do movimento) - Explorar mais o uso de interfaces gestuais Trabalhos relacionados... A tool for teaching musical metrics based on computer vision - CGI2007 Rodrigo Schramm e Claudio Jung 21

  22. Proc. Imagens / Visualização 3D 22

More Related