SM - Sistemas Multimédia CODIFICAÇÃO DE FONTE (parte 2) 4.º / 6.º semestre LEIC (verão 2016/2017)

Documentos relacionados
Entropia, Entropia Relativa

Tópicos sobre Teoria da informação e codificação de fonte

Se A =, o evento é impossível, por exemplo, obter 7 no lançamento de um dado.

OPERAÇÕES COM FRAÇÕES

Instituto Superior Técnico. 19 de Janeiro de Parte I

ISEG - ESTATÍSTICA I - EN, Economia/Finanças - 1 de Junho de 2010 Tópicos de correcção. 1ª Parte. > 0. Justifique a igualdade: P(( A B)

AULA 07 Distribuições Discretas de Probabilidade

Olimpíada Brasileira de Raciocínio Lógico Nível III Fase II 2014

x = xi n x = xifi fi 1. MÉDIA Exercício: Quando a distribuição é simétrica, a média e a mediana coincidem.

Universidade Federal de Ouro Preto UFOP. Instituto de Ciências Exatas e Biológicas ICEB. Departamento de Computação DECOM

Seu pé direito nas melhores Faculdades

ALGORITMOS E COMPLEXIDADE PROBLEMAS E ALGORITMOS

PESQUISA OPERACIONAL -PROGRAMAÇÃO LINEAR. Prof. Angelo Augusto Frozza, M.Sc.

Métodos Estatísticos Avançados em Epidemiologia

EXAME DE MACS 2º FASE 2014/2015 = 193

M =C J, fórmula do montante

Álgebra Linear Aplicada à Compressão de Imagens. Universidade de Lisboa Instituto Superior Técnico. Mestrado em Engenharia Aeroespacial

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO PROGRAMA DE EDUCAÇÃO TUTORIAL - MATEMÁTICA PROJETO FUNDAMENTOS DE MATEMÁTICA ELEMENTAR

Função. Adição e subtração de arcos Duplicação de arcos

Avaliação de Empresas Profa. Patricia Maria Bortolon

Inteligência Artificial

Módulo de Equações do Segundo Grau. Equações do Segundo Grau: Resultados Básicos. Nono Ano

Técnicas de Contagem I II III IV V VI

Aula 5. Uma partícula evolui na reta. A trajetória é uma função que dá a sua posição em função do tempo:

Árvores. ! utilizada em muitas aplicações. ! modela uma hierarquia entre elementos. ! O conceito de árvores está diretamente ligado à recursão

REGULAMENTO ESPECÍFICO DE BASQUETEBOL

REGIMENTO ESPECÍFICO BASQUETEBOL. Câmara Municipal de Lisboa e Juntas de Freguesia Olisipíadas 2ª edição

EXERCÍCIOS PREPARATÓRIOS PARA AS DISCIPLINAS INTRODUTÓRIAS DA MATEMÁTICA

tipo e tamanho e com os "mesmos" elementos do vetor A, ou seja, B[i] = A[i].

Recorrendo à nossa imaginação podemos tentar escrever números racionais de modo semelhante: 1 2 =

Probabilidade e Estatística 2008/2. Regras de adicão, probabilidade condicional, multiplicação e probabilidade total.

[RESOLUÇÃO] Economia I; 2012/2013 (2º semestre) Prova da Época Recurso 3 de Julho de 2013

Apostila de Matemática 16 Polinômios

1. Estatística Descritiva

Lista de Exercícios 5: Soluções Teoria dos Conjuntos

TERMO ADITIVO ao Contrato Particular de Plano de Saúde (nome do plano) Reg. ANS nº (nº produto).

2 Conceitos Básicos. onde essa matriz expressa a aproximação linear local do campo. Definição 2.2 O campo vetorial v gera um fluxo φ : U R 2 R

Curso de Formação de Oficiais Conhecimentos Específicos ENGENHARIA DE COMPUTAÇÃO CADERNO DE QUESTÕES

Redes de Computadores

Despacho n.º /2015. Regulamento Académico dos Cursos de Pós-Graduação não Conferentes de Grau Académico do Instituto Politécnico de Leiria (IPLeiria)

CURSO DE MATEMÁTICA BÁSICA PROGRAMA DE EDUCAÇÃO TUTORIAL CENTRO DE ENGENHARIA DA MOBILIDADE

Módulo de Princípios Básicos de Contagem. Segundo ano

Coeficiente de Assimetria e Curtose. Rinaldo Artes. Padronização., tem as seguintes propriedades: Momentos

REGULAMENTO ESPECÍFICO DE BASQUETEBOL DESPORTO ESCOLAR

SISTEMAS DIGITAIS SISTEMAS DE NUMERAÇÃO E CÓDIGOS

Exercícios de Aprofundamento Mat Polinômios e Matrizes

M3D4 - Certificados Digitais Aula 2 Certificado Digital e suas aplicações

FACULDADE DE CIÊNCIAS E TECNOLOGIA. Redes de Telecomunicações (2006/2007)

21- EXERCÍCIOS FUNÇÕES DO SEGUNDO GRAU

EGEA ESAPL - IPVC. Resolução de Problemas de Programação Linear, com recurso ao Excel

números decimais Inicialmente, as frações são apresentadas como partes de um todo. Por exemplo, teremos 2 de um bolo se dividirmos esse bolo

Adição de probabilidades. O número de elementos da união dos conjuntos A e B n(aub) = n(a B) Dividindo os dois membros por n(e):

10. CPU (Central Processor Unit) Conjunto das instruções Estrutura interna Formato das instruções...

Unidade 3 Função Afim

números decimais Inicialmente, as frações são apresentadas como partes de um todo. Por exemplo, teremos 2 de um bolo se dividirmos esse bolo

SOLUÇÕES N item a) O maior dos quatro retângulos tem lados de medida 30 4 = 26 cm e 20 7 = 13 cm. Logo, sua área é 26 x 13= 338 cm 2.

