módulo 6 – compressão de imagem e som sistema multimédia ana tomé josé vieira

54
1 Módulo 6 – Compressão de Imagem e Som Módulo 6 – Compressão de Imagem e Som Sistema Multimédia Ana Tomé José Vieira Departamento de Electrónica, Telecomunicações e Informática Universidade de Aveiro

Upload: benson

Post on 23-Feb-2016

59 views

Category:

Documents


0 download

DESCRIPTION

Módulo 6 – Compressão de Imagem e Som Sistema Multimédia Ana Tomé José Vieira. Departamento de Electrónica, Telecomunicações e Informática Universidade de Aveiro. Sumário. Codificação sem Perdas (continuação ) RLE - Run length encoder - PowerPoint PPT Presentation

TRANSCRIPT

Aula 4 de SM

Mdulo 6 Compresso deImagem e Som Sistema MultimdiaAna TomJos VieiraDepartamento de Electrnica, Telecomunicaes e InformticaUniversidade de Aveiro#Mdulo 6 Compresso de Imagem e Som1SumrioCodificao sem Perdas (continuao)RLE- Run length encoderCodificadores com dicionrio (Lempel-Ziv-Welch)Codificao com Perdas para ImagemEstrutura geral do codificador Exemplo do JPEG em imagemCodificao com Perdas para SomRedundncia e IrrelevnciaDPCMMPEG udio#Mdulo 6 Compresso de Imagem e Som2Codificadores sem perdasCodificadores de smbolosProbabilsticosExemplo: codificador de HuffmanCodificadores de sequncias de smbolosRLE- Run- length encodingCom dicionrios : cdigos associados a sequncias de smbolos de comprimento varivelExemplos: LZ77 e Lempel-Ziv-Welch (LZW).

#Mdulo 6 Compresso de Imagem e SomRun-Length EncodingContar o nmero de ocorrncias de um smboloCodificar: smbolo e nmero de ocorrncias do smbolo

Ex1: AAAAAAAAAAAAABBBBAAAAA

Sequncia Codificada: A13 B4 A5

Aplicaes: em imagens binrias/bitonais (ex: digitalizao de um fax)#Mdulo 6 Compresso de Imagem e SomRLE- Run-length Encoding000000000000000000000000000011111111111111000000000000000000000000000000000001111111111111111110000000000000000000000000000001111111111111111111111110000000000000000000000000011111111111111111111111111000000000000000000000001111111111111111111111111111110000000000000000000011111110000000000000000001111111000000000000000000011111000000000000000000000011111000000000000000000011100000000000000000000000000111000000000000000000011100000000000000000000000000111000000000000000000011100000000000000000000000000111000000000000000000011100000000000000000000000000111000000000000000000001111000000000000000000000001110Digitalizao de uma imagem preto-branco(um fax, por exemplo)28 14 926 18 723 24 422 26 320 30 119 7 18 719 5 22 519 3 26 319 3 26 319 3 26 319 3 26 320 4 23 3 1RLE#Mdulo 6 Compresso de Imagem e SomLZ77Em 1977, Lempel e Ziv criaram uma tcnica de compresso de texto baseada na observao emprica de que num texto ocorrem com frequncia repeties.Utiliza uma janela deslizante com 2k caracteres e uma janela de observao de M carateres.AlgoritmoProcura na janela de observao uma sequncia contgua de carateres que exista na janela deslizante;Caso encontre, transmite o ndice na janela deslizante e o nmero de carateres;Caso no encontre transmite o primeiro carater da janela de observao#Mdulo 6 Compresso de Imagem e SomLZ77 Exemploabxyndooyndk84Texto a codificar: abxyndooyndkasa+4Sada do codificador: abxyndoo(4,3)kasaProblemas:Se as repeties ocorrerem muito afastadas o algoritmo no as codifica;Aumentar o tamanho da janela deslizante faz aumentar o nmero de bits necessrio para representar os ponteiros.

