Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouDiego Calix Alterado mais de 9 anos atrás
1
Banco de Dados Multimídia 5. Vídeo Prof. Cláudio Baptista
2
Video- Introdução Porquê necessitamos de vídeo? Para representar movimento (motion) O que podemos fazer com dados de video? – capturar, armazenar, apresentar, editar -- (sem considerar o conteúdo) – query, busca, indexação -- dependente de contexto Video sequence = Video stream (physical, raw data) + Video information (meaning)
3
Video - Motivação –A grande quantidade de vídeos produzidos que necessitam de recuperação por –Ex.: Um ano de video da NBA mostrando os melhores eventos: Número total de jogos num ano: 29 * 82 / 2 + 91 = 1280 (jogos) Precisamos de 1280 * 3 = 3840 (horas) para navegar sequencialmente se usando um video player –Uma facilidade de acesso randômico pode reduzir este tempo pode ser reduzido a poucos dias.
4
Video - Motivação
5
Porquê agora?
7
Imagem & Video An image is captured when a camera scans a scene Colour => Red (R), Green (G) and Blue (B) array of digital samples Density of samples (pixels) gives resolution A video is captured when a camera scans a scene at multiple time instants Each sample is called a frame giving rise to a frame rate (frames/sec) measured in Hz TV (full motion video) is 25Hz Mobile video telephony is 8-15 Hz
8
Video Data
9
Compressão
11
Representação de Vídeo Analógico: convertido para digital usando uma placa de captura de vídeo (digitalização) Digital: AVI, MPEG-1,-2,-4
12
Representação de Vídeo
15
Características de vídeo Comparação com dados alfanuméricos
16
BD Vídeo Tipos de consulta: 1. Usuário pode ter visto uma cena de um video e deseja recuperá-la 2. Usuário pode estar procurando por um vídeo que ele nunca viu antes 3. Usuário pode ter apenas uma vaga idéia do que ele está procurando.
17
BD Vídeo Meta: determinar a sintaxe e semântica de um video. Passo 1: identificar a sintaxe: Um filme é composto por segmentos, cenas e tomadas. - Quadro (Frame): uma imagem do vídeo - Tomadas (shots) : sequência contínua de frames de uma câmera com início e fim bem definidos. - Cena (Episode) : coleção de shots adjacentes focando os mesmos objetos e descrevendo uma cadeia completa de ações. - Segmento : é um grupo de cenas, não necessariamente adjacentes, ligados por uma linha comum de ações.
18
Categoria: News Data: 10/12/96 Duração: 15 min Fonte: Globo Num. Estórias: M Keywords: C. Grande, Micarande, Turismo, festa... Segmento index: 1 Título: Folia nos blocos Num. Shots: K Frame inicial: 00000 Frame final: 02000 Evento: narração, entrevistas, diálogos,... Shot index: 1 Frame inicial: 00000 Frame final: 00300 Camera: still Nível de audio: médio Num. Pessoas: 10 Keywords: dança, festa animação,... clip... Segmento 1Segmento M... Shot 1Shot K... Frame 00000 Frame 00300
19
BD Vídeo Passo 2: semântica Uso de metadata para especificar a semântica do video. Através de anotações, capturas de texto, e algoritmos de segmentação de imagem (similar a proc. de imagens). BD Video pode ser indexado por: - dados bibliográficos: título, abstract, assunto, gênero - dados estruturados: segmento, cena e tomada - dados de conteúdo: uso de keyframes e keywords.
20
Análise de Movimento O processo de análise de movimento é dividido em 3 estágios: detecção de objetos em movimento trajetória de objetos análise final de movimento
21
Modelo de Informação de Video CBR em video usa: anotação manual para descrever informação semântica (lento) representação icônica usando métodos automáticos para detecção de mudança de cena (cortes) (perde a propriedade de movimento) propriedades estáticas derivadas usando técnicas de análise de imagens (perde aspecto temporal do video)
22
Caracterização de Informação de Video Tipos de informações físicas associados com video: Objeto -- video stream atributos (length, size, frame numbering) informação (format resolution headers, frame rate) O que pode ser derivado de um video? O -- conjunto de objetos presentes num video M -- conjunto de representações de movimento Features, spatial relationships, derivados de O Spatiotemporal info derivada de O e M juntos Spatiotempotal info fornecida pelo designer Temporal relationships inferidos de M Image information
23
Operadores de Video Além dos clássicos: FF, play, record, Rewind, stop e pause Inserir um video em outro Extrair um video clip Extração de cortes Extrair uma imagem de um video
24
Operadores de atributos de video v_length:Video -> Integer frame_rate: Video -> Integer size: Video -> Integer resolution: Video -> String compression: Video -> String
25
Video Segmentation
26
Segmentação de Vídeo: O que é importante?
28
Problema Semântico
29
Video Segmentation
32
Semantic Indexing Overview
33
Projetos: Informedia
34
Projetos: IBM Marvel
35
Áudio Prof. Cláudio Baptista
36
Áudio Processamento de Fala Reconhecimento de Fala Síntese de Fala Reconhecimento de Música
37
Reconhecimento de Fala Motivação: How can machines make sense of – and participate in – human communication? recognizing, interpreting, understanding, generating Underpins richer, human-centred approaches to computing perceptual computers that can interpret their environment technological enhancements to human-human communication
38
Características Ácústicas Process the speech waveform to obtain a representation that emphasizes those aspects of the speech signal most relevant to ASR
39
Dificuldades no Reconhecimento da fala Speech recognition is difficult due to several sourcesv of variation Size - number of words in the vocabulary, perpelexity Style - continuous speech or isolated; planned or spontaneous; Speaker characteristics and accent - tuned for a single speaker, or speaker-independent? Acoustic environment - noise, competing speakers, channel conditions (microphone, phone line,...)
40
Conhecimento linguístico One could construct a speech recognizer using linguistic knowledge Acoustic phonetic rules to relate spectrogram representations of sounds to phonemes Base pronunciations of words stored in a dictionary Morphological rules to construct inflected forms Grammatical rules to model syntax Semantic and pragmatic constraints Very difficult to take account of the variability of spoken language with such approaches
41
Machine Learning Intense effort needed to derive and encode linguistic rules that cover all the language Speech has a high degree of variability (speaker, pronunciation, spontaneity,...) Difficult to write a grammar for spoken language - many people rarely speak grammatically Data-driven approach Construct simple models of speech which can be earned from large amounts of data (thousands of hours of speech recordings)
42
Solução: Métodos Estatísticos Redes Bayesianas Cadeias de Markov
43
Música O que é MIR? Born ca. 1960’s in IR research Major recent growth precipitated by advent of networked digital music collections Informed by multiple disciplines andliteratures
44
DEfinindo MIR Music Information Retrieval (MIR) is the process of searching for, and finding, music objects, or parts of music objects, via a query framed musically and/or in musical terms Music Objects : Scores, Parts, Recordings (WAV, MP3, etc.), etc. Musically framed query : Singing, Humming, Keyboard, Notation-based, MIDI file, Sound file, etc. Musical terms : Genre, Style, Tempo, etc.
45
Porquê MIR é complexo?
46
Multifaceted
61
O que é Oracle interMedia Produto que estende o Oracle9i Adiciona características multimídia Responsável por gerenciar, armazenar e recuperar imagens, áudio, vídeo e texto interMedia Text –Serviço de procura em documentos Oracle Visual Information Retrieval (VIR) –Recuperação baseada em conteúdo
62
O que é Oracle interMedia Tanto dados multimídia quanto dados tradicionais são suportados pelo banco de dados Dados multimídia podem ser: Compartilhados por múltiplas aplicações Gerenciados sob controle da tecnologia relacional Oferecidos em um servidor que suporta milhares de usuários
63
interMedia Áudio, Imagem e Vídeo O Oracle interMedia pode armazenar: Binary Large Objects (BLOBs) – localmente no banco de dados File-Based Large objects (BFILEs) – arquivos do sistema operacional, externos ao BD URLs – armazenadas em um servidor HTTP Dados de áudio e vídeo streaming – armazenados em servidores especializados
64
Orientado a Objetos O interMedia usa tipos de objeto semelhantes a classes Java e C++ ORDAudio, ORDImage, ORDVideo Instâncias dos objetos são compostas dos dados da mídia e de metadados São exemplos desses metadados: Tamanho, duração, formato ou tipo de compressão Objetos incluem métodos específicos da mídia
65
Extensível O interMedia foi programado para ser extensível Tipos de extensões possíveis: Criar um novo tipo de objeto ou um tipo de objeto composto baseado nos tipos já oferecidos Plugins para outras fontes externas de mídia Refazer métodos como o setProperties() Suportar novos formatos de áudio, vídeo e imagem
66
Conceitos de Áudio O objeto ORDAudio consiste do campo de dados onde o áudio é armazenado, mais uma série de metadados O interMedia pode armazenar e recuperar qualquer formato de áudio Pode extrair automaticamente os metadados para uma série de formatos populares
67
Metadados de Áudio Exemplos de metadados para áudio: Formatos Tipos de compressão Número de canais Taxa de execução Tamanho de amostra Duração
68
Conceitos de Vídeo O objeto ORDVideo é semelhante ao ORDAudio Mudanças apenas nos metadados e nos métodos de determinação automática Assim como para áudio, o ORDVideo extrai metadados para os formatos mais populares Armazena e recupera qualquer tipo de vídeo
69
Metadados de Vídeo Exemplos de metadados de vídeo: Formatos Tipos de compressão Taxas de frame Tamanho de frame Resolução de frame Tempo de duração Número de cores Taxa de transferência
70
Oracle Visual Information Retrieval Extensão do Oracle8i destinada a fazer Content- Based Retrieval e conversão de formatos de imagem Consiste de um objeto que armazena ou referencia a imagem e métodos que gerenciam e fazem processamentos As imagens possuem uma série de atributos específicos
71
Atributos de Imagem Largura Altura Tamanho Tipo ou formato do arquivo Tipo ou formato de compressão Tipo da imagem (monocromática, colorida, etc.) Tipo MIME
72
A classe ORDVir A classe ORDSYS.ORDVir é a base para as funcionalidades do VIR Criação de índices para a coluna de imagens da tabela Recuperação por conteúdo Composta da imagem, atributos de imagem, métodos específicos e um atributo assinatura
73
Métodos do ORDVir Análise e Comparação Analyse() – analisa a imagem e gera uma assinatura (atributo signature), usada para a realização de Content-Based Retrieval VIRScore() e VIRSimilar() – comparam assinaturas de duas imagens e determinam se elas são similares
74
Métodos do ORDVir Extração de Propriedades setProperties() – determina automaticamente as propriedades características da imagem Métodos “get” – retornam alguns atributos individualmente. Ex: getHeight() e getWidth() Verificação de Propriedades checkProperties() – verifica se as propriedades armazenadas conferem com a imagem
75
Métodos do ORDVir Modificação process() e processCopy() – usados para conversão de formato, compressão e funções de manipulação, como corte da imagem e scaling Movimentação copy() e processCopy() – copiam imagens em outro objeto ORDVir
76
Métodos do ORDVir Movimentação (cont.) export(), import() e importFrom() – usados para mover imagens entre bancos de dados setSource() – ajusta ou altera informações sobre imagens armazenadas externamente Exclusão deleteContent() – remove os dados do atributo BLOB
77
Fundamentos de Content-Based Retrieval Solução para recuperação em grandes bancos de dados de imagens Podem ser usados dados inseridos manualmente, mas com a adição e modificação de imagens em um grande banco, a entrada manual de atributos é ruim Extração automática de características da imagem para procura por comparação
78
Funcionamento do Content- Based Retrieval Um sistema de Content-Based Retrieval processa as informações contidas em uma imagem e cria uma abstração Operações de consulta operam nessa abstração, ao invés de operar na imagem No VIR, essa abstração é a assinatura, sendo armazenada em um vetor
79
Funcionamento do Content- Based Retrieval A assinatura contém informações a respeito dos seguintes atributos visuais: cor global, cor local, textura e estrutura As imagens do banco são recuperadas através de uma imagem de comparação O score é a distância relativa entre as imagens Quanto menor o score, mais semelhantes as imagens
80
Cor Global e Cor Local Cor global refere-se à distribuição de cores em toda a imagem, enquanto cor local considera a distribuição de cores e a localização Comparativo:
81
Cor Global e Cor Local Imagens semelhantes pela cor global (score = 0) Imagens semelhantes pela cor local (score = 0,02461)
82
Textura e Estrutura Imagens semelhantes pela textura (score = 4,1) Imagens semelhantes pela estrutura (score = 0,61939)
83
Funcionamento da Busca Para a realização de consultas, atribui-se pesos para cada um dos atributos visuais citados Scores são calculados para cada atributo, então calcula-se a média ponderada Um limite ( threshold ) é atribuído Imagens com score global abaixo do limite são retornadas como semelhantes
84
Funcionamento da Busca Exemplo: considerando-se os scores e pesos Scores – cor global = 15, cor local = 90, textura = 5 e estrutura = 50 Pesos - cor global = 0.1, cor local = 0.6, textura = 0.2 e estrutura = 0.1 Score Global: (0,1 x 15 + 0,6 x 90 + 0,2 x 5 + 0,1 x 50) = 61,5 Invertendo-se os pesos de cor global e local: (0,6 x 15 + 0,1 x 90 + 0,2 x 5 + 0,1 x 50) = 24
85
Exemplos de Código usando Content-Based Retrieval Criação de uma tabela CREATE TABLE stockphotos (photo_id NUMBER, photographer VARCHAR2(64), annotation VARCHAR2(255), photo ORDSYS.ORDVir);
86
Carregando Imagens na Tabela DECLARE image ORDSYS.ORDVIR; IdNum NUMBER; ctx RAW(4000) :=NULL; BEGIN IdNum := 1; INSERT INTO stockphotos VALUES (IdNum, ’Janice Gray’, ’Beach scene, balls on water’, ORDSYS.ORDVIR.init(’FILE’,’ORDVIRDIR’,’virdemo1.dat’)); SELECT photo INTO image FROM stockphotos WHERE photo_id = IdNum FOR UPDATE; image.import(ctx); image.Analyze; UPDATE stockphotos SET photo = image WHERE photo_id = IdNum; COMMIT; END;
87
Recuperação de uma Imagem DECLARE image ORDSYS.ORDVIR; myid INTEGER :=1; BEGIN SELECT photo INTO image FROM stockphotos WHERE photo_id = myid; END;
88
Recuperação de Imagens Usando Imagem de Comparação DECLARE threshold NUMBER; compare_sig RAW(2000); compare_img ORDSYS.ORDVir; photo_id NUMBER; photographer VARCHAR2(64); annotation VARCHAR2(255); photo ORDSYS.ORDVIR; CURSOR getphotos IS SELECT photo_id, photographer, annotation, photo FROM stockphotos T WHERE ORDSYS.VIRSimilar(T.photo.Signature, compare_sig, ’globalcolor="0.2" localcolor="0.3" texture="0.1" structure="0.4"’, threshold)=1 AND photo_id <> 1;
89
Recuperação de Imagens Usando Imagem de Comparação BEGIN SELECT s.photo INTO compare_img FROM stockphotos s WHERE photo_id = 1; compare_img.Analyze; compare_sig:= compare_img.signature; threshold := 25; OPEN getphotos; LOOP FETCH getphotos INTO photo_id, photographer, annotation, photo; EXIT WHEN getphotos%NOTFOUND; -- Nesse ponto exibe-se ou armazena-se os resultados END LOOP; CLOSE getphotos; END;
90
Criação de um Índice CREATE INDEX imgindex ON stockphotos(photo.signature) INDEXTYPE IS ordsys.ordviridx PARAMETERS(’ORDVIR_DATA_TABLESPACE = tbs_1,ORDVIR_INDEX_TABLESPACE = tbs_2’);
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.