COBRANÇA BANCÁRIA CAIXA

MINERAÇÃO DE DADOS. Thiago Marzagão MINERAÇÃO DE TEXTOS. Thiago Marzagão (UnB) MINERAÇÃO DE DADOS 1/ / 25

Estruturas de Repetição

INICIADOS - 2ª Sessão ClubeMath

Matemática Discreta. Leandro Colombi Resendo. Matemática Discreta Bacharel em Sistemas de Informações

Sistemática dos seres vivos

Lista de Exercícios 1

Códigos Lineares CAPÍTULO 4

ARQUITETURA DE COMPUTADORES. Professor: Clayton Rodrigues da Siva

AULA 19 Análise de Variância

Método Simplex das Duas Fases

Prova de Fundamentos de Bancos de Dados 1 a Prova

PRINCÍPIOS DA MULTIPLICAÇÃO, DA ADIÇÃO E DA INCLUSÃO-

Prova de Matemática 6º Ano do Ensino Fundamental 2/6

Especificação do Código de Barras para Bloquetos de Cobrança Sem Registro e Registrada no SIGCB

Hóspedes, dormidas e proveitos mantêm crescimento significativo

Análise Qualitativa no Gerenciamento de Riscos de Projetos

12 26, 62, 34, , , 65

Avaliação e Desempenho Aula 1 - Simulação

Tabelas Hash. Aleardo Manacero Jr.

GUIA SOBRE A APLICAÇÃO DOS ASPECTOS LINGUÍSTICOS DA CARTILHA DE ADESÃO À AGENCE UNIVERSITAIRE DE LA FRANCOPHONIE

AVALIAÇÃO DE UM TANQUE DE DECANTAÇÃO DE SÓLIDOS UTILIZANDO FLUIDODINÂMICA COMPUTACIONAL

Lógica de Programação. Profas. Simone Campos Camargo e Janete Ferreira Biazotto

Circuitos Aritméticos

Sistemas de Numeração

Carlos de Salles Soares Neto Segundas e Quartas, 17h40 às 19h10

Universidade Federal do ABC Disciplina: Natureza da Informação Lista de Exercícios 02 Códigos e conversão A/D Prof. João Henrique Kleinschmidt