Janela DeslizanteJanela de Observao#Mdulo 6 Compresso de Imagem e SomCodificadores Baseados em DicionrioSupondo a existncia de um dicionrio adequado ao ficheiro a codificar.AlgoritmoProcurar no ficheiro ocorrncias no dicionrioTransmitir o ndice da ocorrncia no dicionrioProblemaComo criar o dicionrio?Como transmitir o dicionrio?#Mdulo 6 Compresso de Imagem e SomCodificador de LZW Lempel-Ziv-WelchAlgoritmoConstruo do dicionrio em simultneo com a codificao (dicionrio inicial rudimentar);Procura sequncias de smbolos no dicionrio;Devolve o ndice K da sequncia no dicionrio;Insere nova palavra no dicionrio: concatenao da sequncia com o smbolo seguinte da mensagem;ProblemasO dicionrio no pode ter um tamanho exagerado;O dicionrio pode esgotar-se antes incluir todas as sequncias e limitar a compresso.

#Mdulo 6 Compresso de Imagem e SomLZW exemploAlgoritmo de codificao do LZWDicionrio inicial: a, aa, ab, aba, abaa, abaab, abaaa,Mensagem a codificar: ...abaababbb...Qual a sequncia mais longa no dicionrio?... abaabaNo dicionrio com indce K=6. Sada do codificador .6.E acrescentar dicionrio com abaaba. Dicionrio: a, aa, ab, aba, abaa,abaab,abaaa, abaaba

Qual a sequncia mais longa no dicionrio?... abbb K=3.. Sada codificador:..63.Etc.Demonstrao com apllet Javahttp://www.cs.sfu.ca/CC/365/li/squeeze/LZW.html#Mdulo 6 Compresso de Imagem e SomExemplos de Codificadores sem Perdas para ImagemJBIG: compresso de imagem binria sem perdas (aplicaes de fax): RLE+Huffman. Norma de compresso de imagem sem perdas;JPEG-LS: Utiliza predio linear entre pixis adjacentes e codificao de Huffman sobre o erro;GIF: Utiliza o algoritmo LZW para conseguir a compresso. Palete de cores restringida a um mximo de 256; PNG: Utiliza predio linear e o algoritmo DEFLATE para comprimir o erro. O algoritmo DEFLATE inspirado no LZ77 e no LZW e de utilizao livre. Admite true color.

#Mdulo 6 Compresso de Imagem e SomDetalhar mais a informao de cada codificador.11Codificao com Perdas para ImagemEstrutura geral do codificador Exemplo do JPEG em imagem#Mdulo 6 Compresso de Imagem e SomCompresso com PerdasTransformaoquantificaoCodificaoentropiaTransformaoinversaReverso daquantificaoDescodificaoentropiaDisco

CanalTransm.Transformao: domnio da frequncia Quantificao: alocao de nmero bits diferentes por bandas de frequncia (udio, por exemplo)Cdigos entropia: Huffman ou aritmtico.#Mdulo 6 Compresso de Imagem e Som1611101624405161121214192658605514131624405769561417222951878062182237566810910377243555648110411392496478871031211201017292959811210010399Codificador JPEGTransformada : blocos 88 DCTQuantizao : aplicao de tabelas de valores de acordo com sensibilidade do sistema visual humanoPassos de valor baixo mais bitsPassos de valor elevado menos bits.

Tabela: passos de quantificaoExemplo: Imagem#Mdulo 6 Compresso de Imagem e Som -24 -20 -21 -27 -34 -33 -30 -26 -32 -28 -25 -28 -32 -54 -53 -55 -51 -59 -58 -41 -44 -64 -64 -61 -57 -68 -76 -69 -64 -72 -74 -71 -70 -75 -77 -74 -76 -77 -76 -76 -75 -78 -75 -76 -76 -70 -77 -81 -80 -75 -75 -77 -75 -73 -77 -75 -81 -80 -80 -81 -73 -81 -77 -80Bloco aps subtrair 128 -495 20 -8 0 10 -1 -3 3 135 22 -3 -9 7 1 -3 0 59 1 -1 -10 -9 -3 -1 3 17 -3 9 -3 -14 1 6 -4 -5 -7 14 3 -2 0 -1 0 2 -10 7 3 0 -2 2 -4 -2 -9 -1 3 3 3 1 -2 1 -7 0 -4 2 2 -1 -2blkf=round(dct2(bloco1));EspaoFrequnciaExemplo em Matlab: para um Bloco#Mdulo 6 Compresso de Imagem e Som15Exemplo: um Bloco -31 2 -1 0 0 0 0 0 11 2 0 0 0 0 0 0 4 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0xq=round(blkf./tabela)Codificador entropia-496 22 -10 0 0 0 0 0 132 24 0 0 0 0 0 0 56 0 0 0 0 0 0 0 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0Descodificador entropiaxq.*tabelaVerso(na frequncia) aproximada do original.Frequncia#Mdulo 6 Compresso de Imagem e SomCodificador de Entropia

Sequncia a codificar[ -31 2 11 4 2 -1 0 0 0 1 EOB ] Codificador Huffman aplicado ao bloco com varrimento em zig-zag#Mdulo 6 Compresso de Imagem e SomJPEG em Imagens a CoresUm codificador para cada plano de corRGB no eficienteTransformao para outro espao de corYCbCr (recomendao da norma)Uma imagem para a luminncia (Y) e 2 imagens para a crominncia (CbCr) . Sub-amostragem nas imagens de corExemplo: Para uma imagem 512512 Y com 512512, Cb com 256256 e Cr com 256256Dados entrelaados ou separados

#Mdulo 6 Compresso de Imagem e SomImagens a cores

#Mdulo 6 Compresso de Imagem e SomConverso de Espao de Cor

Red

GreenBlueYCbCrEm Matlab: Iycbcr= rgb2ycbcr(Irgb)#Mdulo 6 Compresso de Imagem e Som20Sub-Amostragem da CrominnciaA viso humana possui uma menor resoluo para as cores. Por este motivo, a informao de cor normalmente representada com uma menor amostragem espacial;Para representar a forma como a amostragem da Crominncia se relaciona com a amostragem da Luminncia utilizada a seguinte norma definida em conjuntos de 8 pixis com o seguinte arranjo.Pixel Y,Cr,CbPixel Cr,CbPixel YJ:a:bJ: Nmero de pixis na horizontal. Em geral 4;a: Nmero de pixis de crominncia na primeira linha;b: Nmero de pixis de crominncia adicionais na segunda linha.#Mdulo 6 Compresso de Imagem e SomSub-Amostragem da Crominncia4:4:44:2:24:1:14:2:0Para informao mais detalhada sobre a sub-amostragem da informao de crominncia, pode consultar o seguinte documento. #Mdulo 6 Compresso de Imagem e SomMostrar aqui a pgina 3 do documento http://dougkerr.net/pumpkin/articles/Subsampling.pdf para uma visualizao do tamanho dos pixis para os vrios formatos.22JPEG Exemplo

Original 600400 pixis 721KBytes#Mdulo 6 Compresso de Imagem e Som

JPEG ExemploJPEG Q=100% 177KBytes#Mdulo 6 Compresso de Imagem e Som

JPEG ExemploJPEG Q=50% 21KBytes#Mdulo 6 Compresso de Imagem e Som

JPEG ExemploJPEG Q=1% 5KBytes#Mdulo 6 Compresso de Imagem e SomJPEG Joint PhotographicExperts GroupEste o formato mais utilizado para armazenar imagens do tipo fotografiasRealiza uma codificao com perdas ou sem perdasO factor de qualidade permite reduzir o espao necessrio para o armazenamento sacrificando a qualidade Modos de operaoBaseline (sequencial): blocos codificados em sequncia e armazenados em sequnciaProgressivaHierrquica

#Mdulo 6 Compresso de Imagem e SomModos de operao

Sequencial Progressivo Hierrquico#Mdulo 6 Compresso de Imagem e SomOutros Formatos com Perdas para ImagemTIFF (tagged image file format): vrios tipos de imagem, com perdas e sem perdas;JPEG (Joint Photographic Experts Group): Compresso com perdas;JPEG2000: compresso com perdas e sem perdas.

#Mdulo 6 Compresso de Imagem e SomCodificao com Perdas para SomRedundncia e IrrelevnciaDPCMMPEG udio#Mdulo 6 Compresso de Imagem e SomRedundncia e Irrelevncia