DEPARTAMENTO DE MATEMÁTICA

Probabilidade. Luiz Carlos Terra

para x = 111 e y = 112 é: a) 215 b) 223 c) 1 d) 1 e) 214 Resolução Assim, para x = 111 e y = 112 teremos x + y = 223.

Sistemas Numéricos. Tiago Alves de Oliveira

O Cálculo λ sem Tipos

Aula 6 Propagação de erros

Conteúdo programático por disciplina Matemática 6 o ano

Ficha Prática 5: Cap 3.Princípios Elementares de Contagem

FACULDADE DOM BOSCO DE PORTO ALEGRE

FRAÇÃO Definição e Operações

SÍMBOLOS MATEMÁTICOS. adição Lê-se como "mais" Ex: 2+3 = 5, significa que se somarmos 2 e 3 o resultado é 5.

2ª série LISTA: Ensino Médio. Aluno(a): Professor(a): Jean Jaspion DIA: MÊS: 02 RESISTORES 01. Segmento temático: Turma: A ( ) / B ( )

Matemática Básica Intervalos

DISTRIBUIÇÕES ESPECIAIS DE PROBABILIDADE DISCRETAS

1. Números. MatemáticaI Gestão ESTG/IPB Departamento de Matemática. Números inteiros. Nota: No Brasil costuma usar-se: bilhão para o número

REGULAMENTO ESPECÍFICO DE BASQUETEBOL

Transcrição:

SM - Sistemas Multimédia CODIFICAÇÃO DE FONTE (parte 2) 4.º / 6.º semestre LEIC (verão 2016/2017)

Tópicos Propriedades dos códigos de fonte Código ótimo e código ideal Singularidade, descodificação única, descodificação instantânea, livre de prefixo Desigualdade de Kraft Definição Propriedades Algoritmos de construção de códigos Huffman, Shannon-Fano, Unário, Golomb 23/03/2017 2

Propriedades dos códigos de fonte Um código ótimo verifica as seguintes condições: Se p( xi) p( x j) então As duas palavras maiores têm o mesmo comprimento l( c( xi)) l( c( x j)) diferem apenas no último dígito correspondem aos símbolos menos prováveis O comprimento médio das palavras está contido no intervalo H( X) L H( X) 1 23/03/2017 3

Propriedades dos códigos de fonte Um código diz-se ideal, para determinada fonte, quando L H(X) Como consequência, a eficiência do código ideal é 100% H( X) H( X) 1 L H( X) 23/03/2017 4

Propriedades dos códigos de fonte Por exemplo, o código {0, 10, 110, 111} é ótimo Para a distribuição de probabilidades dada por {1/2, 1/4, 1/8, 1/8} este código torna-se ideal O código {0,10,110,1110} não é ótimo e nunca poderá ser ideal 23/03/2017 5

Propriedades dos códigos de fonte Singularidade Um código diz-se singular se existirem símbolos diferentes codificados com a mesma palavra de código x i x j c( xi) c( x j) Um código diz-se não singular quando a símbolos diferentes correspondem palavras de código diferentes x i x j c( xi) c( x j) 23/03/2017 6

Propriedades dos códigos de fonte Singularidade Por exemplo: o código {0, 0, 10, 11} é singular o código {1, 0, 10, 11} é não singular 23/03/2017 7

Propriedades dos códigos de fonte Descodificação única Um código tem descodificação única quando a sua extensão para a ordem n é não singular Não existe ambiguidade de descodificação, quando se concatenam palavras do código 23/03/2017 8

Propriedades dos códigos de fonte Descodificação única Por exemplo: o código {1, 0, 10, 11} não tem descodificação única A sequência 11 será uma ocorrência do quarto símbolo ou duas ocorrências do primeiro símbolo? A sequência 10 será uma ocorrência do terceiro símbolo ou uma ocorrência do primeiro símbolo seguida de uma ocorrência do segundo símbolo? os códigos {0, 01, 011, 0111} e {0, 10, 110, 1110} têm descodificação única 23/03/2017 9