Possibilidades de compresso:Diminuio da redundncia do sinal gerado pela fonte (implica conhecimento sobre o sinal da fonte).Diminuio da irrelevncia do sinal para o receptor (implica conhecimento sobre o receptor).#Mdulo 6 Compresso de Imagem e SomRedundnciaSinal de VozLimitado em bandaHarmnico: nas partes vocalizadas pode ser modelizado como uma soma de sinusides.Existem codificadores que tiram partido deste conhecimento para reduzir a redundncia existente no sinal de voz.#Mdulo 6 Compresso de Imagem e SomIrrelevnciaO sistema de audio humana possui algumas limitaes que podem ser exploradasLimitao em frequncia 20Hz - 20.000Hz.Limiar de audio.Mascaramento na frequncia.Mascaramento temporal.Percepo harmnica.Os sistemas de compresso de sinais de msica mais eficientes como por exemplo o MPEG tiram partido deste conhecimento sobre as limitaes do sistema auditivo.#Mdulo 6 Compresso de Imagem e SomCodificadores de VozO sinal de voz possui uma grande redundncia pelo que possvel tirar partido deste conhecimento prvioDuas tcnicas so usadas na compresso de vozReduo da redundncia usando predioReduo da irrelevncia usando quantizaoOs codificadores de voz dividem-se em duas categoriasDiferencias (bitrates at 32kbps)Vocoders (bitrates at 2kbps)#Mdulo 6 Compresso de Imagem e SomCodificao por Predio LinearA codificao por predio linear significa que possvel prever (com um erro pequeno) cada amostra de um sinal usando uma combinao linear das anteriores;Exemplo de preditor linear de ordem zero;

A predio da amostra atual obtida supondo que igual amostra anterior do sinal.O erro calculado como a diferena entre a prevista e a real.Para muitos sinais (voz, msica, imagem,etc) o sinal de erro apresenta um histograma mais concentrado em torno de zero tornando assim possvel usar um codificador de entropia como o cdigo de Huffman.

#Mdulo 6 Compresso de Imagem e SomCodificao por Predio Linear

Em geral a sada do preditor linear obtida como uma combinao linear das N anteriores amostras do sinal x(n).

#Mdulo 6 Compresso de Imagem e SomDPCM- Differencial Pulse Code ModulationNeste tipo de codificadores para alm do preditor linear que reduz a redundncia do sinal introduz-se um quantizador do sinal de erro.Esta tcnica permite reduzir alguma da irrelevncia no sinal uma vez que o ouvinte tolera algum rudo de quantizao sem grande impacto perceptual.Apenas o erro quantizado transmitido e a codificao realizada de modo a que o descodificador consiga obter o sinal de sada apenas a partir do sinal de erro quantizado.#Mdulo 6 Compresso de Imagem e SomDPCM- Differencial Pulse Code Modulation

#Mdulo 6 Compresso de Imagem e SomPreditor Linear de 1 Ordem Aplicao em Som

Preditor linear de 1 ordem aplicado a um sinal de voz. #Mdulo 6 Compresso de Imagem e SomPreditor Linear de 1 Ordem Aplicao em Imagem

#Mdulo 6 Compresso de Imagem e SomVocodersCodificadores especficos para sinais de Voz;No podem ser usados para codificar outros tipos de sinais;So baseados num modelo matemtico do trato vocal

Vdeo das cordas vocais a vibrar

#Mdulo 6 Compresso de Imagem e SomModelo Matemtico para a Produo de Voz