Propriedades dos códigos de fonte Descodificação instantânea Um código tem descodificação instantânea quando se carateriza por ter auto-pontuação Como consequência, conseguimos descodificar imediatamente a sequência de símbolos, através da análise da sequência de códigos 23/03/2017 10

Propriedades dos códigos de fonte Descodificação instantânea Por exemplo: o código {0, 01, 011, 0111} tem descodificação única, mas não instantânea o código {0, 10, 110, 1110} tem descodificação única e instantânea o código {0, 10, 110, 111} tem descodificação única e instantânea o código {00, 10, 01, 11} tem descodificação única e instantânea 23/03/2017 11

Propriedades dos códigos de fonte Livre de prefixo Um código diz-se livre de prefixo, quando as palavras de menor dimensão não são prefixo das palavras de maior dimensão Tem sempre descodificação instantânea 23/03/2017 12

Propriedades dos códigos de fonte Livre de prefixo Por exemplo: o código {0, 01, 011, 011} não é livre de prefixo o código {0, 10, 110, 1110} é livre de prefixo o código {0, 10, 110, 111} é livre de prefixo 23/03/2017 13

É definida por Desigualdade de Kraft Se determinado conjunto de M palavras de código com comprimento l i respeitar a desigualdade de Kraft, então existe um código instantâneo formado por Um conjunto com esse número de palavras, M As palavras têm comprimento l i 23/03/2017 14

Desigualdade de Kraft Considerando o código {0, 1, 11}, temos e como tal não respeita a desigualdade de Kraft Considerando o código {0, 10, 11}, temos respeitando a desigualdade de Kraft, com igualdade Para o código {0, 10, 110}, temos 23/03/2017 15

Desigualdade de Kraft Considerações sobre o valor de D: Com D > 1, não é possível estabelecer um código instantâneo com M palavras com os comprimentos indicados Com D 1, é possível estabelecer um código instantâneo com M palavras com os comprimentos indicados Com D=1, o código é completo (tem aproveitamento máximo) Com D < 1, o código tem redundância https://en.wikipedia.org/wiki/kraft%27s_inequality 23/03/2017 16

Código de Huffman Ordenar os símbolos por probabilidade decrescente e considerá-los como nós duma árvore Enquanto houver mais do que um nó: Agrupar os dois nós de menor probabilidade e formar um novo nó com probabilidade igual à soma dos dois nós que se agruparam; Arbitrariamente atribuir os códigos 0 e 1 a cada ramo dos nós que se juntaram O código de cada símbolo obtém-se pela leitura sequencial da raiz até ao nó final (folha) a que pertence o símbolo em causa https://en.wikipedia.org/wiki/huffman_coding 23/03/2017 17

Código de Huffman Exemplo de construção de árvore a 3/8 1 a 1 b 1/4 1 b 01 c 1/4 1 0 0 5/8 c 001 d 1/8 0 3/8 d 000 Entropia da fonte H(X) = 1.9056 Eficiência = H(X) / L Comprimento médio das palavras do código L = 2 = 0,9528 23/03/2017 = 95,28 % 18

Código de Huffman Cálculo em MATLAB do código de Huffman Fonte com 8 símbolos % Lista de símbolos. symbols = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h'}; % Probabilidades dos símbolos. p = [0.25, 0.2, 0.2, 0.18, 0.09, 0.05, 0.02, 0.01]; % Obter o código. dict = huffmandict(symbols,p) 23/03/2017 19

Código de Huffman Cálculo em MATLAB do código de Huffman Fonte com 8 símbolos a --> 01 prob=0.25 b --> 11 prob=0.20 c --> 10 prob=0.20 d --> 000 prob=0.18 e --> 0010 prob=0.09 f --> 00110 prob=0.05 g --> 001110 prob=0.02 h --> 001111 prob=0.01 H(X)=2,5821 e L=2,63; eficiência = 98,18 % 23/03/2017 20

Código de Huffman Histogramas da eficiência e da redundância, para 1000 codificações de fontes de M=16 símbolos 23/03/2017 21

Código de Shannon-Fano Ordenar os símbolos por probabilidade decrescente Considerar todos os símbolos para a alocação inicial de bits De forma recursiva, dividir os símbolos em duas partes, approximadamente com o mesmo peso (probabilidade) Atribuir bit 1 a uma parte Atribuir bit 0 à outra parte Proceder assim, até todas as partes conterem apenas um símbolo 23/03/2017 22

Código de Shannon-Fano Exemplo https://en.wikipedia.org/wiki/shannon%e2%80%93fano_coding Fonte com M=6 símbolos e probabilidades {0,36; 0,18; 0,18; 0,12; 0,09; 0,07} 23/03/2017 23

Código de Shannon-Fano Fonte com M=5 símbolos e probabilidades {0,35; 0,17; 0,17; 0,16; 0,15} Simbolo Probabilidade #1 #2 #3 A 0,35 0 0 B 0,17 0 1 C 0,17 1 0 D 0,16 1 1 0 E 0,15 1 1 1 23/03/2017 24

Algumas considerações Código de Huffman realiza abordagem bottom-up Código de Shannon-Fano constrói o código de forma top-down O código de Huffman é, regra geral, mais eficiente Por exemplo, para a distribuição de probabilidades {0,35; 0,17; 0,17; 0,16; 0,15} (com H(X)= 2,23) o código de Huffman obtém palavras com comprimento {1, 3, 3, 3, 3}, com L=2,30; eficiência de 97,08% o código de Shannon-Fano obtém palavras com comprimentos {2, 2, 2, 3, 3}, com L=2,31; eficiência de 96,66% 23/03/2017 25

Código unário Ordenar os símbolos por probabilidade decrescente Realizar a atribuição das configurações binárias 0 10 110 1110 11110 111110... 111111111...0 23/03/2017 26

Código de Golomb Ordenar os símbolos (números inteiros não negativos) por probabilidade decrescente Representa os números n através do resultado da sua divisão inteira pelo parâmetro m, obtendo-se o quociente q e o resto r o quociente q é representado através de código unário o resto é r é representado por código binário natural modificado 23/03/2017 27

n q r 0 0 0 1 0 1 2 0 2 3 1 0 4 1 1 5 1 2 6 2 0 7 2 1 8 2 2 9 3 0 10 3 1......... Código de Golomb Análise da evolução de q e r para m=3 e m=5 m=3 n q r 0 0 0 1 0 1 2 0 2 3 0 3 4 0 4 5 1 0 6 1 1 7 1 2 8 1 3 9 1 4 10 2 0......... m=5 23/03/2017 28

Código de Golomb Codificação do quociente em código unário q Código 0 0 1 10 2 110 3 1110 4 11110 5 111110 6 1111110...... 23/03/2017 29

Código de Golomb Codificação do resto em código binário modificado Para m=3, temos: O primeiro valor do resto é codificado com 1 bit Os restantes valores são codificados como r+1, usando 2 bits Para m=5, temos: Os primeiros três valores do resto é codificado com 2 bits Os restantes valores são codificados como r+3, usando 3 bits 23/03/2017 30

Código de Golomb Palavras de código para m=3 n q r Código 0 0 0 00 1 0 1 010 2 0 2 011 3 1 0 100 4 1 1 1010 5 1 2 1011 6 2 0 1100 7 2 1 11010 8 2 2 11011 9 3 0 11100 10 3 1 111010............ 23/03/2017 31

Código de Golomb Palavras de código para m=5 n q r Código 0 0 0 000 1 0 1 001 2 0 2 010 3 0 3 0110 4 0 4 0111 5 1 0 1000 6 1 1 1001 7 1 2 1010 8 1 3 10110 9 1 4 10111 10 2 0 11000............ 23/03/2017 32

Algumas considerações Os algoritmos de Huffman e Shannon-Fano constroem a lista de palavras de código, de forma fechada Lista de símbolos Função massa de probabilidade para os símbolos O código unário e o código de Golomb estabelecem regras de construção gerais e não necessitam de receber listas fechadas de símbolos e probabilidades 23/03/2017 33