Os telemveis GSM utilizam a Regular-Pulse Excitation Long-Term Predictor;A norma G.728 utiliza Low Delay Code Excited Linear Prediction#Mdulo 6 Compresso de Imagem e SomCodificadores de VozNormaLB (Hz)CompressoFreq. de Amostragem(kHz)Resoluo(bits)Taxa de transmisso (kbps)QualidadeIMA-ADPCM200-20000ADPCM8-44.1432-350Telefone, CDG.711200 3200m-law PCM8864TelefoneG.72250 7000DPCM16464Rdio AMG.728200 3200low-delay CELP8216TelefoneG.723200 3200ADPCM885.3 ou 6.3H.323GSM200-3200RPE8?13TelefoneNos codificadores ADPCM (Adaptive DPCM), os coeficientes do preditor linear e o nmero de bits do quantizador, so adaptados ao longo do tempo s caractersticas do sinal de entrada.#Mdulo 6 Compresso de Imagem e SomG.xxx Normas da ITU (International Telecommunication Union)43Codificadores de udioOs codificadores para comprimir msica com alta qualidade apenas tiram partido da irrelevncia presente no sinal. Ou seja, removem do sinal as componentes tempo/frequncia que o ouvinte no conseguir notar;Existentes trs caractersticas / limitaes do sistema auditivo humano que os codificadores como o MP3 tiram partido apra conseguir os ganhos de compresso:Limiar auditivo;Mascaramento na frequnciaMascaramento no tempo.Devido necessidade de realizar uma anlise tempo/frequncia do sinal estes codificadores realizam sempre uma variante do espectrograma.

#Mdulo 6 Compresso de Imagem e SomLimiar de Audio

No necessrio codificar esta componente#Mdulo 6 Compresso de Imagem e Som

Mascaramento na FrequnciaNo necessrio codificar esta componente#Mdulo 6 Compresso de Imagem e SomMascaramento no Tempo

#Mdulo 6 Compresso de Imagem e SomCodificadores de udioNormaLB (Hz)CompressoFreq. de Amostragem(kHz)Taxa de transmisso (kbps)QualidadeAudio CD20 20000Linear PCM44.11411.2 (stereo)CDMPEG-1Layer I20 20000sub-band coding32 48256 448near CDMPEG-1Layer III20 20000sub-band coding32 48128 320CDMPEG-2/4AAC20 20000sub-bandcoding8 96arbitraryCDEm geral, o codificador AAC a 128kbps oferece a mesma qualidade perceptual que o codificador MP3 a 192kbps (estreo).#Mdulo 6 Compresso de Imagem e SomG.xxx Normas da ITU (International Telecommunication Union)48MPEG-I: udioTrs camadas (Layers) para compresso com nveis de complexidade diferente e taxas/rcios diferentesLayer 1: Modelo psico-acstico com mascaramento na frequncia 30 kbit/s (mono) a 448 kbit/s (stereo)Qualidade semelhante com CD para 256384kbit/sPhilips DCC (Digital Compact Cassette) 192kbit/s

#Mdulo 6 Compresso de Imagem e SomMPEG-I: udioLayer 2: Modelo psico-acstico acrescenta o mascaramento no tempo64 kbit/s a 256 kbit/s(stereo)DVDDAB (Digital udio broadcast)Qualidade semelhante ao CD para192 a 256 kbit/sLayer 3:Camada mais complexa. Maiores taxas de compresso 64 kbit/s (mono)Qualidade semelhante ao CD para 128 a 192 kbit/sCodificador com o maior atraso#Mdulo 6 Compresso de Imagem e SomCodificador MP3

#Mdulo 6 Compresso de Imagem e SomComparao entre MPEGQualidade : 5- perfeito; 4- ligeira diferenas; 3- ligeiro incmodo; 2- desagradvel; 1- horrvel.LayerTarget BitrateRatioQuality at 64 kbit/sQuality at 128 kbit/sTheoretic Min. DelayLayer 1192 kbit/s4:1------19msLayer 2128 kbit/s6:12.12.64+35msLayer 364 kbit/s12:13.63.84+59ms#Mdulo 6 Compresso de Imagem e SomTestes de AudioSinal de teste "castanets.wav"MP3 64kbpsMP3 32kbpsMP3 8kbpsMP3 45-85kbps

#Mdulo 6 Compresso de Imagem e SomBibliografiaKristo Lehtonen, "GSM Codec". pdfKarlheinz Brandenburg, "MP3 and AAC Explained", AES 17th International Conference on High Quality Audio Coding, 1999. pdfZe-Nian Li and Mark S. Drew, "Fundamentals of Multimedia", PEarson Education, 2004. Captulos 13 e 14.#Mdulo 6 Compresso de Imagem e Som