Você está na página 1de 105

VALDIR MARTINS

AVALIAO DA TAXA DE COMPRESSO


SEM PERDAS EM PROJEES DE
TOMOGRAFIA COMPUTADORIZADA

Dissertao apresentada como requisito parcial


obteno do grau de Mestre em Informtica,
Curso de Ps-Graduao em Informtica, Setor
de Cincias Exatas, Universidade Federal do
Paran.

Orientador: Prof. Eduardo Parente Ribeiro

CURITIBA
2002
Ministrio da Educao
Universidade Federal do P a r a n
Mestrado em Informtica

PARECER

Ns, abaixo assinados, membros da Banca Examinadora da defesa de


Dissertao de Mestrado em Informtica, do aluno Valdir Martins, avaliamos o trabalho
intitulado. "Avaliao da taxa de compresso sem perdas em projees de tomografia
computadorizada", cuja defesa foi realizada no dia 30 de agosto de 2002, s dez horas, no
anfiteatro B do Setor de Cincias Exatas da Universidade Federal do Paran. Aps a avaliao,
decidimos pela aprovao do candidato.

Curitiba, 30 de agosto de 2002.

'rof. Dr. Eduardo Parente Ribeiro


DELT/UFPR - Orientador

Prof.ODrl Humberto Gamba


CEFET7PR - Membro Externo

Prof. Dr. Hlio Pedrini


DINF/UFPR
AGRADECIMENTOS

Agradeo primeiramente a Deus pela oportunidade concedida e por nos ajudar a

vencer as dificuldades e obstculos.

Agradeo a minha esposa e filhos pelo amor, incentivo, pacincia e compreenso

pelas horas ausentes.

Ao meu orientador, professor Eduardo Parente Ribeiro, pela segurana como

orientou e grande contribuio dada na realizao deste trabalho.

Ao colegas mestres, Ionildo e Luciano, pelas contribuies e disponibilizao de

informaes como programas e imagens, utilizadas em suas teses, as quais possibilitaram a

realizao dos experimentos e finalizao deste trabalho.

Agradeo ainda aos demais colegas do curso de ps-graduao em informtica, aos

professores, amigos e todos aqueles que de alguma forma deram a sua contribuio.
SUMRIO

LISTA DE FIGURAS V

LISTA DE TABELAS VU

RESUMO vm
ABSTRACT IX

1. INTRODUO 1
1.1 MOTIVAO 2
1.2 HISTRICO 3
1.3 TRABALHOS RELACIONADOS 6
1.4 ESTRUTURADA DISSERTAO 7
2. TOMOGRAFIA COMPUTADORIZADA (CT) 9
2.1 TOMOGRAFIA DE RAIO-X 9
2.2 PADRO D I C O M 10
2.3 NECESSIDADE DE ARMAZENAGEM 11
3. COMPRESSO DE IMAGENS 14
3.1 MODELO GENRICO DE COMPRESSO DE IMAGENS 16
3.2 CLASSIFICAO DA COMPRESSO DE IMAGENS 17
3.3 TAXA DE COMPRESSO 18
3.4 COMPRESSO COM PERDAS E COMPRESSO SEM PERDAS 19
3.5 TIPOS DE CODIFICAO 20
3.5.1 Codificao de Lempel-Ziv (LZ) 21
3.5.2 Codificao de Huffman 25
3.5.3 Codificao Aritmtica 26
3.5.4 Codificao Preditiva 30
3.5.5 Codificao por Transformada 31
3.5.6 Codificao Lossless JPEG com Huffman 33
4. METODOLOGIA 38
4.1 INTRODUO 38
4.2 IMAGENS ESENOGRAMAS UTILIZADOS 40
4.3 MTODOS DE COMPRESSO 43
5. RESULTADOS 45
5.1 COMPRESSO DE SENOGRAMAS 45
5.2 COMPRESSO DE SENOGRAMA COM ESCALAS DE RUDOS 49
5.3 COMPRESSO DOS SENOGRAMAS COM RUDO PADRO 50
5.4 COMPRESSO DE IMAGENS 52
5.5 COMPARATIVO DE COMPRESSO IMAGENS X SENOGRAMAS 54
6. CONCLUSO 58

APNDICE 1 - PADRES DE COMPRESSO DE IMAGEM 61


l.l PADROGZIP 61
1.2 PADRO J P E G 62
1.3 TRANSFORMADA WAVELET REVERSVEL 65
APNDICE 2 - FORMATOS DE IMAGEM 70
2.1 FORMATO B M P 70
2.2 FORMATO P B M 74
2.3 FORMATO R A W 77

APNDICE 3 - CODIFICAO RUN LENGTH (RLE) 78

APNDICE 4 - IMAGENS E SENOGRAMAS UTILIZADOS 82

REFERNCIAS BIBLIOGRFICAS 94
LISTA DE FIGURAS

Figura 2.1 - Geometria da obteno das projees em CT 9


Figura 3.1 - Modelo genrico de compresso de imagens [MEL94] 16
Figura 3.2 - Taxionomia dos mtodos de compresso 18
Figura 3.3 - Representao do processo de codificao aritmtica 29
Figura 3.4 - Esquema de compresso usado nos experimentos 33
Figura 4.1 - Esquema de gerao de senogramas pelo programa simulador de projees 39
Figura 4.2 - Mtodos de compresso utilizados para as imagens e senogramas 39
Figura 4.3 - Imagem "Phantom" gerada por software 41
Figura 4.4 - Senograma do "Phantom" gerada por software 41
Figura 5.1 - Grfico comparativo da compresso dos senogramas reais, separados em 8 bits.46
Figura 5.2 - Grfico comparativo da compresso dos senogramas reais com 16 bpp 47
Figura 5.3 - Grfico comparativo dos senogramas comprimidos 48
Figura 5.4 - Grfico comparativo do senograma "Abdom" com escala percentual de rudo. ..50
Figura 5.5 - Grfico comparativo dos senogramas com rudo padro 51
Figura 5.6 - Grfico comparativo das imagens de TC comprimidas 52
Figura 5.7 - Grfico comparativo da imagem "Abdom" com escalas de rudo 53
Figura 5.8 - Grfico da taxa de compresso comparado ao tamanho original da imagem 55
Figura 5.9 - Grfico das mdias das compresses com e sem rudo 56
Figura A2.1 - Formato BMP na verso inicial 70
Figura A2.2 - Formato BMP a partir da segunda verso 70
Figura A3.1 - Codificao RLE (a) em ziguezague, (b) por linha e (c) por coluna 80
Figura A3.2 - Diferentes formas de codificao do RLE 81
Imagem A4.1 - Senograma "DenteOl" e imagem reconstruda de um dente 83
Imagem A4.2 - Senograma "Dente02" e imagem reconstruda de um dente 84
Imagem A4.3 - Senograma "Dente03" e imagem reconstruda de um dente 84
Imagem A4.4 - Senograma "Abdom" e imagem reconstruda de um abdomem 85
Imagem A4.5 - Senograma "Brain" e imagem reconstruda de um crebro 85
Imagem A4.6 - Senograma "Head" e imagem reconstruda de uma cabea 86
Imagem A4.7 - Senograma "Hernia" e imagem reconstruda de vrtebra com hrnia 86
Imagem A4.8 - Senograma "Phantom" e imagem de testes representando uma cabea 87
Imagem A4.9 - Senograma "Trax" e imagem reconstruda de um trax 87
Imagem A4.10 - Senograma "Abdom" e imagem com percentual de 0,1% de rudo 88
Imagem A4.11 - Senograma "Abdom" e imagem com percentual de 0,2% de rudo 88
Imagem A4.12 - Senograma "Abdom" e imagem com percentual de 1% de rudo 89
Imagem A4.13 - Senograma "Abdom" e imagem com percentual de 2% de rudo 89
Imagem A4.14 - Senograma "Abdom" e imagem com percentual de 10% de rudo 90
Imagem A4.15 - Senograma "Abdom" e imagem com percentual de 20% de rudo 90
Imagem A4.16 - Senograma "Abdom" e imagem com percentual de 25% de rudo 91
Imagem A4.17 - Senograma "Abdom" e imagem com percentual de 33% de rudo 91
Imagem A4.18 - Senograma "Abdom" e imagem com percentual de 50% de rudo 92
Imagem A4.19 - Senograma "Abdom" e imagem com percentual de 100% de rudo 92
Imagem A4.20 - Senogramas com insero de percentual padro de 1% de rudo 93
LISTA DE TABELAS

Tabela 3.1 - Contedo da janela LZ77 e da Entrada durante a compresso 23

Tabela 3.2 - Contedo da sada a cada passo da compresso 24

Tabela 3.3 - Descompresso dos dados do exemplo por LZ77 25

Tabela 3.4 - Representao dos smbolos e seus respectivos intervalos iniciais 28

Tabela 3.5-Processo de codificao do exemplo de codificao aritmtica 29

Tabela 3.6 - Processo de decodificao do exemplo de codificao aritmtica 30

Tabela 3 .7 - Proditores para o Lossless JPEG 34

Tabela 3.8 - Tabela de categorias e valores de diferena 35

Tabela 5.1 - Taxa de compresso de senogramas reais, separados parte alta e parte baixa 45

Tabela 5.2 - Compresso de senogramas reais, com 16 bpp, entre diferentes mtodos 47

Tabela 5.3 - Compresso dos senogramas simulados 48

Tabela 5.4 - Compresso para o senograma "Abdom" com insero de rudo 49

Tabela 5.5 - Compresso do senogramas com rudo padro 51

Tabela 5.6 - Compresso das imagens de TC 52

Tabela 5.7 - Compresso para a imagem "Abdom" com insero de rudo 53

Tabela 5.8 - Taxa de compresso considerando o tamanho original da imagem 54

Tabela 5.9 - comparao entre as mdias das compresses 56

Tabela A2.1 - Cabealho de arquivo do formato BMP 71

Tabela A2.2 - Cabealho de imagem do formato BMP 72

Tabela A2.3 - Continuao do cabealho de imagem do formato BMP 72

Tabela A2.4 - Identificador de tipo para os formatos PBM, PGM e PPM 75


RESUMO

Este trabalho apresenta um estudo de caso na rea de compresso sem perdas de projees de

tomografia computadorizada, chamadas senogramas. A principal vantagem em se comprimir

o senograma ao invs da imagem reconstruda consiste em se preservar os dados originais, o

que possibilita sua reutilizao futura com outros algoritmos de reconstruo. Os mtodos que

apresentam perdas geralmente possuem melhores taxas de compresso, mas podem prejudicar

o processo de reconstruo. So avaliados trs mtodos de compresso sem perda:

transformada wavelet de inteiros reversvel, LJPG (Lossless JPG - Joint Photographic Experts

Group), e GZIP (Gnu ZIP), que o padro de compresso utilizado pelo projeto GNU.
ABSTRACT

This work presents a case study of lossless compression of computerized tomography

projections, called sinograms. The main advantage of compressing sinogram in the place of

reconstructed imaged lies in the preservation of the original data that allows its future

reutilization with others reconstruction algorithms. Lossy image compression methods usually

have better compression ratios, but they may alter the reconstrution of the original image.

Three methods are considered: the reversible integer wavelet transform which allow lossless

image compression; LJPG (Lossless JPG - Joint Photographic Experts Group), for lossless

compression of still images; and GZIP (Gnu ZIP), that is the compression standard used by

GNU project.
1

1. Introduo
A tomografia computadorizada (Computed Tomography - CT) hoje largamente

utilizada e tornou-se uma ferramenta indispensvel em hospitais, clnicas e empresas de todo

o mundo. As projees de tomografia computadorizada so obtidas com medidas realizadas

externamente, a partir de diferentes ngulos de um corpo. A partir destas projees, os dados

originais devem ser reconstrudos utilizando-se tcnicas apropriadas. Vrias tcnicas e

algoritmos esto disponveis nos dias de hoje, permitindo a reconstruo da imagem a partir

das projees obtidas.

Dado ao grande volume de dados gerados nas imagens digitais, torna-se

imprescindvel a necessidade de se aplicar alguma tcnica de compresso de dados, visando

facilitar o armazenamento e a transmisso, mas garantindo a expanso e permitindo o

processamento desses dados.

Atravs do processo de compresso de dados podemos reduzir a quantidade de bits

necessrios para representar uma determinada quantidade de informao. Vrios mtodos de

compresso de dados sem perdas (reversveis) e com perdas (irreversveis) tm sido

propostos na literatura. Cada um desses mtodos procura explorar determinadas

caractersticas da imagem. A escolha do mtodo apropriado depende do conhecimento da

teoria do mtodo, bem como, um prvio conhecimento das caractersticas presentes na

imagem. Desta maneira possvel alcanar maiores taxas de compresso.

O objetivo deste trabalho consiste, ento, em estudar e avaliar alguns dos mtodos

de compresso de dados que devero ser aplicados nas imagens e nas projees de

tomografia computadorizada, investigando o comportamento de cada um deles sobre estes

tipos de imagens, assinalando suas vantagens e desvantagens.


2
Usaremos, portanto, nesta investigao, alguns dos mtodos mais conhecidos em

compresso de dados: GZIP (Gnu ZIP), LJPG (Lossless JPEG) e outros mtodos

recentemente implantados: Transformada S (Wavelet de Haar) e Transformada S+P (Said e

Pearlman) [SANOl].

1.1 Motivao
A motivao para este trabalho veio da necessidade de pesquisas sobre

investigao, implementao e avaliao de algoritmos para compresso sem perdas, de

projees de tomografia computadorizada e suas respectivas imagens, usando a transformada

discreta wavelet {discrete wavelet transform - DWT). Como trata-se de um mtodo

relativamente novo, ser realizada uma comparao com mtodos j conhecidos e

consagrados pelo uso, objetivando o estudo do comportamento destes mtodos.

Alguns trabalhos foram desenvolvidos na rea de compresso de imagens

utilizando mtodos baseados em wavelets. Entretanto, foram desenvolvidos poucos trabalhos

utilizando a transformada wavelet sem perdas. Os trabalhos envolvendo compresso de

imagens de tomografia computadorizada geralmente so realizados utilizando imagens j

reconstrudas.

Neste trabalho, alm da utilizao de imagens j reconstrudas, sero utilizadas as

projees de tomografia computadorizada com objetivo de reduzir a quantidade de

informao necessria e mantendo a integridade dos dados. Os dados originais tambm sero

preservados, o que permitir a aplicao de outras tcnicas de reconstruo, as quais tambm

so tpicos de constante pesquisa. Como estas informaes no podem sofrer perdas no

processo de compresso e descompresso, devero ser adotados mtodos de compresso que

permitam que os dados possam ser reconstrudos para a sua forma original. Para tal, sero

utilizadas a transformada wavelet de inteiros (transformada S e transformada S+P) , o mtodo


3
GZIP e o Lossless JPEG. Mtodos que resultam em perdas de informaes no so aceitos

para este tipo de dados, pois a perda de informaes pode prejudicar a reconstruo e

consequentemente a anlise e o diagnstico a partir da imagem final.

O interesse nesta investigao abordar apenas as tcnicas de compresso de

imagens mdicas e seus respectivos senogramas.

1.2 Histrico
O processamento de imagens uma rea de interesse j faz algumas dcadas,

sendo ainda de interesse crescente, includo aqui a rea de compresso de dados. Conforme

descrito em [MAR99], uma das primeiras aplicaes em processamento de imagens remonta

do comeo do sculo, onde buscava-se formas de aprimorar a qualidade de impresso de

imagens digitalizadas transmitidas atravs do sistema Bartlane de transmisso de imagens por

cabo submarino entre Londres e Nova Iorque. Os primeiros sistemas Bartlane, no incio da

dcada de 20, codificavam uma imagem em cinco nveis de intensidade distintos. Esta

capacidade seria expandida, j em 1929, para 15 nveis ao mesmo tempo em que era

desenvolvido um mtodo aprimorado de revelao de filmes atravs de feixes de luz

modulados por uma fita que continha informaes codificadas sobre a imagem.

Porm, o grande impulso para esta rea viria cerca de trs dcadas mais tarde, com

o advento dos primeiros computadores digitais de grande porte. J o interesse pelas tcnicas

de compresso de imagens remonta a quase meio sculo atrs, na poca, utilizando tcnicas

analgicas.

Em 1986, a necessidade de um padro internacional para compresso de imagens

estticas resultou na formao do JPEG, hoje, formalmente conhecido como ISO/IEC

JTC1/SC29/WG1.
4
Em relao s transformadas wavelets, [SANOl] descreve um histrico o qual

reproduzimos a seguir.

A primeira meno de wavelets aparece no apndice da tese de Alfred Haar em

1909 [GRA95], Uma propriedade da wavelet de Haar que ela possui um suporte compacto,

ou seja, ela se anula fora de um intervalo finito. As wavelets de Haar no so diferenciveis

continuamente, o que limita de certa forma sua aplicao. A transformada wavelet o

resultado do trabalho de um grande nmero de pesquisadores. Um breve histrico sobre as

wavelets apresentado por JAWERTH e SWELDENS [JAW94] e GRAPS [GRA95], da qual

segue um breve resumo.

Nos anos 30, vrios grupos pesquisavam independentemente a representao de

funes usando funes de base de escala varivel, chamadas funes de base de Haar. O

fsico Paul Levy pesquisou movimentos Brownianos, um tipo de sinal randmico.

Littlewood, Paley e Stein descobriram uma funo que pode variar em escala e conservar

energia quando computando a energia da funo.

Ainda nos anos 30, a comunidade matemtica percebeu que as tcnicas

desenvolvidas por Fourier no eram muito adequadas para a soluo de muitos problemas e

recorreram para s chamadas tcnicas de Littlewood-Paley, freqentemente substitutas

eficientes.

Durante os anos 50 e 60, desenvolveram poderosas ferramentas para solucionarem

equaes diferenciais parciais e equaes integrais, e perceberam que elas combinavam com

a teoria de Caldern-Zygmund, uma rea de anlise harmnica.

No incio dos anos 80, Strmberg descobriu as primeiras wavelets ortogonais.

Independente dos desenvolvimentos em anlise harmnica, o fsico Alex Grossmann e o

engenheiro Jean Morlet [GR084], juntamente com seus colegas de trabalho estudaram a
5
transformada wavelet em sua forma contnua. Eles definiram wavelets em um contexto de

fsica quntica. Surgia a teoria de "frames".

Em seguida, Yves Meyer, matemtico Francs, e seus colaboradores perceberam

que as ferramentas da teoria de Caldern-Zygmund, em particular as representaes de

Littlewood-Paley, poderiam levar a uma concepo unificada de muitos dos resultados em

anlise harmnica. Comearam tambm a compreender que aquelas tcnicas poderiam

substituir as sries de Fourier em aplicaes numricas.

Alex Grossmann e Jean Morlet sugeriram a palavra wavelet para os blocos

construtivos, e o que antes se chamava teoria de Littlewood-Paley, passou a ser chamado

teoria wavelet.

Pierre-Gilles Lemari e Yves Meyer, independente de Strmberg, construram

novas expanses de wavelet ortogonal. Em 1985, Stephane G. Mallat [MAL89] introduziu o

conceito de anlise em multiresoluo, dando um novo impulso a essa teoria. Ele descobriu

algumas relaes entre filtros de quadrature espelhada (quadrature mirror filters - QMF),

algoritmos piramidais e bases de wavelets ortonormais. Inspirado em parte desses resultados,

Yves Meyer construiu a primeira wavelet no trivial. Ao contrrio da wavelet de Haar, as

wavelets de Meyer so diferenciveis continuamente; todavia elas no tm suporte compacto.

A introduo da anlise em multiresoluo e a transformada wavelet rpida por Mallat e

Meyer forneceu a conexo entre filtros sub-bandas e wavelets. Alguns anos depois, em 1988,

usando o trabalho de Mallat, Ingrid Daubechies [DAU88] construiu uma famlia de wavelets

com suporte compacto.

Desde ento, muitos trabalhos tm sido desenvolvidos em diferentes reas, sendo

uma delas, as aplicaes em compresso de imagens digitais.


6

1.3 Trabalhos Relacionados


Neste item, sero apresentados alguns dos trabalhos mais recentes na rea de

compresso de imagens baseados em diversos padres. Os algoritmos de compresso de

imagens propostos nestes trabalhos so com perdas e sem perdas.

No trabalho de [AGOOO], Estudo de padres de Compresso de Imagens para

Aplicaes VLSI (Very Large Scale Integration), realiza estudo entre vrios mtodos de

compresso de imagens, tanto para abordagens sem perdas como abordagens com perdas. O

objetivo, porm, no est no aspecto comparativo entre estes vrios mtodos, mas servir de

introduo aos algoritmos discutidos no trabalho, assim como discusso de algumas

arquiteturas possveis para a implementao em hardware de alguns dos algoritmos

apresentados.

Em [MEL94] realiza-se uma avaliao da utilizao da transformada wavelet na

compresso de imagens. Traz tambm uma comparao dos resultados obtidos no trabalho

com o mtodo de compresso JPEG para algumas imagens. Nos experimentos realizados,

verifica uma disparidade grande entre as taxas de compresso do mtodo JPEG,

comercialmente disponvel e o mtodo da Transformada Wavelet. Conclui que preciso

avaliar cuidadosamente o processo proposto em seu trabalho.

No trabalho de [SAN01] est descrito que, recentemente, o algoritmo chamado

SPIHT (Set Partitioning in Hierarchical Trees) foi proposto por Said e Pearlman [SAI96], o

qual uma implementao mais eficiente do esquema de codificao zerotree do Shapiro

[SHA93]. Este algoritmo permite codificar uma imagem com perdas ou sem perdas. Eles

usam um esquema de multiresoluo em pirmide o qual melhorado via codificao

preditiva atravs da transformada S+P (transformada Seqencial + Predio). O algoritmo

SPIHT difere de outros mtodos no fato de que a predio usada durante (em vez de
7
depois) a seqncia de transformaes recursivas e, consequentemente, pode usar

informaes que no esto disponveis depois que a imagem transformada. O algoritmo

SPIHT baseado em trs estgios: (/') aplicao da tranformada S+P para decompor a

imagem, (ii) uma tcnica de codificao baseada em zerotree e (iii) codificao aritmtica

adaptativa dos dados residuais.

Esta tcnica produz significativamente melhor compresso do que os mtodos de

compresso wavelet tradicional com similar complexidade computacional, e representa o

estado da arte em compresso de imagens de propsito geral.

A transformada S (Seqencial) utilizada nesta tcnica uma adaptao da

transformada de Haar para mapear os valores de inteiros para inteiros, permitindo assim a

reconstruo exata das informaes.

Calderbank [CAL97] apresenta duas abordagens para construir transformadas

wavelet de inteiros para inteiros os quais podem ser usadas para compresso sem perdas. Na

primeira parte do trabalho apresentado uma adaptao do pr codificador desenvolvido por

Laroia, Tretter e Farvardin. Na segunda abordagem apresentado como conseguir uma

implementao reversvel usando o lifting scheme proposto por Sweldens [SWE97],

1.4 Estrutura da Dissertao


Este trabalho est estruturado em seis captulos. No primeiro captulo esto

descritos a motivao, um histrico sobre compresses e transformadas wavelets e os

trabalhos relacionados.

No segundo captulo, inicialmente apresentada uma teoria sobre tomografia

computadorizada. Em seguida, comenta-se o padro DICOM, utilizado para identificao,

arquivamento e recuperao de imagens mdicas, entre elas, as de tomografia


8
computadorizada e, finalizando o captulo, as necessidades advindas da armazenagem dessas

imagens.

O captulo terceiro comenta a necessidade de compresso de imagens, dada ao

grande volume existente nos dias atuais. Esto includos tambm comentrios sobre o modelo

genrico de compresso, formas de classificao e medidas de compresso. Finalizando o

captulo, esto descritos alguns mtodos e algoritmos de compresso de dados: Codificao

de Lempel-Ziv (LZ), Codificao de Huffinann, Codificao Aritimtica, Codificao

Preditiva, Codificao por Transformada e Lossless JPEG.

O quarto captulo descreve a metodologia utilizada para a realizao dos

experimentos deste trabalho, dentro do objetivo, que a realizao de testes de compresso

sobre imagens de tomografia computadorizada e imagens reconstrudas, utilizando vrios

mtodos de compresso.

No captulo cinco esto descritos os resultados obtidos com os experimentos,

dentro das seguintes abordagens: taxas de compresso para senogramas reais; taxas de

compresso para imagens e senogramas sem insero de rudos; taxas de compresso para

senogramas reais com insero de rudos em escalas percentuais; taxas de compresso em

uma imagem e um senograma, com insero de rudos em escalas percentuais; comparativo

de compresso entre imagens e senogramas com e sem insero de rudos.

Por fim, no sexto captulo, esto a concluso e apresentao de propostas para

trabalhos futuros.

Visando complementar as vrias teorias estudadas, so apresentados nos apndices,

teorias sobre padres de compresso de imagens, onde esto comentados os mtodos GZIP,

LJPG, transformadas wavelets e formatos de imagens utilizadas neste trabalho.


9

2. Tomografia Computadorizada (CT)

2.1 Tomografia de Raio-X


Em de [RIB96] foi descrito que a tomografia computadorizada um mtodo de

radiografia que foi introduzido em 1972 para aplicaes neurolgicas, mas rapidamente com

o avano da tecnologia, permitiu examinar outras partes do corpo tambm. O primeiro

tomgrafo computadorizado foi construdo por Godfrey N. Hounsfield, feito que lhe

conferiu, junto com Allan McLeod Comarck, o Prmio Nobel de Fisiologa e Medicina em

1979. A tomografia de raio-X tem desde ento se estendido tambm em aplicaes

industriais.

O termo tomografia usado para se referir a qualquer mtodo de obteno de

imagem do interior de um corpo ou objeto a partir de medidas realizadas externamente. O

termo "computerized tomography", ou somente CT, caiu no uso comum e at hoje se refere

ao tomgrafo de raio-X. Existem outras tcnicas de tomografia baseadas em outros princpios

fsicos como: tomografia de ressonncia magntica, Magnetic Ressonance Imaging (MRI), a

tomografia de emisso de positrons, Positron Emission Tomography (PET), a tomografia

com ultra-som e tomografia de impedncia eltrica, Electrical Impedance Tomography (EIT).

Figura 2.1 - Geometria da obteno das projees em CT.


10
A seguir apresenta-se um modelo simplificado para CT de raio-x [JAI89], Seja

fix,y) o coeficiente de absoro do objeto no ponto numa faixa para algum valor fixo de

z. Assumindo que os raios-x consistem de um feixe infinitamente fino e paralelo, a

intensidade do feixe detectado do outro lado do objeto dado por

(2.1)

onde I0 a intensidade do feixe incidente, Lo caminho do raio eu a distncia ao longo de

L, conforme mostrado na figura 2.1.

Considerando projees em muitas direes diferentes, possvel reconstruir as

caractersticas de densidade do corpo para cada ponto ou pequena regio no interior do corpo.

A imagem obtida com a transformada de Radon de uma distribuio, que a

imagem que se obtm ao empilhar as linhas correspondentes s projees obtidas para os

vrios ngulos, muitas vezes chamada de senograma.

A partir das projees, obtidas com as medidas realizadas externamente ao corpo,

deve-se reconstruir esses dados originais utilizando alguma tcnica de reconstruo. Existem

vrios algoritmos e tcnicas que permitem a reconstruo da imagem a partir das projees

obtidas. As tcnicas que permitem a reconstruo da imagem tambm tm sido tpicos de

constantes pesquisas [SANO 1 ].

2.2 Padro DICOM


Em 1985, duas organizaes norte-americanas, uma da rea mdica (American

College of Radiology) e outra da rea de equipamentos mdicos (National Electrical

Manufacturers Association) desenvolveram conjuntamente um padro para o intercmbio

eletrnico de imagens que no dependesse do tipo de computador onde residem os dados.

Esse padro recebeu o nome de ACR-NEMA e foi o primeiro a ser adotado pelos fabricantes
11
de aparelhos geradores de imagens radiolgicas, permitindo assim uma conexo mais fcil a

computadores de uso geral. Posteriormente, foi criado, a partir dele, o padro DICOM

{Digital and Communications in Medicine) [DIC01], o qual foi adotado muito mais

amplamente e que governa tambm as informaes de texto (nome, nmero de registro do

paciente, laudo radiolgico, etc.). Usando-se um nico comando, o DICOM permite que o

mdico recupere o registro completo de imagem mdica de um determinado paciente. O

DICOM define no somente como a imagem representada digitalmente dentro do

computador (formato de imagem), bem como ele deve ser arquivado. So enormes os

benefcios trazidos por sistemas desse tipo, pois os programadores podem simplesmente

incorporar o padro em seus programas, ao invs de ter que desenvolver um novo programa a

partir do zero. Alm disso, eles no precisam se preocupar com as diferenas entre os vrios

modelos de aparelhos de raios-X, tomografia, ultra-som, medicina nuclear, etc., ou com os

computadores onde rodam os seus programas. Vrias organizaes, como o American

College of Cardiology e o American College of Pathology esto adotando o DICOM como

padro, fazendo com que um largo espectro de imagens mdicas seja padronizado e

disponveis atravs de alguns comandos simples [HOG98],

2.3 Necessidade de Armazenagem


No manejo de informao dentro de um hospital, por meio de uma rede de

computadores, surgiu inicialmente o conceito de Sistemas de Informao Radiolgica - RIS

(Radiology Irrformation Systems) demonstrando que possvel utilizar sistemas

computadorizados para melhorar o gerenciamento dos pacientes, gerao e distribuio de

relatrios, facilidades de utilizao dos recursos disponveis, localizao dos filmes, e rotinas

de funcionamento do setor de radiologia. Freqentemente, estes sistemas so integrados ao

Sistema de Informao Hospitalar - HIS (Hospital Information Systems). Embora o RIS


12
resolva a parte de gerenciamento de dado, porm no trabalha com as prprias imagens, na

dcada de 80, este conceito foi ampliado para incluir o que se chama de PAC S (Picture

Archiving and Communication System), ou Sistemas de Arquivamento e Comunicao de

Imagens. E um sistema que permite, como o nome diz, armazenagem e recuperao das

imagens em uma rede de computadores.

Atualmente, a maior parte das imagens so registradas e armazenadas em filme.

Igualmente imagens como CT e MRI, as quais so inerentemente digitais, so transferidas

para o filme depois que os tcnicos a tenham otimizado para a visualizao. Ocasionalmente

como no caso de estudos ultrasonogrficos, as imagens so transferidas para fitas de vdeo

para posterior reviso e interpretao.

O armazenamento de filmes requer um grande espao fsico em departamentos de

radiologia. Em geral os departamentos de radiologia tm a capacidade de armazenar filmes

somente para pacientes que tenham sido estudados nos ltimos 6 a 12 meses. Estudos antigos

so retidos por no mnimo 7 anos e estocados em um poro por exemplo. Alm do espao

fsico, as imagens sofrem deteriorao ao longo dos anos, uma vez que o filme qumico perde

a qualidade. Outro problema o perigo do armazenamento, pois trata-se de material

altamente imflamvel. A aquisio digital de todas as imagens dentro de um hospital, alm de

resolver os problemas de deteriorao de imagens e guarda de material inflamvel, oferece

um excitante panorama de reduo do espao fsico requerido, custo de material, reduo do

trabalho manual tradicional de manuseio de filmes, rpida recuperao de imagens via pedido

de informao base de dados e alta velocidade de transmisso de imagens atravs de redes.

O desenvolvimento dos sistemas PACS uma rea ativa de pesquisa em

informtica mdica. Um nmero de complexos problemas tiveram que ser resolvidos antes de

por em prtica, incluindo padronizao de transmisso de imagens e formatos de


13
armazenagem. Armazenar todos os dados de imagens mdicas digitais pode criar um grande

problema de gerenciamento, que difcilmente pode ser resolvido por mtodos que no

envolvam computao [ALM98].

Com a expanso da imagem digital em termos de qualidade, tamanho e

aplicabilidade, surge a necessidade de desenvolver mecanismos de compresso de forma a

tornar vivel a troca deste tipo de informao.

Todo o esforo para reduzir o espao ocupado pela imagem tem de levar em

considerao a sua qualidade. Dessa forma, a interoperacionalidade de sistemas relacionados

com a transferncia de imagem digital (tal como o DICOM) conseguida atravs da melhor

relao do binmio nvel de compresso/qualidade.


14

3. Compresso de Imagens
Grandes hospitais e clnicas de diagnstico por imagem realizam milhares de

procedimentos de imagens mdicas, podendo gerar centenas ou at milhares de gigabytes de

dados de imagens por ano. Existem tcnicas de computao que podem comprimir

informaes como a compresso de dados, que geralmente aproveita a redundncia na

informao. A compresso tpica para dados geralmente na faixa de 2 ou 3 para 1. Algumas

tcnicas de alta compresso de imagens, conhecidas como "com perda", conseguem

propores de at 50 para 1, mas podem distorcer e alterar a imagem e prejudicar o

diagnstico em caso de estruturas muito pequenas na imagem (bordas, microcalcificaes)

[ALM98],

A compresso de uma imagem possvel porque as imagens, em geral, apresentam

um alto grau de coerncia, que se traduz em uma redundncia de informao quando

codificada. Considere, por exemplo, um elemento qualquer de uma imagem no formato

matricial. Provavelmente, a cor desse elemento ser igual a dos elementos vizinhos, porque

h uma grande probabilidade de todos eles pertencerem a um mesmo objeto da imagem. Caso

isso no ocorra, certamente uma relao mais complexa existir na imagem. Baseado neste

fato, os mtodos de compresso visam produzir, atravs da reduo ou eliminao de

redundncia, um cdigo mais compacto que preserve as informaes contidas na imagem

[SAN01],

Em uma imagem digital existem, basicamente, trs tipos de redundncias de dados

que podem ser identificadas e exploradas: redundncia de cdigo, redundncia interpixel e

redundncia psicovisual, j estudadas e relatadas em alguns trabalhos [SAN01, AGOOO],


15
Na redundncia de cdigo, o processo de codificao determina um cdigo binario

com tamanho varivel. Aos valores que ocorrem mais freqentemente na imagem, atribudo

um cdigo menor (em nmero de bits), enquanto que os valores que so menos freqentes,

um cdigo maior atribudo.

A redundncia interpixel permite prever razoavelmente o valor de um pixel a partir

do valor do pixel de seus vizinhos, com isso a informao dos pixels relativamente

pequena. Esta correlao espacial resulta da relao estrutural ou geomtrica entre os objetos

na imagem.

A redundncia psicovisual ocorre pelo fato de algumas informaes terem menos

importncia do que outras informaes em um processamento visual normal. Essas

redundncias podem ser eliminadas sem comprometer a qualidade da imagem. Todavia, a

eliminao de redundncia psicovisual resultar numa perda de informao, o que leva a um

processo de compresso com perdas.

Dependendo da rea de aplicao, as informaes que se deseja preservar podem

ser de natureza objetiva ou subjetiva. No primeiro caso o mtodo de compresso deve

permitir a recuperao exata dos dados da imagem original. Diz-se, nesse caso, que o

processo reversvel, ou que se tem uma compresso sem perda (lossless). Caso contrrio,

ele chamado irreversvel, ento se tem uma compresso com perda (lossy), isto , ele no

permite a reconstruo exata dos dados originais.

Os recentes avanos das tcnicas de compresso com perdas incluem diferentes

mtodos tais como a transformada discreta cosseno (Discrete Cosine Transform-DCT),

quantizao vetorial, codificao wavelet, redes neurais e codificao fractal. Apesar desses

mtodos poderem realizar altas taxas de compresso (tipicamente 50:1 ou maior), eles no

permitem a reconstruo exata da verso original dos dados de entrada. Portanto, mtodos
16
com perdas no so aceitos para certas aplicaes como: imagens mdicas digitais, imagens

de satlite, dados ssmicos, imagens de alta fidelidade, arquivos executveis e assim por

diante. Tcnicas de compresso sem perdas, todavia, permitem a reconstruo perfeita dos

dados originais, mas as taxas de compresso so comparativamente baixas (de 2:1 a 4:1)

[SAN01].

3.1 Modelo Genrico de Compresso de Imagens


A idia geral utilizada para a compresso de imagens reorganizar os pixels de

maneira que a redundncia possa ser mais eficientemente descartada. A figura 3.1 apresenta

um modelo genrico de compresso de imagens. Nesta figura, a operao de mapeamento

converte os dados de entrada para uma outra forma organizada, removendo as redundncias.

Isso significa que os pixels so mapeados em outro domnio, no qual menos bits so

necessrios para codificar o dado mapeado em comparao com o nmero de bits necessrios

para codificar o dado de entrada original.

DADOS DA COEFICIENTES REPRESENTAO DADOS


IMAGEM DA IMAGEM BINARIA CODIFICADOS
x(i,k) y(jk) z(j) c(j)

1 1 1 1r
w MAPEADOR w QUANTIZADOR w CODIFICADOR w

Figura 3.1- Modelo genrico de compresso de imagens [MEL94],

A operao de quantizao converte os coeficientes em um nmero menor de

valores mais convenientes para a operao de codificao. O quantizador arredonda cada

valor mapeado para dentro de um pequeno conjunto de possveis valores. A operao de


17
codificao representa os dados fornecidos pelo quantizador em um conjunto mais conciso de

smbolos.

O modelo representado na figura 3.1 genrico e em muitos esquemas de

compresso o mapeador e/ou o quantizador so suprimidos. Em algumas tcnicas de

compresso, a efetiva reduo de informao se encontra no mapeador, porm, na maioria

dos casos, a compresso obtida nos processos de quantificao e/ou codificao.

A operao de mapeamento pode ou no ser reversvel, isto , permitir retornar aos

dados originais. J o quantizador sempre introduz erro, e aps a quantizao, os dados

originais no podem mais ser recuperados. O codificador sempre implementa uma operao

reversvel [MEL94],

3.2 Classificao da Compresso de Imagens


Uma classificao rgida dos vrios mtodos de compresso de imagens muito

difcil, uma vez que existe uma grande variedade de algoritmos e tcnicas de compresso que

utilizam princpios diferentes e que muitas vezes so utilizados simultaneamente. Vrias

classificaes j foram propostas, porm nenhuma delas pode ser considerada definitiva.

De um modo geral, til distinguir entre as tcnicas de compresso que so

reversveis, isto , permitem recuperar a imagem original sem perda de informao, e aquelas

que so irreversveis, onde a imagem recuperada possui menos informao que a imagem

original. Esta separao encontrada em quase todas as classificaes propostas na literatura,

porm as semelhanas terminam por a.

As tcnicas ditas reversveis so tambm chamadas de reduo de redundncia,

compresso sem perda ou sem rudo. As tcnicas irreversveis so conhecidas tambm por

reduo de entropia, compresso com perda ou com rudo [MEL94],


18
A Figura 3.2 apresenta uma taxionomia dos diversos mtodos e algoritmos de

compresso existentes [AGOOO], Destes mtodos, so abordados neste trabalho os

algoritmos Aritmtico, em conjunto com a transformada wavelet, Lempel-Ziv (GZIP) e

Huffman (LJPG), descritos mais adiante no item 3.5.

Mtodos de Compresso de Imagem, Vdeo e udio

Baseada em Modelos Baseada en >rmas de Onda

Domnio Domnio
Espaci Freqncia
Codificao
Aritmtica Modulao Baseado em Ftro
Delta
Codificao Fano
Lempd-Ziv (LZ) -PCM
Huffman
Codificao Run Quanti zao
Lenght(RLE) Outros
Vetorial
Outros
Outros -Baseado em
Transform ias
-Codificao
Predftiva Linear Fourier
-Modelagem AR, Karhunen-Loeve
ARMA <KL)
-Ajuste Hadamard
Pcrfinomiai
DCT
-Fractal
1Outros
-Baseado
em Objetol
-Outros

Figura 3.2 - Taxionomia dos mtodos de compresso.

3.3 Taxa de Compresso


A taxa de compresso a razo entre os tamanhos da imagem comprimida e da

imagem original. Esta taxa fornece uma medida de quanto menor ficou o arquivo aps a

aplicao da compresso.

Em geral, comum fornecer a taxa de compresso ou na forma de um vetor

absoluto ou em percentual. Por exemplo, a taxa de compresso para uma imagem de 200
19
Kbytes que aps ser comprimida ficou com 100 Kbytes de tamanho, de 0,5 ou 50%

[MEL94].

Diferentes formulas so utilizadas para o clculo das taxas de compresso. Alguns

clculos so feitos em bits/bytes. Esta medida de compresso fornece o nmero de bits

necessrios por pixel depois da compresso. O valor bits por pixel (bpp) permite comparar os

mtodos de compresso, permite calcular o tamanho da imagem comprimida e a taxa de

transmisso necessria para qualquer tamanho de imagem. Outros preferem utilizar razes,

por exemplo, 2:1. Isto significa que a quantidade de dados foi reduzida pela metade. Ser

utilizada neste trabalho a frmula (em porcentagem) definida por:

^ dados comprimidos^ !
100 (3.1)
dados originais

Isto significa que um arquivo que no muda de tamanho aps a compresso ter

uma taxa de compresso de 0% (zero por cento). Um arquivo comprimido pela metade do seu

tamanho original ter uma taxa de compresso de 50%. Na teoria, a taxa de compresso

mxima 100%. Isto s ocorrer se o tamanho do arquivo comprimido for igual a zero, o

qual somente ocorrer se o tamanho dos dados originais tambm for zero. Se o tamanho do

arquivo comprimido for maior do que o arquivo original teremos uma taxa de compresso

negativa.

3.4 Compresso com Perdas e Compresso sem Perdas


O processo de compresso de dados pode ser separado em dois tipos: os que levam

a perda de informao e os que mantm a informao intacta. O primeiro conduz s melhores

taxas de compresso, mas com o nus de perder parte da informao contida na imagem

original.
20
Muitas aplicaes exigem imagens com a melhor qualidade possvel (como em

reas mdicas, por exemplo) e, portanto, no podem existir perdas de informaes no

processo de compresso. Nestas aplicaes pode-se obter uma taxa de compresso tpica

variando de 2:1 at 10:1.

Todos os formatos de compresso que buscam eliminar apenas as redundncias de

codificao e interpixel so considerados sem perdas, uma vez que ambos os processos so

reversveis e, portanto, possvel se obter na sada do decodificador uma imagem idntica,

pixel a pixel, quando comparada com a imagem colocada na entrada do codificador. Desta

forma, pode-se perceber que o processo de compresso efetuado apenas pelos estgios de

mapeamento e codificao de smbolo, apresentados na Figura 3.1.

A compresso com perdas utilizada em aplicaes nas quais o menor tamanho

possvel da imagem requerido (como na internet, por exemplo). Nestes casos, o efeito da

perda de informao, que nem sempre visual, aceitvel. Com isso, pode-se obter taxas de

compresso maiores que 30:1, chegando a taxas de 10:1 at 20:1 com imagens virtualmente

indistinguveis das originais.

A perda de informao na compresso com perdas gerada pelo estgio de

quantizao na Figura 3.1, que busca a reduo da redundncia psicovisual. Como este

estgio irreversvel, a informao descartada no mais poder ser recuperada. [AGOOO],

3.5 Tipos de Codificao


Vrios mtodos e algoritmos de compresso de dados tm sido estudados e

propostos, mas alguns deles mereceram notvel destaque, uma vez que so usados em vrios

formatos de arquivos de imagem com compresso, alm de outros usos na compresso de

dados. Como os formatos de arquivo com compresso que sero abordados neste trabalho
21
compartilham o uso de alguns mtodos de compresso, optou-se por tratar destes mtodos

antes de entrar no escopo dos formatos de arquivos propriamente ditos.

E importante no confundir os algoritmos de compresso de imagem com os

formatos de arquivos que utilizam estes algoritmos [MUR96], O formato do arquivo descreve

apenas a organizao dos dados, indicando cabealhos, tabelas, etc., enquanto que os

algoritmos de compresso so os responsveis pela reduo na quantidade de dados

necessria para representar a informao. Cada formato de arquivo define onde e como a

informao comprimida ser colocada no arquivo a ser gerado.

Existe uma grande variedade de mtodos de compresso, mas apenas alguns mais

usados para a compresso de imagem e os que so de uso livre fazem parte do escopo deste

trabalho.

A seguir, comenta-se os mtodos de codificao utilizados pelos padres estudados

neste trabalho.

3.5.1 Codificao de Lempel-Ziv (LZ)

O LZ um dos algoritmos mais comuns usados para a compresso de imagens e

dados em geral. Ele foi criado em 1977 por Abram Lempel e Jakob Ziv e, desde ento,

muitas variantes deste algoritmo tm sido utilizadas em vrios formatos de arquivos. Este

mtodo de compresso visa reduzir a redundncia de codificao a partir do uso de

dicionrios de dados e no gera perdas.

Uma das verses mais conhecidas do LZ o chamado LZW, criado em 1984 por

Terry Welch. O LZW utilizado no formato de arquivo GIF. A verso do LZ abordada neste

item chamada de LZ77. Esta verso utiliza uma janela de dados mvel que ser chamada de

janela LZ77 para efetuar a compresso e a descompresso.


22
A seqncia dos dados comprimidos pode conter valores literais ou comandos para

expanso. Os comandos para expanso so pares comprimento/distncia que informam a

localizao, na janela LZ77, do primeiro dado de uma seqncia a ser expandida e quantos

dados contm esta seqncia.

No caso de compresso de textos, a cada passo um novo caracter comparado com

os caracteres que esto na janela LZ77. Se no existe nenhum caracter igual a este novo

caracter, ento a janela se desloca para incluir o novo caracter e este caracter colocado para

a sada.

Se o caracter j existe na janela LZ77, um novo caracter pego dos dados no

comprimidos. Ento feita uma nova comparao, mas agora para verificar se existem na

janela os dois caracteres. Este procedimento repetido at que a seqncia de caracteres

obtidos no exista na janela LZ77. Ento o ltimo caracter lido desconsiderado e um par

distncia/comprimento escrito na sada, informando a distncia que a seqncia de

caracteres est do incio da janela LZ77 e, por quantos caracteres composta esta seqncia.

Ento a janela deslocada pelo nmero de caracteres da seqncia para inclu-los e o

processo reiniciado com o prximo caracter.

Como pode ser percebido, para a compresso, so necessrias duas estruturas, uma

para varrer a janela LZ77 e outra para varrer os dados da entrada. Estas duas estruturas so

complementares e os seus dados so deslocados em conjunto.

No algoritmo LZ77, quanto maior o tamanho da janela LZ77 maior ser a taxa de

compresso obtida, mas tambm maior ser a complexidade do algoritmo, principalmente no

que diz respeito s operaes de procura nas janelas. Por isso, existe um compromisso entre

estes dois fatores que deve ser levado em considerao. Uma alternativa para o uso de
23
tamanhos maiores de janelas utilizar tabelas hash, que aumentam a velocidade da procura

[MIA99],

Para uma melhor compreenso do mtodo, apresenta-se a seguir um exemplo

ilustrativo, extrado do trabalho de [AGOOO]. O tamanho da janela LZ77 foi definida em 16

caracteres (aplicaes normais usam at 32K bytes). A seguinte frase ser comprimida no

exemplo: "A BANCA DA BIANCA BRANCA.". A tabela 3.1 apresenta todos os passos

do algoritmo LZ77 para a frase e seu contedo a cada passo. Na tabela 3.2 apresenta-se o

vetor sada para o mesmo exemplo.

Passo J a n e l a LZ77 Entrada


0 15
0 A BANCA DA BIANCA BRANCA.
1 A BANCA DA BIANCA BRANCA.
2 A BANCA DA BIANCA BRANCA.
3 A BANCA DA BIANCA BRANCA.
4 A BAN CA DA BIANCA BRANCA.
5 A BANCA DA BIANCA BRANCA.
6 A BANCA DA BIANCA BRANCA.
7 A BANCA D A BIANCA BRANCA.
8 A BANCA DA BIANCA BRANCA.
9 A BANCA DA B IANCA BRANCA.
10 A BANCA DA B I A N C A BRANCA.
11 BANCA DA BIANCA BRANCA.
12 ANCA DA BIANCA BRANCA.
13 CA DA BIANCA B RANA.
14 A DA BIANCA BRANCA.
15 BIANCA BRANCA .
16 BIANCA BRANCA.

Tabela 3 .1- Contedo da janela LZ77 e da Entrada durante a compresso.


24

Passo Salda

0 A
1 A
2 A B
3 A BA
4 A BAN
5 A BANC
6 A BANCX10: 2 >
7 A BANCClO:2>D
8 A BANCClO:2>D<13:2>
9 A BANCClO:2>D<13:2>B
10 A BANCClO:2>DC13:2>BI
11 A BANCClO:2>DC13:2>BIC6:5>
12 A BANCClO:2>DC13:2>BIC6:5>
13 A BANCClO:2>DC13:2>BIC6:5>C7:2>
14 A BANCClO:2>DC13:2>BIC6:5>C7:2>R
15 A BANCClO:2>DC13:2>BIC6:5>C7:2>RC7:4>
16 A BANCClO:2>DC13:2>BIC6:5>c7:2>RC7:4>.

Tabela 3.2 - Contedo da sada a cada passo da compresso.

O processo de descompresso substancialmente mais simples, porque apenas

com a janela LZ77 e com os dados comprimidos possvel efetuar a descompresso dos

dados. Caso o dado lido seja um valor literal, ele simplesmente escrito na janela LZ77 e na

sada. Caso o dado seja um par distncia/comprimento, o algoritmo de descompresso copia

da janela LZ77 o nmero de caracteres definido pelo campo comprimento, onde o primeiro

caracter da seqncia est na distncia do incio da janela definida pelo campo distncia.

Ento a janela deslocada para agregar os caracteres copiados e estes dados so colocados na

sada. Caso a janela tenha excedido a sua capacidade, os dados do incio da janela so

removidos. A tabela 3.3 apresenta o processo de descompresso para o exemplo [AGOOO],


25
Passo Saida Entrada
0 15
0 A BANC<10:2>D<13:2>BI<6:5>E<7:2>R<7:4>.

1 A BANC<10:2>D<13:2>BI<6:5><7:2>R<7:4>.

A BMJC<10:2>D<13:2>BI<6:5>E<7:2>R<7:4>.

A BANC<10:2>D<13:2>BI<6:5><7:2>R<7:4>.

A BAN C < 1 0 : 2 > D < 1 3 : 2 > B I < 6 : 5 > E < 7 : 2 > R < 7 : 4 > .

5 A BANC < 1 0 : 2 > D < 1 3 : 2 > B I < 6 : 5 > < 7 : 2 > R < 7 : 4 > .

6 A BANCA D < 1 3 : 2 > B I < 6 : 5 > < 7 : 2 > R < 7 : 4 > .

7 A BANCA D<13:2>BI<6:5><7:2>R<7:4>.

8 A BANCA DA B I < 6 : 5 > < 7 : 2 > R < 7 : 4 > .

9 A BANCA DA B I < 6 : 5 > E < 7 : 2 > R < 7 : 4 > .

10 A BANCA DA BI<<6 : 5 > < 7 : 2 > R < 7 : 4 > .

11 A BANCA DA BIANCA < 7 : 2 > R < 7 : 4 > .

12 A B ANCA DA BIANCA <7 : 2 > R < 7 : 4 > .

13 A BAN CA DA BIANCA B R < 7 : 4 > .

14 A BANC A DA BIANCA E BP <7 : 4 > .

15 A BANCA DA BIANCA BRANCA

16 A BANCA DA BIANCA BRANCA.

Tabela 3.3 - Descompresso dos dados do exemplo por LZ77.

3.5.2 Codificao de Huffman

A codificao de Huffman a tcnica de compresso de dados mais popular para a

remoo de redundncia de codificao e o mais eficiente mtodo para a codificao de

comprimento fixo para comprimento varivel [JAI89],

A idia atribuir cdigos de comprimentos variveis para cada smbolo. O menor

cdigo atribudo ao smbolo de maior probabilidade de ocorrncia na imagem e assim

sucessivamente, at que o maior cdigo seja atribudo ao smbolo de menor probabilidade de

ocorrncia. O problema que, para tomar possvel a decodificao sem a insero de tabelas

de identificao de smbolos, as seqncias de bits j atribudas no podem ser repetidas no


26
incio das novas seqncias. Com isso, o comprimento dos cdigos tende a crescer

rapidamente.

A codificao de Huffman torna-se interessante para aplicaes onde existe um

desequilbrio grande entre as probabilidades de ocorrncia dos smbolos. Para aplicaes com

probabilidades aproximadamente iguais, o tamanho do arquivo tende a ser maior que o

original. Na prtica, a maioria das aplicaes se encaixa no primeiro grupo, com

probabilidades de ocorrncia bem diferentes.

O primeiro passo para implementar a codificao de Huffman a criao de uma

tabela com os smbolos presentes no cdigo e suas probabilidades de ocorrncia. A partir

desta tabela gera-se uma estrutura de rvore, construda a partir de uma seqncia de

operaes onde as duas menores probabilidades so unidas em um n para formar dois ramos

da rvore. Cada n j construdo tratado como um simples smbolo, com a probabilidade

sendo a soma de todas as probabilidades dos smbolos combinados neste n. Ento,

arbitrariamente, atribui-se 0 para um dos ramos e 1 para o outro [PEN92], Considerando esta

probabilidade combinada, novamente as duas menores probabilidades so unidas, formando

um novo n e uma nova probabilidade combinada. Este processo se repete at que todos os

smbolos estejam contidos na rvore [AGOOO], Um exemplo de codificao utilizando

Huffman pode ser visto no item 3.5.6 (Codificao Lossless JPEG com Huffman).

3.5.3 Codificao Aritmtica

Conforme explanado em [SAN01], os mtodos de codificao de tamanho varivel

(Variable Length Coding - VLC) mais utilizados na codificao dos coeficientes wavelets

so a codificao de Huffman e a codificao aritmtica. A codificao de Huffman mais

rpida enquanto que a codificao aritmtica permite maior compresso. A primeira

prefervel quando os recursos de hardware so limitados e o tempo de


27
codificao/decodificao o objetivo principal. A codificao aritmtica um pouco mais

lenta do que a codificao de Huffman, mas muito mais verstil e eficiente.

No cdigo de Huffman, o nmero de bits necessrios para codificar uma

informao tem que ser um nmero inteiro e isso algumas vezes pode ser um problema. Por

exemplo, se a probabilidade de ocorrncia de um caracter - , o melhor nmero de bits para

codificar este caracter de aproximadamente 1,58 bits. Com isso, o cdigo de Huffman

precisaria atribuir dois bits para o cdigo, conduzindo para uma mensagem comprimida

maior do que teoricamente possvel de acordo com o clculo da entropia. Este problema

aumenta quando a probabilidade de um caracter muito alta.

Como o cdigo de Huffman usa um nmero inteiro (k) de bits para cada smbolo,

isto implica que nunca k ser menor que 1. Numa imagem com duas cores (1 bit por pixel),

como as usadas em fax, a compresso se torna impossvel. A soluo seria agrupar os bits em

pacotes e ento aplicar Huffman, porm isso impede o cdigo de Huffman de ser um

compressor universal.

A codificao aritmtica substitui os smbolos de entrada com um cdigo

especfico. Um fluxo de bits de smbolos de entrada codificado em um nico nmero de

ponto flutuante maior ou igual a zero e menor do que 1. Este nmero pode ser unicamente

decodificado para extrair os smbolos originais.

Existem dois pontos fundamentais na codificao aritmtica: a probabilidade de

um smbolo e o limite de seu intervalo na codificao. As probabilidades dos smbolos de

origem determinam a eficincia da compresso. Eles tambm determinam o limite do

intervalo dos smbolos de origem para o processo de codificao. Estes limites de intervalo

esto contidos dentro de um intervalo de 0 a 1. O limite do intervalo para o processo de

codificao determina a sada comprimida.


28
Em [SANOl], o processo de codificao de um codificador aritmtico foi

explicado atravs do seguinte exemplo: supondo que os smbolos de entrada so {a, b,c,d}e

a probabilidade destes smbolos so (0.1, 0.4, 0.2, 0.3 }, respectivamente. Ento baseado em

suas probabilidades, o intervalo [0, 1) pode ser dividido como 4 subintervalos: [0, 0.1), [0.1,

0.5), [0.5, 0.7) e [0.7, 1), onde [x, y) denota um intervalo fechado a esquerda e aberto a

direita, os quais inclui x mas exclui y. A informao acima pode ser resumida na tabela 3.4,

abaixo:

Smbolos a b c d
Probabilidades 0.1 0.4 0.2 0.3
Intervalo Inicial [0, 0.1) [0.1,0.5) [0.5,0.7) [0.7,1)
Tabela 3.4 - Representao dos smbolos e seus respectivos intervalos iniciais.

Imagine transmitindo a mensagem "cadacdb". Inicialmente, tanto o codificador

quanto o decodificador conhecem que o intervalo [0, 1). Aps 1er o primeiro smbolo, c, da

mensagem sabemos que o seu intervalo de codificao [0.5, 0.7). Aps este smbolo ter

sido processado, o tamanho do modelo modificado para o intervalo [0.5, 0.7), como

mostrado na figura 3.3, j que o limite do segundo smbolo, a, da mensagem [0, 0.1), ele

codificado tomando o primeiro dcimo do novo tamanho do modelo [0.5, 0.7) como um novo

intervalo [0.5, 0.52). Similarmente, codificando o terceiro smbolo, d, ns temos um novo

intervalo [0.514, 0.52). Depois codificando o quarto smbolo, a, o novo intervalo [0.514,

0.5146). E assim por diante at que aps a codificao do ltimo smbolo, b, tem-se o

intervalo [0.5143876, 0.514402). A sada desta mensagem pode ser qualquer nmero que

esteja dentro deste ltimo intervalo. Para um melhor entendimento, o processo descrito acima

est resumido na tabela 3.5.


29

Novo caracter Limite inferior Limite superior


0.0 1.0
c 0.5 0.7
a 0.5 0.52
d 0.514 0.52
a 0.514 0.5146
c 0.5143 0.51442
d 0.514384 0.51442
b 0.5143876 0.514402
Tabela 3.5- Processo de codificao do exemplo de codificao aritmtica.

Visualmente, pode-se representar o processo acima atravs da figura abaixo:


0.7 0.52 /051442-] - 0.51442 0.514402

Sada

oJ 0.5 J
0.514 J 0.514 -I 0.5143 0.5143876

Entrada c

Figura 3 .3 - Representao do processo de codificao aritmtica.

Dado este esquema de codificao, relativamente fcil ver como o processo de

decodificao funciona. Inicialmente, o decodificador verifica em qual intervalo o primeiro

smbolo da mensagem se encontra. Como 0.5143876 est dentro do intervalo [0.5, 0.7) o

primeiro caracter da mensagem dever ser o c. Como o limite inferior e superior de c

conhecido, que [0.5, 0.7), reverte-se o processo que o gerou. Primeiro, subtrai-se pelo limite

inferior de c que implicar em 0.0143876. Ento se faz a diviso pelo tamanho da largura do

intervalo de c, ou seja, 0.2. Isto resulta em 0,071938. Pode-se verificar que o prximo

smbolo ser o a, pois 0,071938 se encontra no intervalo [0, 0.1). Em seguida tem-se o valor
30
0,71938, que se encontra no intervalo [0.7, 1) resultando no smbolo d. E assim por diante,

todos os smbolos da mensagem inicial sero recuperados a partir da sada 0,5143876 (tabela

3.6).

Nmero Codificado Smbolo de Sada Menor Maior Tam. Intervalo


0.5143876 c 0.5 0.7 0.2
0,071938 a 0.0 0.1 0.1
0,71938 d 0.7 1.0 0.3
0,0646 a 0.0 0.1 0.1
0,646 c 0.5 0.7 0.2
0,73 d 0.7 1.0 0.3
0,1 b 0.1 0.5 0.4
0.0
Tabela 3.6 - Processo de decodificao do exemplo de codificao aritmtica.

A ordem do modelo, refere-se ao nmero de smbolos anteriores que so usados

para calcular a probabilidade de cada smbolo de entrada. Neste exemplo, foi utilizado o

modelo de ordem-0 que calcula a probabilidade de cada smbolo independentemente de

qualquer smbolo anterior.

3.5.4 Codificao Preditiva

As tcnicas de compresso preditiva operam baseadas sobre um modelo estatstico

da imagem. O modelo est embutido em algo conhecido como preditor. O preditor estima o

prximo valor do pixel em uma determinada ordem, baseada nos pixels que antecederam

aquele. O preditor pode tambm ser bidimensional para obter vantagem da correlao

bidimensional inerente s imagens.

Por exemplo, um modelo muito simples prediz que o prximo pixel ter o mesmo

valor do pixel prvio. Este modelo no uma m suposio, uma vez que os valores dos

pixels variam lentamente atravs de imagens em tom contnuo. A cada predio gerada, a

diferena entre o pixel atual e o pixel predito calculada. O desvio padro do histograma das
31
diferenas , em geral, menor que o da imagem original, refletindo que a correlao foi

removida.

Assim, pode-se utilizar menos bits para codificar as diferenas do que o nmero de

bits utilizado para representar um pixel. Quanto menor o nmero de bits utilizados nesta

quantizao, maior o grau de perda de fidelidade da imagem, porm maior a taxa de

compresso.

Os compressores preditivos podem ser adaptveis, fazendo o quantizador e/ou o

preditor adaptveis. Esta capacidade de adaptao pode ser utilizada para conseguir maior

compresso ou maior fidelidade [MEL94],

3.5.5 Codificao por Transformada

De acordo com [SAN01], a codificao por transformada envolve uma

transformao linear do sinal de entrada e a quantizao dos coeficientes, isto , do resultado

da transformao. O propsito da transformao mudar a organizao dos pixels.

Na codificao por transformada, geralmente divide-se uma dada imagem de

tamanho NxN em um nmero de sub-imagens de tamanho nxn, n<N, que so codificadas

independentemente. A transformao dita unidimensional quando a sub-imagem de

tamanho Ixn e bidimensional quando a imagem possui tamanho nxn.

importante ressaltar que a transformao em si no realiza a compresso. A

compresso conseguida pela quantizao e pela posterior compresso sem perda (ver

modelo genrico de compresso de imagens no item 3.1). A funo da operao de

transformao a de obter coeficientes mais independentes e orden-los (em termos de suas

varincias) de maneira que eles possam ser mais eficientemente quantizados.

A escolha da transformada no determinada apenas pela correlao entre os

coeficientes obtidos. Como a operao de transformao requer memria e tempo


32
computacional para sua implementao, esses parmetros tambm so importantes para tal

escolha.

Do ponto de vista da correlao entre os coeficientes, o problema determinar a

matriz de transformao descorrelacional tima A, a matriz de transformao inversa (ou de

reconstruo) B e o quantizador timo, de modo que a distoro media quadrtica total seja

minimizada. A soluo do problema tal que a matriz A a transformada Karhunen-Love

(KL) da entrada, a matriz B funo da matriz inversa de A e o quantizador o quantizador

Lloyd-Max. Com tal quantizador, B=A* T . A transformada KL, tambm chamada de

Hotteling ou componente principal, apesar de ser tima, difcil de computar e no possui

um algoritmo rpido para sua resoluo. Ela utilizada freqentemente como parmetro de

referncia para avaliar o desempenho de outras transformadas. Diversas transformadas so

utilizadas na compresso de imagens e entre elas podemos ressaltar a transformada de

Fourier, cosseno, seno, Walsh-Hadamard, Haar e Slant. As trs primeiras so baseadas em

senoides e as outras em ondas quadradas, que, em termos computacionais, so mais rpidas.

Outros quantizadores mais simples, que no Lloyd-Max, tambm so utilizados na prtica

[JAI89, MEL94].

O processo de compresso para transformadas wavelet est ilustrado na figura 3 .4.

Nesta figura, foram acrescentadas duas novas etapas que no esto sendo consideradas neste

trabalho e que tm a funo de reconstruir as imagens de tomografia a partir dos senogramas,

permitindo assim a sua anlise.

As informaes fornecidas pelo tomgrafo ao computador constitui de valores

inteiros no formato binrio. Estes valores variam de 0 a 65.535, ou seja, 16 bits no

sinalizados. Dessa maneira, um senograma de 768 linhas por 90 colunas armazenado no

computador usando 138.240 bytes.


33

Figura 3.4 - Esquema de compresso usado nos experimentos.

Neste trabalho sero considerados apenas as transformadas wavelet de inteiros, isto

, a transformada S e S+P, as quais possuem a propriedade de preservao de preciso (PPP),

comentada com maiores detalhes no item 1.3 do apndice 1. Neste trabalho foram utilizadas

as transformadas wavelet bidimensionais implementadas por [SAN01],

As imagens foram decompostas em 5 nveis de resoluo, tanto nas linhas quanto

nas colunas. Em cada nvel de decomposio, o nmero de coeficientes so reduzidos pela

metade, pelo fato de que apenas os coeficientes passa baixa sero usados na aplicao da

transformada no prximo nvel de resoluo. Como as imagens possuem 90 linhas, 5 nveis

de decomposio so suficientes para reduzir para apenas 3 pixels, quando a transformada

bidimensional aplicada nas colunas da imagem. Na fase de codificao, foi utilizada a

codificao aritmtica.

3.5.6 Codificao Lossless JPEG com Huffman

Alguns trabalhos descrevem a codificao Lossless JPEG [HUA94, NET98], O

padro de compresso para imagens paradas ISO JPEG popularmente conhecido como uma

tcnica de compresso baseada em transformada discreta cosseno (DCT - Discrete Cosine

Transform). Entretanto, o modo de operao sem perdas no utiliza a DCT, mas sim uma

codificao por predio. A tcnica de compresso Lossless JPEG utiliza a forma de


34
modulao de cdigo de pulso discreto (DPCM - Discrete Pulse Code Modulation) [PEN93],

Considere uma imagem fonte com duas dimenses. Cada amostra um pixel contendo ou

trs bytes representando os nveis vermelho, verde ou azul (RGB) para uma imagem colorida,

ou um nico byte de uma imagem em escalas de cinza. Na tcnica Lossless JPEG cada pixel

especificado como um inteiro variando de 2 a 16 bits de preciso. O parmetro ponto de

preciso, Pt, pode ser usado para reduzir o nvel de quantizao da imagem fonte. Se Pt no

for zero, cada amostra de entrada deslocada direita por Pt bits.

O padro JPEG define oito valores de seleo de predio (PSV - Prediction

Selection Values), os quais so especificados na tabela 3.7. O PSV 0 (zero) reservado para

codificao diferencial no modo progressivo hierrquico (no utilizado neste codificador

lossless). Para cada pixel, P^ y , uma combinao linear dos pixels vizinhos esquerdo (Px,y-i),

superior (Px-i,y) e superior esquerdo (Px-i,y-i), so utilizados para calcular o preditor de P^y.

Os PSVs 1, 2 e 3 so preditores de uma dimenso, ou seja, usam somente um pixel vizinho.

Os PSVs 4, 5, 6 e 7 so bidimensionais, por utilizarem dois ou mais pixels vizinhos.

PSVs Preditores

0 sem predio (codificao diferencial)

1 Px,y-1

2 Px-l,y

3 Px-l,y-l

4 Px,y-1 + Px-l,y ~ Px-l,y-l

5 Px,y-l+(Px-l,y-Px-l,y-l)/2

6 Px-l,y + (Px,y-l-Px-l,y-l)/2

7 (Px,y-l+Px-l,y)/2

Tabela 3.7 - Preditores para o Lossless JPEG


35
A primeira linha e coluna da imagem so tratadas de forma especial. O PSV 1

utilizado para a primeira linha de amostras e o PSV 2 utilizado para a primeira coluna. Para
P-Pt-i
o pixel no canto superior esquerdo da imagem, o preditor 2 utilizado, onde P e o

nmero de bits da amostra. O preditor calculado subtrado do valor do pixel e a diferena

codificada por Huffman ou Codificao de entropia Aritmtica. No caso deste codificador,

utilizado a codificao de Huffman. O modelo de entropia de Huffman particiona as

diferenas em 16 diferentes categorias. A cada uma destas categorias atribudo um cdigo

de Huffman usando ou a tabela padro de Huffman definida na norma ISO/IEC DIS 10918-1,

ou uma tabela customizada para a imagem. As diferentes categorias so mostradas na tabela

3.8, abaixo:

Categoria Valores
0 0
1 -1,1
2 -3,-2, 2-, 3
3 -7...-4,4...7
4 -15...-8, 8...15
5 -31...-16,16...31
6 -63...-32, 32...63
7 -127...-64, 64... 127
8 -255...-128, 128...255
9 -511...-256, 256...511
10 -1023...-512, 512...1023
11 -2047...-1024,1024...2047
12 -4095...2048, 2048...4095
13 -8191...-4096, 4096...8191
14 -16383...-8192, 8192...16383
15 -32767...-16384, 16384...32767

Tabela 3.8 - Tabela de categorias e valores de diferena


36
Para qualquer valor de diferena, uma seqncia de bits adicionais so anexados no

cdigo de Huffman para identificar unicamente qual a diferena naquela categoria atualmente

ocorrida. A quantidade de bits dada pela prpria categoria, com zero sendo um valor

permitido. As regras de como os bits adicionais so especificados esto a seguir. Se a

diferena positiva, anexa-se a quantidade de bits, representada pela categoria, de mais baixa

ordem da diferena. Se a diferena negativa, subtrai-se um da diferena e anexa-se a

quantidade de bits, representada pela categoria, de mais baixa ordem do valor resultante.

O exemplo a seguir ilustra o processo de codificao. A imagem possui 2 linhas

por 3 colunas em escalas de cinza (8 bits). Foi utilizado o PSV 7 ((Px,y-i + Px-i,y) / 2) como

preditor e a tabela de codificao Huffman, definida no padro JPEG, para as diferentes

categorias. Pt foi configurado como zero. O preditor para o pixel do canto superior esquerdo
P-Pt i
igual a 128 (aplicando-se 2 ).

Valores dos pixels da imagem


120 100 100

80 90 100

Diferena calculada (pixel - preditor)


-8 -20 0

-40 0 5

Categoria e respectivos bits de Huffman


4 (101) 5 (110) 0

6 (1110) 0 3 (100)

Bits adicionais
0111 01011 0

010111 0 101
37

Seqncia de bits de sada (espaos no fazem parte)


101 0111 110 01011 0 1110 010111 0 100 101

Para a decodificar a seqncia de bits acima, primeiramente extrado o cdigo de

Huffman 101, onde a decodificao de Huffman traz o smbolo de categoria 4. A seguir, os 4

bits adicionais, Olli, so extrados da seqncia. O bit inicial 0 significa que a diferena

entre o pixel e o preditor um nmero negativo, portanto o valor da diferena 1 somado ao


P-Pt i
binrio 0111. Adicionando ao valor reconstrudo, -8, o preditor 128 (2 ), o valor do pixel

120 recuperado. Este processo inverso de codificao repetido at que a seqncia inteira

dos bits seja decodificada.


38

4. Metodologia

4.1 Introduo
Neste captulo, ser descrita a metodologia utilizada na execuo das simulaes

realizadas neste trabalho. Foram estudados e avaliados os mtodos de compresso de dados

propostos, sendo aplicados em imagens e projees de tomografia computadorizada por

raios-X (chamados senogramas). O objetivo investigar o comportamento de cada um desses

mtodos sobre estas imagens e senogramas, assinalando suas vantagens e desvantagens, em

termos de taxa de compresso.

Foram comparados alguns dos mtodos mais conhecidos em compresso: GZIP

(Gnu ZIP), utilizado largamente para compresso de dados e LJPG (Lossless JPEG),

utilizado especificamente para compresso de imagens; e dois outros mtodos de recente

utilizao em compresso de imagens: Transformada S (Wavelet de Haar) e Transformada

S+P (Said e Pearlman), abordados em [SANOl],

Alm da utilizao de senogramas reais, gerados por tomgrafo industrial, foram

utilizados tambm senogramas construdos por um programa simulador de projees,

conforme ilustra a figura 4.1. Este programa simulador de projees foi implementado por

Medeiros [MED01], Os senogramas foram gerados a partir de imagens mdicas, com 256

colunas por 256 linhas e 8 bpp. O programa simulador de projees efetua uma varredura de

180 graus na imagem com um passo de 2 graus, gerando, desta forma, senogramas

compostos de 256 linhas por 90 colunas e 16 bpp. Tanto as informaes fornecidas pelo

tomgrafo quanto as gerados pelo programa simulador de projees so constitudas de

valores inteiros no formato binrio. Estes valores variam de 0 a 65.535, ou seja, 16 bits no

sinalizados.
39

Programa
Simulador
de Projees

Figura 4 . 1 - Esquema de gerao de senogramas pelo programa simulador de projees.

As imagens e senogramas foram submetidos aos mtodos de compresso,

conforme ilustra a figura 4.2.

Transform ada
Codifica dor Senogf2ffiajmag.eaa
Wavelet
Direta
Aritmtico > comptiffido
Transformadas W (S / S+P)

Codificador
LZ77
>
Gzn?

Codificador
Huffman
i JPG
> comprim o

Figura 4.2 - Mtodos de compresso utilizados para as imagens e senogramas.

Durante a realizao dos experimentos, verificou-se que os senogramas reais

apresentavam um elevado grau de variao nos valores dos pixels, quando comparados aos

senogramas gerados pelo programa simulador. Atravs da anlise destes valores, constatou-se

que esta variao comporta-se como rudos distribudos de forma aleatria entre os pixels.

Face a estas constataes, optou-se pela continuidade dos estudos considerando estas

caractersticas dos senogramas reais. Foi utilizada a funo randQ, em linguagem C, para

gerar o rudo uniforme de mdia nula, a ser somado a cada pixel das imagens e senogramas,

com o objetivo de se estudar o comportamento dos diversos mtodos de compresso


40
utilizados nos experimentos. Os rudos foram inseridos de forma percentual, conforme a

frmula a seguir:

%rudo = "P^toido (41)


AmplitudeSinal

No clculo do %rudo, o valor do ruido, que pode resultar num valor positivo ou

negativo, somado ao pixel. Caso o valor resultante (valor do pixel + valor do rudo) seja

maior que 65.535 ou menor que 0, o valor do rudo ser rebatido, ou seja, ter o sinal

invertido para ser somado ao pixel.

Alm do percentual de rudo, foi includa uma outra medida relacionada a rudo,

que a relao sinal / rudo (SR), calculada pela seguinte frmula:

SR = O"
fruido)'

Para comparao entre os mtodos de compresso, foi utilizada a taxa de

compresso, que a razo entre o tamanho da imagem comprimida e o tamanho da imagem

original. Est comentada em mais detalhes no item 3 .3, sendo a frmula utilizada a seguinte:

r
TamanhoOriginal - TamanhoFinal ^
= 100 (4.3)
TamanhoOriginal

4.2 Imagens e Senogramas Utilizados


Foram utilizados 3 senogramas reais, gerados no tomgrafo industrial do

laboratrio da UFPR. Os senogramas so compostos de 768 colunas por 90 linhas e 16 bpp,

totalizando 138.240 bytes. Estes senogramas foram designados por "denteOl", dente02" e

"dente03" sendo todos eles tomografia computadorizada de um dente humano. A partir

desses senogramas, foram reconstrudas as imagens "denteOl", composta de 256 colunas por
41
256 linhas e 8bpp; "dente02", composta de 176 colunas por 176 linhas e 8bpp e "dente03"

composta de 112 colunas por 112 linhas e 8bpp. Os senogramas e suas respectivas imagens

so apresentados no apndice 4.

Utilizou-se uma imagem gerada artificialmente, denominada "Phantom", mostrada

na figura 4.3. Essa imagem semelhante a tomografia de uma cabea [JAI89]. Esta imagem

foi gerada por um programa, utilizado em [MED01], Este programa tambm produz o

respectivo senograma, mostrada na figura 4.4. Este programa tambm permite produzir

senogramas de qualquer outra imagem, os quais sero produzidos e utilizados neste trabalho.

Figura 4.3 - Imagem "Phantom" gerada por software.

Figura 4.4 - Senograma do "Phantom" gerada por software.

Selecionadas ainda outras 5 imagens para realizao dos testes, as quais foram

obtidas de repositrios de dados de universidades, j no formato utilizado neste trabalho, ou


42
seja, com 256 colunas por 256 linhas e 8 bpp, regeradas a partir de uma projeo de TC

(Tomografia Computadorizada), conforme relacionadas a seguir:

1. Imagem "Abdom", tomografia de um abdome;

2. Imagem "Brain", tomografia de um crebro;

3. Imagem "Hernia", tomografia de uma hrnia da coluna;

4. Imagem "Head", tomografia da cabea;

5. Imagem "Trax", tomografia de um trax.

Utilizando o programa gerador de projees, foi gerado um senograma para cada

uma destas imagens, os quais tambm foram utilizados nos experimentos.

Foram geradas outras dezessete imagens da seguinte forma: sete imagens a partir

da imagem "Abdom" com os percentuais de rudo (%rudo) 2%, 10%, 20%, 25%, 33%, 50%

e 100%; e outras dez imagens a partir do senograma "Abdom" com os percentuais de rudo

0,1%, 0,2%, 1%, 2%, 10%, 20%, 25%, 33%, 50% e 100%. Portanto, foram utilizadas nos

experimentos deste trabalho um total de trinta e duas imagens e/ou senogramas. Estas

imagens e senogramas estavam inicialmente no formato BMP sem o uso da compactao

RLE, padro deste formato.

Para a utilizao na compresso com os mtodos transformada S, transformada

S+P e GZIP foi necessrio que as imagens e senogramas estivessem no formato binrio

(RAW), portanto, tiveram os cabealhos do formato BMP removidos, permanecendo

somente os bytes de dados. As imagens permaneceram com 256 colunas (largura) por 256

linhas (altura) e 8 bits por pixel, totalizando 65.536 bytes e os senogramas com 256 colunas

(largura) por 90 linhas (altura) e 16 bits por pixel, totalizando 46.080 bytes.

O mtodo de compresso LJPG, utilizado nestes experimentos, trabalha somente

com imagens no formato PGM. Portanto, para possibilitar a utilizao do mtodo, as imagens
43
do formato binrio foram transformadas para este formato com a incluso de um cabealho

prprio com tamanho de 14 bytes.

As imagens e senogramas foram submetidos aos mtodos de compresso propostos

neste trabalho, sendo os resultados, em forma de tabelas, grficos e comentrios,

apresentados no prximo captulo. Todas as imagens e senogramas utilizados neste trabalho

esto relacionadas no apndice 4.

4.3 Mtodos de Compresso


Foram utilizadas as transformadas wavelet bidimensionais [SAN01], escritas em

linguagem C (Borland C++ verso 3.1) no sistema operacional DOS e, com pequenas

modificaes, tambm implementadas no sistema operacional LINUX COREL / OS.

Constatou-se que os resultados obtidos com a compactao nos dois sistemas foram

idnticos. O programa permite a entrada de diferentes tamanhos de imagens. Permite tambm

optar pelo nmero de nveis de decomposio desejado. Foram desenvolvidos dois programas

para serem utilizados conforme a organizao da imagem ou senograma, ou seja, um

programa para a unidade de informao de 1 byte (8 bpp) e outro para 2 bytes (16 bpp).

Para o clculo da transformada S e transformada S+P, primeiramente a

transformada aplicada levando-se em considerao cada informao na sua forma original,

ou seja, 8 bits para as imagens e 16 bits para os senogramas. Aps a aplicao da

transformada, o nmero de bits da informao se mantm o mesmo, em virtude da PPP,

comentada no item 1.3 do apndice 1. Aps a aplicao da transformada, foi utilizada a

codificao Aritmtica, ao invs da codificao de Hufman, por ter apresentado melhor

resultado em todas as imagens e senogramas utilizados, conforme constatado em [SAN01],

Os testes de compresso com o GZIP foram realizados no sistema operacional

LINUX COREL/OS. As imagens e senogramas submetidos compresso possuam somente


os bytes de dados, ou seja, sem nenhum tipo de cabealho especfico. O GZIP trabalha com o

codificador LZ77, considerando a unidade de informao o byte, no importando se a

imagem ou senograma sejam organizados em 8 ou 16 bpp.

Os testes de compresso com o LJPG foram realizadas no sistema operacional

LINUX COREL / OS. O software utilizado foi o LJPG [HUA94], desenvolvido para uso

experimental e de distribuio livre. Neste caso, as imagens e senogramas submetidos

compresso, por exigncia do software, necessitavam possuir um cabealho no formato PGM

(Portable GrayMap), tendo um acrscimo de 14 bytes. O software foi desenvolvido para

comprimir arquivos com 8 bpp. Nos testes deste trabalho, utiliza-se senogramas com 256

colunas por 90 linhas e 16 bpp, totalizando 46.080 bytes. Para possibilitar a compresso

destes senogramas com o mtodo LJPG, foi utilizado o artifcio de gerar o cabealho do

senograma com as informaes de 512 colunas por 90 linhas e 8 bpp, totalizando os mesmos

46.080 bytes, portanto, sem alterar o tamanho do senograma.

Ressalta-se que este fato do programa codificador interpretar um pixel de 16 bits

como sendo 2 pixels de 8 bits deve afetar o desempenho deste mtodo de compresso.
45

5. Resultados

5.1 Compresso de Senogramas


Os 3 senogramas relativos aos dentes, obtidos no tomgrafo industrial do

LACTEC na UFPR, foram comprimidos com os mtodos de compresso Transformada S,

Transformada S+P, GZIP e LJPG. Os resultados, com as taxas de compresso, esto

representadas na tabela 5.1. Estes resultados esto de acordo com os resultados apresentados

no trabalho de [SAN01], porm tem-se que destacar a abordagem utilizada no levantamento

destes dados. Os senogramas possuem 16 bits por pixel (bpp). Foi utilizada a tcnica de

separao do senograma em dois outros arquivos, o primeiro contendo a informao da parte

alta do pixel original, ficando com 8 bits por pixel e o segundo contendo a informao da

parte baixa, tambm ficando com 8 bits por pixel. Desta forma, melhores resultados foram

obtidos com a transformada wavelet de inteiros nos casos com a transformada S+P

computando com 16 bits e S computando com 8 bits, assim como os resultados obtidos com

o LJPG (lossless JPG) e o GZIP.

A coluna Entropia, a qual faz parte da tabela 5.1, corresponde ao tamanho do

arquivo comprimido que pode ser obtido levando em considerao apenas a redundncia de

cdigo baseado no clculo da entropia de primeira ordem [SAN01], A coluna Aritmtica

corresponde somente a aplicao da codificao aritmtica.

Senograma Entropia Aritmtica Transf. S Transf. S+P GZIP UPG


DenteOI 8% 8% 31% 27% 9% 32%
Dente02 8% 8% 33% 29% 9% 33%
Dente03 7% 8% 33% 28% 9% 33%
Mdia 8% 8% 32% 28% 9% 33%
D. Padro 1% 0% 1% 1% 0% 1%

Tabela 5.1 - Taxa de compresso de senogramas reais, separados parte alta e parte baixa.
46

35%
:; i!J- ' """\,:;!1
'n'F~-_ ..
r - o, !~tl: . r-
30;' - 0 """

25 ~'o .
illr.} :'m::-'" .
i~
r- i!f;f] -
. ' ,' c;
o

[ 20% .
~!r1~~
"--'" i~ -"' =
[J Denl cO I
,~
Denl c02
8
E
15%
;h::.,,,,,. c- ~
O Denl c03
." :c. '::::,,,, ": O Mdia
-
... IO ~.
r
'

_r-
,

rr
"'-
r- -
50/. t- '- ..
,~ ~

I-'-

0%
Entropia Aritmtica T ransf. S Transf. S+P GZIP LJPG
Mtodos de Compresslo

Figura 5.1 - Grfico comparativo da compresso dos senogramas reais, separados em 8 bits.

Pode-se observar, no grfico da Figura 5.1, que as taxas de compresso das

transformadas S so superiores s taxas geradas pelo mtodo GZIP. O mtodo LJPG, mesmo

operando sobre um conjunto de 8 bits, neste caso, apresentou taxas compatveis com as

apresentadas pela transformada S.

Um novo levantamento foi realizado considerando outra abordagem, que a

utilizada neste trabalho. Os senogramas foram utilizados considerando o pixel com 16 bits,

Portanto, os 3 senogramas relativos aos dentes, obtidos no tomgrafo industrial, foram

comprimidos com os mtodos de compresso Transformada S, Transformada S+P, GZIP e

LJPG, sem a separao em arquivos com parte alta e parte baixa, A transformada foi aplicada

levando em considerao cada informao na sua forma original, ou seja, com 16 bits,

Os resultados, com as taxas de compresso, esto representadas na tabela 5,2. A

taxa de compresso relativa a entropia de I a ordem dos senogramas tambm foram calculadas

para efeito de comparao,


47
Senograma Tamanho Entropia Aritmtica Transr. S Transr. S+P GZIP LJPG
DenteOl 138240 SO/O 7% 25% 27% 9% -1 %
Dente02 138240 SO/O 7% 27% 29% 9% -1%
Dente03 138240 7% 7% 27% 28% 9% 0%
Mdia 138240 SO/O 7% 27% 28% 9% -1%
D. Padro O 0% 00/. 1% 1% 0% 1%

Tabela 5.2 - Compresso de senogramas reais, com 16 bpp, entre diferentes mtodos.

35% ,

30% . ..
, , 'i': ..,..
,
,. "
C-
25%
-,.,- ,oi
-
r .",r.;; ;
, ,)~~ I:'
, =,I~~'
.,c ,,'
o
~ 200/ . - .'.;;~, [] Dente() I
...E~ "1, ~~;;;: '... ..,;,"- ',:;;;" Dente()2
o 15%
<.i
...
~
" ",
-'-
I'" 1W" :" ",!li:: o Dente()3
o M di.
...a
10% - ;,

r - Fr r
"
I-- - I-
5%
I:'"
O ~O . II . .
EntrOpJ8
"
ArJtm tJCa
,
Transf. S Transf. S<P GZIP ~G'-'
,

-5%
Senogramas

Figura 5.2 .. Grfico comparativo da compresso dos senogramas reais com 16 bpp.

Pode-se verificar que as taxas de compresso, nesta segunda abordagem, esto um

pouco menores para as transformadas wavelets e bem inferiores para o mtodo LJPG. Isto se

explica pelo fato desta implementao do LJPG no ter trabalhado com os pixels de 16 bits,

mas sim com os bytes altos e baixos alternadamente, o que compromete o bom desempenho

do preditor usado nesta tcnica.

Os experimentos com os demais senogramas foram realizados considerando a

segunda abordagem, ou seja, os mtodos de compresso foram aplicados levando em


48
considerao o tamanho original do pixel, com 16 bits, exceto para o LJPG que operou

sempre em 8 bits sobre os bytes alto e baixo alternadamente.

Na Tabela 5.3, so apresentados os resultados entre os mtodos para seIS

senogramas gerados pelo programa simulador de projees. Os pontos do grfico, entre os

senogramas, foram ligados por retas para as comparaes entre os mtodos.

Senoarama Entropia Aritmtica Transf. S Transt S+P GZIP LJPG


Abdom 37% 37% 46% 24% 89% 6 1%
Braim 47% 47% 46% 30% 87% 57%
Remia 34% 34% 42% 20010 87% 58%
Read 47% 47% 51 % 33% 88% 67%
Phanton 42% 42% 51 % 28% 9 1% 72%
Torax 38% 38% 45% 23% 88% 59%
Mdia 41% 41 % 47% 26% 88% 62%
D. Padro 5% 5% 3% 5% 2% 6%

Tabela 5.3 - Compresso dos senogramas simulados.

100%

90%
80%

..
~
----.-. Entropia
____ Aritm tica
t
Co
60%
. '" .. , ..
E 50% Transf. S
U ~ T ran sf. s+P
.., 40% .
~ GZ n)

...="=
.~.

30%
-+- LJPG
20%
10%
0%
Abdom Braim Hem ia Head Phan ton Torax Mdia
Scnogramas

Figura 5.3 - Grfico comparativo dos senogramas comprimidos

Pode-se observar que a compresso realizada pela codificao aritmtica pura

obteve um resultado diferente das compresses pelas transformadas wavelels, embora estas

tambm utilizem a codificao aritmtica. Pode-se observar tambm que as taxas de


49
compresso das transformadas S e S+P esto inferiores s taxas conseguidas pelos mtodos

de uso geral GZIP e LJPG. Esta caracterstica explicada pela organizao dos pixels dos

senogramas, onde possuem uma baixa variao de rudos nas imagens.

Isto pode ser devido ao fato destes senogramas terem sido obtidos (simulados) a

partir de imagens de 8 bits, ao contrrio dos senogramas dos dentes, que foram obtidos

diretamente de um tomgrafo industrial. Isto mostra que os senogramas simulados, da forma

como esto, no representam bem a situao real. Numa situao real, o objeto tem uma

variao contnua da radiopacidade e pode existir ainda um rudo presente durante a medida.

5.2 Compresso de Senograma com Escalas de Rudos


Para que os senogramas simulados representassem mais fielmente a situao real,

foi introduzida uma quantidade de rudo controlado em cada um de seus pixels. A tabela a

seguir apresenta o senograma "Abdom" comprimido com insero de rudos. O percentual

de rudo (%rudo) representa a relao entre o maior valor de pixel e o maior valor de rudo.

A tabela 5.3 apresenta as taxas de compresso para o senograma "Abdom", com rudos

aleatrios somados aos pixels nos percentuais indicados. O item 4.1 mostra maiores detalhes

sobre o processo de insero aleatria de rudos. O senograma "Abdom" possui 256 colunas

por 90 linhas, com 16 bpp, totalizando 46.080 bytes.

% rudo SR Entropia Aritmtica Transf. S Transf. S+P GZIP LJPG


0% - 37% 37% 46% 24% 89% 61%
0,1% 826,96 13% 12% 25% 21% 23% 29%
0,2% 406,58 12% 11% 21% 21% 17% 21%
1% 80,39 7% 6% 18% 19% 7% 12%
2% 40,31 5% 4% 17% 17% 5% 10%
10% 8,02 3% 3% 9% 8% 3% 2%
20% 4,02 3% 2% 5% 5% 2% -2%
25% 3,23 3% 2% 4% 4% 2% -3%
33% 2,43 3% 2% 3% 3% 2% -4%
50% 1,61 2% 2% 2% 1% 2% -6%
100% 0,80 1% 0% 0% 0% 0% -7%

Tabela 5.4 - Compresso para o senograma "Abdom" com insero de rudo


50

100,-..--------------------,.,
+--r---'---~ 1f :.',~ ',.
80%70% t- \ .
90".
t~

~
0'

i \-- - - - - - : : - - - - - - - -";;;-' - ----1


'oi" . ,--- - - --,
_ \ _ .. --+-- Entropia
~ 60%~~~---~------------~
-Se 40%50% +--\1---
c.
~
\
\ - - - -- - - - -- - - - -- -j
\\. ,_
~~-~
____ Aritmtica
Transf. S
<5 .... . , . . . ---w-- Tran,f. S+P
~ 30%+-~7 \~------~----~~~--j
~ ~ ;. _ _ GZIP
= 20% . ~~~~~~~~~------~----1

. . 10% t~=~'i~~
O ~.
-1 0% . 0%
~~~=~
~~~!~~~~.,~;~ --+-LJPG
0,1% 0,2% 1% 2%, 10" 20% 25% 3.

-20% - ' - - - - - - - - - - - - - - - - - - - - - '


Percencu.1 de Ru'do

Figura 5.4 - Grfico comparativo do senograma "Abdom" com escala percentual de rudo.

Ao se analisar os resultados, pode-se verificar que a partir do percentual de 0,2%

de rudo, os mtodos que utilizam a transformada wavelet passam a ter taxa de compresso

superior em relao aos mtodos de uso geral GZIP e LJPG. Isto mostra a importncia de se

considerar o rudo presente no senograma no desempenho da codificao.

5.3 Compresso dos Senogramas com Rudo Padro


Nesta seo esto os resultados da compresso de senogramas com um percentual

padro de 1% de rudo, para se ter uma idia do comportamento dos mtodos de compresso

com os outros senogramas. Estima-se que um senograma real possa ter um percentual de

rudo proveniente do processo de deteco numa faixa de 0,01% a 10%, dependendo da

qualidade do equipamento.

A tabela 5.5 mostra as taxas de compresso para os 6 senogramas simulados, com

rudos inseridos e os 3 senogramas reais. Para os senogramas reais no se tm os valores da


51
relao sinal/rudo (SR) porque no sofreram insero de rudo controlado, visto que esto no

estado original, j com rudos inseridos pelo prprio processo de gerao.

Senograma SR Entropi a Arit:rmtica Transf. S Transf. S+P GZIP LJPG


Abdom 80,39 7% 6/. 18% 190/0 7% 12.4
Brain 88,85 11 % 11% 17% 18". 11 '1. 11%
Hem ia 89,65 SY. 4% 17% 18". 5% 11%
Head 83,81 11 % ll o/. 190.4 200/0 11 0/. 13%
Phantoo 88,55 9% 8% 19% 20% 9% 14%
Torax 81 ,57 7% 6% 18% 190/0 70/. 11 %
Dente01 - 8% 7% 25% 27% 9"1. 1 %
Dente02 - 8% 7% 27-1. 29"/0 9"/0 1%
Dente03 - 7% 7% 27",. 28% 9% 0'/0
Mdia 85,47 8% 8% 21 % 22% 80/. 8%
D. Padro 4,05 2% 2% 4% 4% 20/. 70/.

Tabela 5.5 - Compresso do senogramas com rudo padro.

35% ' ..
-
." \c
30% .
y
o 25%
..... ---+- Entropia
20% . / ___ Aritmtica
!
Q. - ~

Transf. S

... ......
E 15%
o _ _ Transf. S+P
~
O
.., ~

..
OI
10% . -lIf-GZ P

....".. ~
.\.
'J 'c
/ -
___ UPG

~\
5% .

0%
-5~ ~ Jif' ","f> .# ..' ~ J)" .J9- .JS' .d
-~ 'O. ~~ '(' q""'" <;
Q./i' Q./i' Q./i'
~-

Senogramas

Figura 5.5 - Grfico comparativo dos senogramas com rudo padro.

Neste caso, pode-se notar que os mtodos que utilizam a transformada wavelet

apresentam uma taxa de compresso superior aos demais mtodos. Os resultados so

semelhantes para todas os senogramas aqui utilizados.


52

5.4 Compresso de Imagens


A Tabela 5.6 apresenta os resultados da compresso entre os mtodos aqUI

utilizados, para seis imagens de TC, todas com 256 colunas por 256 linhas e com 8 bits por

pixel, totalizando 65.536 bytes.

Imagem Entropia Aritmtica Trsmf. S T ....... f.S+P GZIP LJPG


Abdom 63% 6 1% 55% 51 % 80"/0 70%
Brain 74% 71 % 66% 6 1% 87% 77%
Hemia 46% 45% 40% 38% 6 1% 500/0
~ead 75% 7 1% 66% 60% 86% 74%
Phanton 79% 78% 79% 65% 98% 86%
Torax 57% 55% 53% 49% 75% 66%
DenteO l 36% 34% 33% 34% 34% 34%
Dente02 33% 32% 47% 48% 38% 500/0
Dente03 28% 26% 400/0 400/0 28% 44%
Mdia 54% 53% 53% 50% 65% 6 1%
D. Padrllo 19% 19% 15% 11 % 26% 17%

Tabela 5.6 - Compresso das imagens de Te.

100%
90%
80%
-+- Entropia
~
70%
~ Aritmtica

~ 60~o
T ran sf. S
E
o 50%
u ~ T ransf. S+P
~
40%
" - l f - GZIl'
....~ 300/. _ _ LJPG
20%
10%
0%

.#'~ 0-~~ xl'. . ~..~ q~.f"~ ....d-." c!'~' t/~~ <:/'"~ ~..,
Imagens

Figura 5.6 - Grfico comparativo das imagens de TC comprimidas.

Neste caso, pode-se observar que as taxas de compresso das transformadas S e

S+P esto inferiores s taxas conseguidas pelos mtodos de uso geral.


53
A tabela 5.7, a seguir, mostra as imagens comprimidas com rudos, adicionados

antes da compresso. O item 4.1 mostra maiores detalhes sobre o processo de insero

aleatria de rudos. A imagem "Abdom" possui 256 colunas por 256 linhas, com 8 bpp,

totalizando 65 .536 bytes.

v. ruido SR Entropia Arl_dca TransE S Trans[ S+P GZIP WPG


0% - 630/. 6 1% 55% 51% 80% 70%
2% 85,87 49% 47% 49% 48% 59% 57%
10% 9,3 1 27% 26% 35% 34% 28% 3 6~.
20"10 4,40 19'10 18% 25% 23% 190.4 25%
25% 3,47 16% 16% 22-;. 20"10 16% 21 %
33% 2,63 13% 13% 18% 15% 13/. 17%
50% 1,7 1 11 % 11% 11-;0 8% 100/. 9%
100"/. 0,85 4% 4% 1% 1% 3% -2/.

Tabela 5.7 - Compresso para a imagem "Abdom" com insero de rudo

90%

80%
c.
:L
70% :\.. te,_ .. "
-.""
o 60% t...~ .. -+- En fropia
~
..
e 50 %
~'" ,. .. ____ Aritmtica

"'''
Transf. S
eo 40% .

.~
U _ _ Tronsf. s+P
...
~
30% .
,~
_____ GZ IP

....= 20 ~o
. .
- - . LJPG
10% .

0% ~

-10 0/.
0% 2% 100/. 20% 25% 33;' 50,4 I~%
Pe rcentual de Ruldo

Figura 5.7 - Grfico comparativo da imagem "Abdom" com escalas de rudo.

Neste caso, pode-se verificar que para um percentual de rudo em torno de I 0%, os

mtodos que utilizam a transformada wavelet passam ter taxas de compresso maiores do que

as dos mtodos de uso geral GZIP e LJPG.


54

5.5 Comparativo de Compresso Imagens x Senogramas


Com o objetivo de avaliar o que mais eficiente comprimir, apresenta-se um

comparativo entre a compresso das imagens e senogramas. Vale lembrar que so dois

domnios distintos, com dimenses e resoluo de cores diferentes (8bpp e 16bpp), portanto

um cenrio de difcil comparao quantitativa. Comparando-se o tamanho original, os

senogramas possuem a vantagem de, em geral, serem menores, porm tambm podem ter

tamanhos maiores. Neste trabalho, sero utilizados somente senogramas gerados com um

passo de 2 graus, o que j fornece uma imagem adequada. Uma melhor qualidade pode ser

conseguida diminuindo-se o passo. Se fosse utilizado um passo de 1 grau, seria gerado um

senograma com 180 linhas, totalizando 92.160 bytes, portanto maior que os 65.536 bytes da

imagem.

A tabela 5.8 mostra a taxa de compresso, com insero de rudos (1%) em

senogramas. O clculo desta taxa considera os tamanhos finais das imagens e senogramas,

comparado com o tamanho original da imagem de 65.536 bytes. As imagens utilizadas esto

sem rudos inseridos e possuem 8 bits por pixel de informao. Os senogramas possuem 16

bits por pixel de informao.

Normal Entr Aritm S SfP GZIP LJPG Entr Aritm S SfP GZIP LJPG
Imagem Sen Sen Sen Sen Sen Sen Sen Img Img Img Img Img Img
Abdom 30% 34% 34% 42% 43% 34% 38% 63% 61% 55% 51% 80% 70%
Braim 30% 38% 37% 42% 43% 37% 38% 74% 71% 66% 61% 87% 77%
Hernia 30% 33% 33% 42% 43% 33% 37% 46% 45% 40% 38% 61% 50%
Head 30% 38% 37% 43% 44% 37% 39% 75% 71% 66% 60% 85% 74%
Phanton 30% 36% 35% 43% 44% 36% 40% 79% 78% 79% 65% 98% 86%
Trax 30% 34% 34% 42% 43% 35% 38% 57% 55% 53% 49% 75% 66%
Mdia 30% 35% 35% 42% 43% 35% 38% 65% 64% 60% 54% 81% 71%
D. Padro 0% 2% 2% 1% 0% 2% 1% 13% 12% 14% 10% 12% 12%

Tabela 5.8 - Taxa de compresso considerando o tamanho original da imagem.


55

100%
90%
-
. ,i
E 80-/0
!'. 70% -- ,;' ,,;;;;; ,: .. [] Abdorn
] ~ '. .Braim
60% -
~I[
o " o Hem ia
'!; 50%
OHead
-!l
~ 40%
E Phant on
= 3 0%
...= 20 %
c Torax

C 10%
0%
Nonn Enlr Arilm S S+P GZIP LJPG Enlr Aritm S S+P GZIP UPG
(Sco) ( Sen ) (Sco) (Sco) (Sen) (Sco) ( Sco) (Irng) (irng) (lmg) ( Img) (Irn g) ( Irng)
Imagens e Sen ogramas

Figura 5.8 - Grfico da taxa de compresso comparado ao tamanho original da imagem.

Pode-se notar que h uma tendncia de maiores taxas de compresso nos mtodos

GZIP, em primeiro lugar e em segundo para o LJPG, considerando-se as imagens. O ganho

destes mtodos pode ser explicado pela organizao das informaes dos pixels, onde existe

um desequilbrio grande entre as probabilidades de ocorrncia dos smbolos nessas imagens.

Como pode ver verificado, com a insero de rudos, a taxa de compresso destes mtodos

decresce, portanto, pode-se concluir que a variao nos valores das informaes exerce

influncia nos diversos mtodos de compresso.

Ao se analisar os dados desta comparao, considerando os senogramas com rudo

padro de 1%, pode-se notar que a taxa de compresso para os senogramas so mais baixas

quando comparadas com as taxas de compresso das imagens. Lembra-se novamente que so

dois domnios diferentes e sua comparao direta deve ser apenas uma avaliao subjetiva.

De qualquer maneira, este resultado refora a importncia do nmero de bits por

pixel no tamanho final do arquivo. Uma maneira de se melhorar a taxa de compresso dos

senogramas seria reduzir o nmero de bits por pixel, porm esta reduo no passo da
56
quantizao poderia resultar em perda de informao, ou equivalente, na adio de um rudo

de quantizao mais elevado.

Na tabela 5.9 mostra-se as mdias dos tamanhos resultantes, em bytes, das imagens

comprimidas sem rudo e senogramas comprimidos sem rudo e com rudo padro de 1%.

S. Aribn<tI.. Tnnsf.S T......tS+P GZIP WPG


Imagem 30% 65% 64% 60% S4% 81% 71%
Smograma .... rudo 30% 59% 'SOlo 63% 48"/0 92% 73%
Saloo:rama com rujdo 30% 35% 35% 42% 43% 35% 38%

Tabela 5.9 - comparao entre as mdias das compresses.

100%

90%
e 80%
'li Scnograma
~
... 70%
O En tropia
u 60% O Aritmtica
...
~

M
50% Transf. S
~

-
II
...
=
M
40%

30%
[J Transf. StP
. GZIP
[JLJPG
~
:;
20%

10%

0%
Imagem Senograma sem ruioo Senograma com rudo
lm.geRs e Senograms

Figura 5.9 - Grfico das mdias das compresses com e sem rudo.

Foi verificado que a presena de rudos determina maior ou menor ganho entre os

mtodos de compresso. Nos testes realizados com insero de rudos, fo constatado que

rudos em tomo de I% no alteram os resultados dos mtodos de compresso para as

imagens. Portanto, fica evidente que existem vantagens em se comprimir imagens, mesmo

aquelas que possuem pequenos percentuais de rudo . No entanto, esta vantagem va

diminuindo medida que o percentual de rudo aumenta, conforme verificado na figura 5.7.
57
As imagens aqui utilizadas na realizao dos testes, com rudos, no representam a

imagem reconstruda a partir do seu senograma com rudo. Elas tambm tiveram rudos

inseridos, a partir da imagem original, nas mesmas propores, a fim de se verificar a

influncia tanto no senograma quanto na imagem. A influncia no senograma muito maior

devido a amplitude do seu sinal, que representado por 2 bytes, podendo assumir valores

entre 0 e 65.535. Na imagem, a influncia do rudo menor porque a amplitude do sinal

representado por 1 byte, podendo assumir valores entre 0 e 255.


58

6. Concluso
As imagens digitais necessitam de grande espao para armazenamento, a exemplo

dos sistemas mdicos que trabalham com diagnstico por imagem. Alm de gerar um grande

volume de dados, podem ocasionar lentido nos sistemas que utilizam catalogao,

recuperao e transmisso destas imagens, o que torna evidente a necessidade de aplicar

alguma tcnica de compresso. No caso de imagens mdicas, deve-se levar em conta que, em

geral, no deve haver perda de informaes, quando for aplicada alguma tcnica de

compresso. Existindo perdas, poder haver alteraes na imagem a ser analisada, podendo

ocorrer erros no diagnstico mdico. Assim como as imagens, as projees de tomografia

computadorizada (senogramas) tambm no devem sofrer perdas na compresso, para

permitir a reconstruo exata da imagem, aps sua descompresso. A principal motivao

para compresso e armazenamento de senogramas permitir que os dados originais sejam

preservados e as imagens possam ser regeradas com diferentes algoritmos de reconstruo.

Nos testes realizados neste trabalho, foram comparadas as taxas de compresso de

alguns dos mtodos de compresso sem perdas: GZIP (baseado no Lempel-Ziv e largamente

utilizado para compresso de dados), LJPG (baseado na DPCM e utilizado especificamente

para imagens) e wavelets de inteiros com codificao aritmtica (mtodo menos difundido).

Os testes foram aplicados tanto sobre as projees de tomografia computadorizada

(senogramas) quanto para suas imagens reconstrudas.

No pequeno conjunto de senogramas utilizados (3 reais e 6 simulados com 1% de

rudo adicionado), pode-se verificar que as transformadas wavelets apresentaram os maiores

ganhos com cerca de 22% de taxa de compresso. Os mtodos GZIP e LJPG ficaram abaixo

com 8%. Ressalta-se que o LJPG operou sobre palavra de 8 bits e no 16 bits, o que pode ter
59
prejudicado sua capacidade de interpretao fiel da imagem. Porm esta uma dificuldade

presente na prtica visto que a maioria das implementaes no permite a configurao de

lbpp, embora pela definio do algoritmo no exista nenhuma restrio.

Pode ser observado o ganho introduzido pelo uso das transformadas wavelets. As

transformadas S e S+P foram utilizadas neste trabalho em conjunto com a codificao

aritmtica, que aps a reorganizao dos pixels da imagem, utilizam esta codificao para

efetuar a compresso propriamente dita. Os resultados obtidos pela compresso da

codificao aritmtica ficou muito prxima da entropia de I a ordem. J a compresso pelas

transformadas wavelets apresentaram as melhores taxas de compresso, comprovando a

eficcia do mtodo.

Foi realizada uma comparao entre a compresso dos senogramas e a imagens

com o objetivo de avaliar a eficincia na compresso. O resultado obtido no indica ganho

significativo em termos do tamanho final do arquivo.

Finalizando a anlise entre os mtodos aqui utilizados, podemos confirmar o

potencial oferecido pela tcnica da transformada wavelet, a qual capacita trabalhar com

imagens de forma adequada na rea de compresso de imagens.

A seguir, apresentamos algumas sugestes para trabalhos futuros, relacionadas

rea de compresso de imagens e utilizao das transformadas wavelet.

realizao de testes com os mtodos de compresso, utilizando-se imagens

reais, obtidas a partir de tomgrafos mdicos;

Realizar testes em imagens e senogramas com profundidade de bits diferente

de 16. Utilizar imagens com 15, 14, 13 e 12 bits, utilizando o menor nmero
60
necessrio de bits em funo do rudo do equipamento, objetivando descobrir a

eficincia dos mtodos de compresso;

Aplicao de outros filtros wavelet que se adaptem melhor s caractersticas

presentes nas projees, usando o lifting scheme ou o mtodo de correo;


61

Apndice 1 - Padres de Compresso de Imagem

1.1 Padro GZIP


O padro GZIP (Gnu ZIP) de compresso um software desenvolvido sob a

licena GNU e distribudo gratuitamente para compresso de dados de propsito geral. O

algoritmo de compresso utilizado pelo gzip o LZ77 (Lempel-Ziv 1977), comentado no

item 3.5.1 [ZIV77],

O mtodo encontra strings duplicadas nos dados de entrada. A segunda ocorrncia

da string substituda por ponteiros para a string anterior, na forma de pares (distncia,

comprimento), onde o primeiro representa a distncia para trs que a seqncia inicia e o

segundo representa o nmero de caracteres na qual a seqncia idntica. Distncias so

limitadas por 32Kb e comprimentos so limitados por 258 bytes. Quando uma string no

ocorre em nenhum lugar nos 32Kb anteriores, ela emitida como uma seqncia literal de

bytes (A string pode ser uma seqncia arbitrria de bytes e no restrita a caracteres

imprimveis).

Literais ou comprimentos iguais so comprimidos com uma rvore de Huffman, e

distncias iguais so comprimidas com outra rvore. As rvores so armazenadas numa

forma compacta no inicio de cada bloco. Os blocos podem ser de qualquer tamanho (exceto

que os dados comprimidos para um bloco tem que encaixar dentro da memria disponvel).

Um bloco terminado quando o algoritmo deflateO determina que deve ser conveniente

comear outro bloco com rvores novas. (Isso um tanto parecido com o comportamento do

algoritmo de compresso LZW).


62
Strings duplicadas so encontradas utilizando uma tabela de hash. Todas as strings

de entrada de tamanho 3 so inseridas na tabela de hash. O ndice hash calculado para os

prximos 3 bytes. Se o encadeamento de hash (hash chain) para esse ndice no vazio,

todas as strings nesse encadeamento (chain) so comparados com a string de entrada atual, e

a maior combinao selecionada.

Os encadeamentos de hash so procurados iniciando pelas strings mais recentes,

para favorecer as distncias menores e assim tirar vantagem da codificao de Huffman. Os

encadeamentos de hash so unidos um por um. No h remoes nos encadeamentos de

hash, o algoritmo simplesmente descarta combinaes que so velhas demais.

Para evitar uma situao de pior caso, encadeamentos de hash muito extensas so

truncadas arbitrariamente num certo comprimento, determinado por um parmetro do

deflatelnit (opo em tempo de execuo). Assim, o algoritmo deflateQ nem sempre acha a

maior combinao possvel, mas geralmente encontra uma que comprida o bastante

[AGOOO],

1.2 Padro JPEG


A necessidade de um padro internacional para compresso de imagens estticas

resultou, em 1986, na formao do JPEG. Formalmente conhecido como ISO/IEC

JTC1/SC29/WG1. O objetivo deste grupo foi desenvolver um mtodo para compresso de

imagens de tons contnuos que atendesse aos seguintes requisitos:

1. A qualidade da imagem reconstruda deve ser a mais perfeita possvel quando

comparada com a original. O codificador deve ser parametrizado permitindo a

escolha da taxa de compresso e qualidade da imagem desejvel.


63
2. Ser aplicvel para praticamente qualquer tipo imagem digital de tons contnuos

e no devem haver restries com relao ao contedo da cena, tais como

complexidade, nmero de cores ou propriedades estatsticas.

3. Ter uma complexidade computacional razovel, permitindo sua implementao

tanto em software quanto em hardware.

4. Ter os seguintes modos de operao: (1) Codificao seqencial, onde cada

componente da imagem codificado com uma simples varredura da esquerda

para a direita e de cima para baixo; (2) Codificao progressiva, onde a

imagem codificada em mltiplas varreduras para aplicaes no qual o tempo

de transmisso longo; (3) codificao sem perdas, onde a imagem

codificada garantindo a reconstruo exata da imagem original e (4)

Codificao hierrquica, onde a imagem codificada em mltiplas resolues.

Uma expectativa comum com relao ao uso da transformada wavelet que ela

produz uma melhor qualidade subjetiva da imagem do que o codificador JPEG padro. Em

vista disso, o JPEG est propondo um novo padro para compresso de imagens chamado

JPEG-2000. Esse novo paradigma de compresso de imagens utilizar a transformada

wavelet ao invs da DCT.

Em [SAN01] comentado sobre o projeto JPEG 2000, onde foi motivado com a

submisso do algoritmo CREW para a padronizao de compresso sem perdas (lossless) e

quase sem perdas (near-lossless) para imagens de tons contnuos, conhecido agora como

JPEG-LS. Embora o LOCO-I tenha sido selecionado como a base para o JPEG-LS. Todavia,

foi reconhecido que o CREW possui muitas caractersticas que merecia o desenvolvimento

de um novo padro. Em 1996, o JPEG-2000 foi aprovado como um novo item de trabalho.
64
JPEG 2000 refere-se para todas as partes do padro. A proposta atual constituda

de 6 partes. As partes so:

Parte 1, Sistema de codificao de imagens JPEG 2000 (o ncleo)

Parte 2, Extenses (adicionar mais caractersticas e sofisticao para o ncleo)

Parte 3, Motion JPEG 2000

Parte 4, Adaptao

Parte 5, Software de referncia (atualmente implementaes em Java e C)

Parte 6, Formato de arquivo para imagens compostas.

O padro JPEG-2000 ter como caracterstica a eficincia da compresso

melhorada (estimada em 30% dependendo do tamanho e da taxa de bits da imagem),

permitir compresso tanto com perdas quanto sem perdas, mltiplas resolues,

decodificao progressiva, codificao de regio de interesse (Region Of Interest - ROI), o

qual permite selecionar partes de uma imagem para ser codificada com mais alta qualidade, e

ainda, tudo em um nico fluxo de bits comprimido. Permitindo as aplicaes manipularem ou

transmitirem somente as informaes essenciais para um dispositivo a partir da imagem fonte

comprimida.

O JPEG 2000 tem muitas caractersticas novas em relao ao JPEG padro,

algumas delas so:

A sua performance em compresso constitui o estado da arte para baixa taxa de

bits;

Transmisso progressiva por qualidade, resoluo, componentes ou localidade

espacial;

Compresso com perdas e sem perdas unificado;

Acesso aleatrio para fluxo de bits (bitstream);


65
Processamento no domnio comprimido (por exemplo, rotao e corte);

Codificao da regio de interesse por progresso (permite transmitir a regio

de interesse primeiro durante a transmisso progressiva).

A complexidade da transformada wavelet no JPEG 2000, depende do tamanho do

filtro e dos filtros de ponto flutuante ((9,7), (10,18)) versus filtros inteiros ((13, 7), (3, 5), (5,

3), (2,10), etc.) utilizados. A Parte I exigir uma wavelet de ponto flutuante (9, 7) e uma

inteira (3, 5), enquanto a Parte II permitir wavelets mltiplas incluindo as definidas pelo

usurio.

Um anexo do padro JPEG 2000 contm um formato de arquivo opcional para

incluir informaes tais como o espao das cores dos pixels e informaes de propriedade

intelectual (direitos autorais) para a imagem. Este formato opcional de arquivo extensvel e

a parte II definir armazenamento de muitos tipos adicionais de metadados. A extenso

utilizada para representar o formato do arquivo "JP2" [SAN01].

1.3 Transformada Wavelet Reversvel


Um excelente estudo sobre transformada wavelet foi realizada por [SAN01], de

onde, uma parte dela, ser descrita nesta seo. A transformada wavelet tem sido amplamente

utilizada como uma ferramenta poderosa para compresso de imagens. Todavia, at

recentemente, seu uso era limitado para aplicaes de compresso de imagens com perdas.

Transformadas wavelets de inteiros reversveis so filtros lineares com

arredondamento no linear os quais implementa sistemas de reconstruo exata utilizando

aritmtica de inteiros. As transformadas reversveis, em geral, no so lineares. Por este

motivo, a ordem na qual a transformada aplicada torna-se significativa, ou seja, se a


66
decomposio foi aplicada primeiro nas linhas e em seguida nas colunas da imagem, a

transformada inversa deve primeiro ser aplicada nas colunas e ento nas linhas da imagem.

As transformadas wavelet de inteiros utilizadas na compresso dos senogramas e

imagens so baseadas nas transformadas que possuem a propriedade de preservao de

preciso (property of precision preservation - PPP) e permitem a compresso sem perdas de

imagens com tamanho arbitrrio. Estas transformadas so baseadas em tcnicas de

atualizao e correo, tais como o lifting scheme e a transformada S+P. O mtodo permite

gerar uma srie de transformaes inteiras reversveis que so muito prximas das

transformadas wavelet biortogonais correspondentes e algumas transformadas wavelet no

ortogonais, porm podem ser calculadas com somas de inteiros e operaes de deslocamento

de bits.

Aps a aplicao da transformada direta, os coeficientes detalhe podem assumir

valores negativos e o nmero de bits usados para representar a imagem podem no ser mais

suficientes, havendo a necessidade de se usar um bit adicional para representar o sinal do

nmero. A PPP permite manter o nmero de bits usados para representar cada pixel da

imagem inalterado. No algoritmo de reconstruo o computador recuperar o sinal original

atravs da mesma propriedade.

Alguns dos coeficientes obtidos da transformada PPP tero valores de sada

diferentes dos obtidos com a transformada sem a aplicao desta propriedade. Os resultados

obtidos com o uso desta propriedade possuem aproximadamente a mesma eficincia na

compresso sem perdas, que significa que a entropia da imagem transformada dessas duas

transformadas so quase a mesma. A transformada PPP no aplicvel para compresso com

perdas.
67
Uma outra caracterstica da PPP est na forma como o computador realiza

aritmtica com nmeros inteiros. Se for considerado a computao da diferena de dois

nmeros inteiros dado como c = - a e a computao inversa de a = b - c. A computao

ser efetuado da seguinte maneira pelo computador:

b-a se -29-1 <b-a<29-1


c' i b-a-2q se b-a> 2q~x (Al.l)
b-a + 2q se b-a<-2q~x

e a inversa sera

b-c' se -2^ <b-c'<2q~1


d- b-c'-2q se b-c'>2<t~1 (Al.2)
b-c'+2q se b-c'<-2q~x

onde c' e a' indicam a representao interna no computador e o intervalo dos inteiros a, b ec

[-2q-1, 2?_1-1]. A representao interna de c' quando ocorrer um overflow ou underflow ser

um nmero com complemento de dois, ento a representao interna pode no ser a mesma

da representao externa de c. Porm, o mesmo cdigo complementar para a' permitir que a

representao interna seja igual a representao externa de a.

A transformada wavelet de Haar na sua verso no normalizada envolve

simplesmente pares de mdias e diferenas:

5W= * [ 2 ] + X[2k + 1] ( a u )

d[ri\ = JC[2+1] - x[2n] (Al .4)

Para o caso de uma imagem, deve-se aplicar a transformada acima nas linhas e nas

colunas da imagem. A transformada inversa de Haar dada por

x[2ri\ = s[ri\-^ (Al.5)


68

x[2+l ] = +^ (Al .6)

Por causa da diviso por dois, as equaes acima no so transformadas inteiras.

Para evitar isso, poderamos omitir a diviso por dois calculando a soma em vez da mdia.

Porm, prefervel usar uma construo mais eficiente conhecida como transformada S

(Seqencial) que uma verso da transformada de Haar modificada para inteiros. A

transformada S a mais antiga transformada wavelet de inteiro para inteiro. Existe na

literatura diferentes definies da transformada S, mas muitas diferem apenas na forma em

que so implementadas. A transformada S ser definida aqui como segue:

x[2ri\ + x[2n +1]


s[n] (A1.7)

d\ri\ = x[2+l] - x[2n] (Al .8)

onde |_ J corresponde a operao de truncamente para baixo. A primeira vista, o truncamento

em s[] parece descartar alguma informao. Todavia, a soma e a diferena de dois nmeros

inteiros so tambm ambos pares ou ambos impares. Com base nessa informao, pode-se

omitir o bit menos significativo da soma, pois ele igual ao bit menos significativo da

diferena (d{ri\). A diferena poder ento ser usada para determinar se ocorreu o

truncamento. Se este valor for impar indicar o truncamento para o menor inteiro.

Note que o ndice de fator dois ([2]), nos coeficientes da transformada, o

resultado da subamostragem por um fator de 2, enquanto que a operao de truncamento |_-J

a fonte da no linearidade.

Como os pixels adjacentes em uma imagem so altamente correlacionados, a

aplicao da transformada acima permite reduzir significativamente a entropia de primeira


69
ordem da imagem, que pode ser reduzida ainda mais se for usado um mtodo de codificao

preditiva.

A transformada S inversivel e sua inversa dada por

d[n]
x[2n] = s[w] - (Al.9)

4] + l
x[2+l] = s[] + (A1.10)

Said e Pearlman propuseram a transformada S+P (Transformada S + Predio) na

qual a predio linear realizada nos coeficientes passa baixa para gerar um novo conjunto

de coeficientes passa alta depois da aplicao da transformada S. A forma geral da

transformada S+P :

dm\ri\ = x[2n +1] - x[2n] (Al. 11)

dm[ri\
5[W]=X[2W] + (Al. 12)

gl, (s[ - 2] - s[w -1]) + a0(s[w -1] - s[w])


d{n] = dm[n] + (Al. 13)
+ ai(s[n]-s[n + l])-1dm[n + l]

Said e Pearlman examinaram vrias escolhas para an e \ e sugerem a.\ 0, ao =

2 3 _ 2 . 1 4 8 .= 6
,a\ = e\~ para imagens naturais e a i = , ao - , ai = e i para
8 8 8 16 16 16 16

imagens mdicas muito suave.


70

Apndice 2 - Formatos de Imagem

2.1 Formato BMP


No trabalho de [AGOOO] tem-se um resumo sobre o padro BMP. o formato de

imagem nativo do sistema operacional Microsoft Windows. Este padro suporta

imagens com 1, 4, 8, 16, 24 e 32 bits por pixel. Este formato pode se apresentar com

compresso, utilizando o algoritmo RLE [MUR96], ou ainda sem nenhuma compresso.

A verso inicial do formato BMP era formada apenas por um cabealho do

arquivo e pelos dados dos pixels, conforme a Figura A2.1.

Cabealho do Arquivo

Dados dos pixels


Figura A2.1 - Formato BMP na verso inicial.

A partir da segunda verso, o formato do arquivo BMP evoluiu, permanecendo

desta forma at as verses atuais. Neste novo formato, alm do cabealho do arquivo e dos

dados de pixels, foi includo um cabealho da imagem e uma paleta de cores na ordem

apresentada na Figura A2.2. A paleta de cores s existe se o nmero de bits por pixel for 1, 4

ou 8.

Cabealho do Arquivo

Cabealho da Imagem

Paleta de Cores

Dados dos pixels

Figura A2.2 - Formato BMP a partir da segunda verso.


71
0 cabealho do arquivo serve para identificar o formato do arquivo e est

apresentado na Tabela A2.1.

Nome do Campo Tamanho (bytes) Descrio

Tipo 2 Contm os caracteres "BM".


Tamanho 4 Tamanho do arquivo em bytes.
Reservado 2 No utilizado (deve valer zero).
Reservado 2 No utilizado (deve valer zero).
Deslocamento 4 Deslocamento para o incio dos dados.

Tabela A2.1 - Cabealho de arquivo do formato BMP

Imediatamente depois do cabealho do arquivo localiza-se o cabealho da imagem,

podendo seguir duas estruturas diferentes, uma para Windows e outra para OS/2. Apenas o

cabealho para Windows ser detalhado neste trabalho. Na Tabela A2.2 est apresentado o

formato de cabealho para Windows 3.x.

Na verso para Windows 95 mais campos foram adicionados a este cabealho,

como forma de dar suporte, principalmente, aos novos nmeros de bits por pixel suportados

(16, 24 ou 32). Estes novos campos esto apresentados na Tabela A2.2 e so colocados

exatamente depois dos campos da Tabela A2.1. Caso o nmero de bits por pixel seja 1, 4 ou

8, este complemento ao cabealho da imagem no existe, sendo substitudo pela paleta de

cores.

Na Tabela A2.2, o campo Planos deve ser 1 porque o padro BMP usa apenas um

plano de cores. O tipo de compresso, definido pelo campo Compresso, pode ser sem

compresso (Compresso=0), comprimido por RLE8 (Compresso^ 1 ), comprimido por

RLE4 (Compresso^2), ou utilizar mscaras de campo 0Compresso=3), para significar que

os dados no esto comprimidos e que no existe paleta de cores.


72
Nome do Campo Tamanho (bytes) Descrio

Tamanho 4 Tamanho do cabealho (40 a 108 bytes).


Largura 4 Largura da imagem.
Comprimento 4 Comprimento da imagem.
Planos 2 Nmero de plano de cores (deve ser um).
Bits por pixel 2 Bits por pixel (1,4,8,16,24 ou 32).
Compresso 4 Tipo de compresso.
Tamanho da Imagem 4 Tamanho da imagem.
Pixels por metro X 4 Resoluo horizontal em pixels por metro.
Pixels por metro Y 4 Resoluo vertical em pixels por metro.
Cores Usadas 4 Entradas na paleta de cores usadas.
Cores Importantes 4 Nmero de cores significativas.

Tabela A2.2 - Cabealho de imagem do formato BMP

Tamanho (bytes) Descrio

Mscara Vermelha Identifica bits do componente Vermelho.


Mscara Verde Identifica bits do componente Verde.
Mscara Azul Identifica bits do componente azul.
Mscara Alpha Identifica bits do componente alpha.
Tipo de cor Tipo do espaa de cores.
Vermelho X Coordenada X do ponto fim .
Vermelho Y Coordenada Y do ponto fim .
Vermelho Z Coordenada Z do ponto fim .
Verde X Coordenada X do ponto fim .
Verde Y Coordenada Y do ponto fim .
Verde Z Coordenada Z do ponto fim .
Azul X Coordenada X do ponto fim .
Azul Y Coordenada Y do ponto fim .
Azul Z Coordenada Z do ponto fim .
Gamma Coord, do valor de escala do gamma.
Gamma Verde Coord, do valor de escala do gamma verde.
Gamma Azul Coord, do valor de escala do gamma azul.

Tabela A2.3 - Continuao do cabealho de imagem do formato BMP

Na Tabela A2.3, os campos Mscara Vermelha, Mscara Verde, Mscara Azul e

Mscara Alpha especificam, para BMPs de 16 ou 32 bits, quais bits em um valor de pixel

correspondem a uma cor especfica ou ao canal alpha, que armazena os dados de

transparncia do pixel, sendo que este valor pode variar de 0 (pixel completamente
73
transparente) at 255 (pixel completamente opaco) [MUR96], O campo Tipo de Cor define o

tipo de espao de cores usado. As opes so: RGB calibrado (Tipo de Cor=0), RGB

dependente de dispositivo (Tipo de Cor=l) e CMYK dependente de dispositivo (Tipo de

Cor=2). Os campos Vermelho X, Vermelho Y, Vermelho Z, Verde X, Verde Y, Verde Z,

Azul X, Azul Y e Azul Z so usados apenas para o espao de cores RGB calibrado.

Aps o cabealho de imagem, localiza-se a paleta de cores. Esta paleta um vetor de

estruturas que especificam os valores de intensidade das cores vermelho, verde e azul de cada

cor em uma imagem. Cada pixel, nos dados de pixels, armazena um valor simples, que

usado como ndice na paleta de cores. A paleta de cores s existe em arquivos BMP com 1, 4

ou 8 bits por pixel. Nos arquivos com 16, 24 ou 32 bits por pixel, existem mscaras para cada

cor no lugar da paleta de cores. O valor da mscara usado para fazer um AND com o valor

do pixel e, com isso, capturar a intensidade de uma cor especfica no pixel.

Aps a paleta de cores, se ela existir, vm os dados de pixel. Dependendo do

nmero de bits por pixel, a interpretao dos dados diferente. Se forem 1, 4 ou 8 bits por

pixel, o dado armazenado o ndice do pixel na paleta de cores. Se forem 16, 24 ou 32 bits,

os dados armazenados contm toda a informao de cores do pixel, onde se usa as mscaras

para interpret-las separadamente.

A nica compresso possvel no formato BMP a RLE, abordada no Apndice 3

deste trabalho, portanto a compresso no BMP sem perdas. Existem dois tipos diferentes de

RLE utilizadas no formato bitmap. A primeira usa 4 bits como elemento atmico e a segunda

usa 8 bits. Por isso, os pixels representados com 1, 16, 24 ou 32 bits no podem ser

comprimidos no formato BMP [MUR96],


74

2.2 Formato PBM


A designao de formato de imagem PBM (Portable Bitmap) engloba trs

formatos de imagem para imagens a preto e branco, em escala de tons cinzentos e a cores,

todos eles sem compresso e que apresentam uma estrutura comum. Os trs tipos de formato

de imagens so:

PBM (Portable BitMap): para imagens de dois nveis (preto e branco)

PGM (Portable GrayMap): para imagens em tons de cinza

PPM (Portable PixMap): para imagens coloridas

A definio original destes formatos teve em vista permitir a transmisso de

imagens por meio de correio eletrnico que, data da definio, ainda no permitia a

transmisso de arquivos anexados, binrios ou no. Os formatos PBM, PGM e PPM

representavam ento os contedos das respectivas imagens por meio de caracteres ASCII

representveis. Esta caracterstica permitia a insero de uma imagem numa mensagem de

correio eletrnico como se tratasse de texto, mas tinha como conseqncia que o tamanho

dos arquivos fossem demasiadamente grande. A definio do formato mais tarde foi

modificada para permitir a representao binria dos contedos das imagens.

Os formatos de imagem PBM so constitudos pelos seguintes campos:

Identificador do tipo de formato (designado por "magic value"), de acordo com

o tipo, definido para imagens gravadas no formato ASCII e formato binrio,

conforme tabela abaixo:


75
Imagem em Imagem em
Tipo ASCn Binrio

PBM PI P4
PGM P2 P5
PPM P3 P6

Tabela A2.4 - Identificador de tipo para os formatos PBM, PGM e PPM.

Espao em branco, podendo ser constitudo por um qualquer nmero de

caracteres em branco, TABs, CRs e LFs;

Largura da imagem, em pixels e em valor decimal, formatada em caracteres

ASCH,

Espao em branco;

Altura da imagem, em pixels e em valor decimal, formatada em caracteres

ASCII;

Espao em branco.

Se a imagem for dos tipos PGM ou PPM:

Valor mximo em notao decimal dos tons de cinzento (PGM) ou das

componentes de cor (PPM), formatado em caracteres ASCII;

Espao em branco.

Para os trs tipos de formato:

Valores dos pixels da imagem, em nmero igual altura da imagem vezes a sua

largura para os tipos PBM e PGM, e trs vezes este nmero para o tipo PPM,

uma vez que cada pixel representado pelas trs componentes RGB da

respectiva cor.
76
A ordenao dos valores dos pixels corresponde a varredura das imagens linha a

linha, de cima para baixo, e da esquerda para a direita em cada uma das linhas.

Quando o contedo da imagem for representado em ASCII, os valores

correspondentes aos pixels sero apresentados em notao decimal e separados por espaos

em branco, marcas de tabulao ou marcas de fim de linha.

As variantes binrias dos tipos PBM, PGM e PPM armazenam os valores

correspondentes aos pixels das imagens em caracteres (bytes) contguos, sem qualquer

separador entre valores consecutivos. O tipo PBM combina os valores de cada 8 pixels

consecutivos num nico caracter (byte). Os tipos PGM e PPM, fazem corresponder a cada

pixel um caracter para PGM e trs caracteres para PPM.

Para as variantes ASCII dos trs tipos de formato, aplicam-se ainda as seguintes

regras:

permitida a insero de comentrios em qualquer parte do arquivo. O incio

de um comentrio assinalado por um caracter "#" e todo o texto desde este

caracter at ao fim da respectiva linha interpretado como texto do comentrio.

comprimento mximo de cada linha est limitado a 70 caracteres. Esta limitao

deriva da especificao inicial visando a transmisso de imagens por correio

eletrnico.
77

2.3 Formato RAW


O formato RAW o mais simples dos formatos. Os valores dos pixels so salvos

em duas ordenaes, da esquerda para direita e de cima para baixo, um valor de cada vez.

Para imagens em nveis de cinza com valores na faixa 0 a 255, 8 bits (ou 1 byte) por pixel

suficiente. Consequentemente, uma imagem NxM ocupa NxM bytes, com cada byte

correspondendo ao valor de um pixel.

A desvantagem deste formato que o tamanho original da imagem no pode ser

detectado diretamente pela inspeo do arquivo. Por exemplo, uma imagem 256x512 no

pode ser diferenciada de uma imagem 512x256, a no ser que a imagem seja visualizada na

tela.

Todos os outros formatos so criados de forma que o arquivo contenha

informaes teis sobre a imagem, em um cabealho, incluindo tamanho, mapeamento das

cores (para imagens pseudo coloridas, ou seja, aquelas que usam uma tabela de cores), entre

outras informaes.
78

Apndice 3 - Codificao Run Length (RLE)

Conforme abordado e descrito em [AGOOO], o mtodo Run-Length Encoding

(RLE), tambm conhecido como RLC (Run-Length Coding), busca reduzir a redundncia de

codificao e, quando usada em conjunto com outros mtodos, como a codificao de

Huffman, torna a redundncia de codificao aproximadamente igual a zero. A idia bsica

substituir uma seqncia de smbolos iguais pelo nmero de ocorrncias do smbolo e o

prprio smbolo [EGG99],

Por exemplo, a seguinte seqncia de smbolos:

0AAAAA7CCCCCCCCC5555

seria codificada por RLE como:

105A179C45

No exemplo, obteve-se uma taxa de compresso de 2:1, mas pode-se perceber que

para seqncias de smbolos com elevado grau de variao, pode-se chegar num resultado

extremamente indesejvel, que a compresso negativa [MIA99]. Em imagens,

normalmente existem muitas repeties de pixels, por isso, a codificao RLE pode ser

muito interessante.

Na representao em duas dimenses, que a forma como as imagens so

armazenadas em computador, o processo a codificao RLE pode ser feito e vrias

formas. A seqncia de dados analisados pode determinar maiores ou menores taxas de

compresso, por isso, o objetivo determinar a seqncia com maior nmero e repeties

possveis. A seqncia mais natural e simples e implementar a apresentada na Figura

A3.1(b), onde feita uma varredura que inicia no canto superior esquerdo da imagem,
79
vai at o final da linha, volta para o inicio da prxima linha e assim sucessivamente,

at que a varredura chegue no canto inferior direito da imagem. A Figura A3.1(c)

apresenta o mesmo processo seqencial anterior, mas com as colunas sendo varridas ao

invs das linhas. Uma soluo muito interessante a codificao em ziguezague, onde

a varredura feita em diagonal, comeando no canto superior esquerdo e indo at o

canto inferior direito a imagem. A codificao em ziguezague muito utilizada em

conjunto com a tcnica DCT. A codificao RLE em ziguezague apresenta na Figura

A3.1(a)

(a) Codificao em ziguezague.

*
*

(b) Codificao ao longo do eixo X.

(c)
80

(c) Codificao ao longo do eixo Y.

Figura A3.1 - Codificao RLE (a) em ziguezague, (b) por linha e (c) por coluna.

Existem trs diferentes formas bsicas de se efetuar a codificao RLE no que diz

respeito a qual o elemento atmico a ser codificado. A Figura A3.2(a) mostra a codificao

em nvel de bit, o que significa que o bit a unidade bsica a ser codificada, onde utiliza um

byte para armazenar as informaes sobre os bits. Utiliza um contador com 7 bits para

armazenar o nmero de ocorrncias e 1 bit para armazenar o bit que foi encontrado. A

codificao tambm pode ser a nvel de byte, mostrado na Figura A3.2(b), onde o byte o

elemento atmico e so necessrios dois bytes para cada pacote, o primeiro para armazenar o

nmero de ocorrncias em seqncia do smbolo e o segundo o prprio smbolo a ser

codificado. Por fim, a Figura A3.2(c) mostra a codificao a nvel de pixel, onde a unidade

bsica um pixel, que ocupa trs bytes.

Contada

7 6

(a) Pacote RLE a nvel de bit.

Contador Valor

7 07 0

(b) Pacote RLE a nvel de byte.


- Valor-
Canal 1 Canal 2 Canal 3
Contad do pixel do pbtel dopccel
. . T - ; --v.^. ' *-

1*255 3-255 0-255 0-255


-u t

(a) Pacote RLE a nvel de pixel.

Figura A3.2 - Diferentes formas de codificao do RLE.


82

Apndice 4 - Imagens e Senogramas Utilizados

As seguintes figuras correspondem as imagens reconstrudas e respectivos

senogramas que foram utilizadas na realizao dos testes neste trabalho. O termo

reconstruo usado aqui no se trata da aplicao do processo inverso utilizado para

comprimir os dados, mas sim o processo que permite reconstruir a imagem de tomografia a

partir das projees.

Nos senogramas, com 16 bits por pixel, o preto corresponde ao pixel de valor 0 e o

branco corresponde ao pixel de valor 65.535. Nas imagens reconstrudas, com 8 bits por

pixel, o preto corresponde ao pixel de valor 0 e o branco corresponde ao pixel de valor 255.

As figuras A4.1, A4.2 e A4.3, so senogramas reais gerados por um tomgrafo

industrial e suas respectivas imagens reconstrudas. Embora as dimenses dos senogramas

sejam 768 colunas por 90 linhas e 16 bits por pixel, totalizando um tamanho de 138.240

bytes, as imagens originais possuem tamanhos diferenciados, definidos pelo processo de

reconstruo, conforme segue: imagem "DenteOl" com 256 colunas por 256 linhas e 8 bpp,

totalizando 65.536 bytes, imagem "Dente02" com 176 colunas por 176 linhas e 8 bpp,

totalizando 30.976 bytes, e imagem "Dente03" com 112 colunas por 112 linhas e 8 bpp,

totalizando 12.544 bytes.

A seguir so apresentadas as figuras A4.4 at A4.9, constituindo as demais

imagens e com seus respectivos senogramas, tambm utilizados nos testes deste trabalho. Os

Senogramas possuem 256 colunas por 90 linhas com 16 bits por pixel, totalizando 43.080

bytes. As imagens possuem 256 colunas por 256 linhas com 8 bits por pixel, totalizando

65.536 bytes.
83
Na seqncia, as figuras A4.10 at A4.19, so os senogramas resultantes e

respectivas imagens com a insero de percentuais de rudos, a partir do senograma "Abdom"

e sua imagem.

Conforme comentado no item 5.5, as imagens aqui mostradas, com rudos, no

representam a imagem reconstruda a partir do seu senograma com rudo. Elas tambm

tiveram rudos inseridos, a partir da imagem original, nas mesmas porcentagens, a fim de se

verificar a influncia tanto no senograma quanto na imagem. A influncia no senograma

muito maior devido a amplitude do seu sinal, que representado por 2 bytes, podendo

assumir valores entre 0 e 65.535. Na imagem, a influncia do rudo menor porque a

amplitude do sinal representado por 1 byte, podendo assumir valores entre 0 e 255.

Imagem A4.1 - Senograma "DenteOl" e imagem reconstruda de um dente.


Imagem A4.2 - Senograma "Dente02" e imagem reconstruda de um dente.

Imagem A4.3 - Senograma "Dente03" e imagem reconstruda de um dente.


Imagem A4.4 - Senograma "Abdom" e imagem reconstruda de um abdomem.

Imagem A4.5 - Senograma "Brain" e imagem reconstruda de um crebro.


86

Imagem A4.7 - Senograma "Hernia" e imagem reconstruda de vrtebra com hrnia.


Imagem A4.8 - Senograma "Phantom" e imagem de testes representando uma cabea.

Imagem A4.9 - Senograma "Trax" e imagem reconstruda de um trax.


Imagem A4.10 - Senograma "Abdom" e imagem com percentual de 0,1% de rudo.

Imagem A4.11 - Senograma "Abdom" e imagem com percentual de 0,2% de rudo.


89

-Vvv -

Imagem A4.12 - Senograma "Abdom" e imagem com percentual de 1% de ruido.

Imagem A4.13 - Senograma "Abdom" e imagem com percentual de 2% de rudo.


90

p : , ; .. <i.

Imagem A4.14 - Senograma "Abdom" e imagem com percentual de 10% de rudo.

<V

Imagem A4.15 - Senograma "Abdom" e imagem com percentual de 20% de rudo.


Imagem A4.16 - Senograma "Abdom" e imagem com percentual de 25% de rudo.

-;<Vi

Imagem A4.11 - Senograma "Abdom" e imagem com percentual de0,2%de rudo.


Imagem A4.19 - Senograma "Abdom" e imagem com percentual de 100% de rudo.
93

(d) "Phantom" (f) "Trax"

Imagem A4.20 - Senogramas com insero de percentual padro de 1% de rudo.


94

Referncias Bibliogrficas

[AGOOO] AGOSTINI, L.V., "Estudo de Padres de Compresso de Imagens para


Aplicaes VLSI", Trabalho Individual de Pos-Graduao, UFRGS, Porto
Alegre, 2000.

[ALM98] ALMEIDA, AB., "Usando o Computador para Processamento de Imagens


Mdicas", Revista Informtica Mdica, Vol. 1, N.6, Dezembro, 1998.

[CAL97] CALDERBANK, R. C., DAUBECHIES, I., SWELDENS, W., e YEO, B.,


"Lossless Image Compression using Integer to Integer Wavelet Transforms",
International Conference on Image Processing (ICIP), v. 1, p. 596-599, 1997.

[DAU88] DAUBECHIES, I., "Orthonormal Bases of Compactly Supported Wavelets",


Communications on Pure and Applied Mathematics, v. 41, pp. 909-996,
November, 1988.

[DIC01] DICOM-Digital Imaging and Communications in Medicine, "The DICOM


Standard", Published by National Electrical Manufacturers Association,
Copyritht 2001. "http://medical.nema.org".

[EGG99] EGGER O., FLEURY P., EBRAHIMI T., KUNT M., . "High-Performance
Compression of Visual Information - A Tutorial Review - Part I: Still Pictures"
Proceedings off the IEEE, v.87, n.6, pp. 976-1011, June, 1999.

[GRA95] GRAPS, A., "An Introduction to Wavelets", IEEE Computational Science and
Engineering, v. 2, n. 2, 1995.

[GR084] GROSSMAN, A , MORLET, J., "Decomposition of Hardy Functions into


Square-Integrable Wavelets of Constant Shape", SIAM Journal of Math. Anal., v.
15, n. 4, pp. 723-736, July, 1984.

[HOG98] HOGARTH, M.E., S ABBATINI, R.M.E., "Informtica e a Medicina do Sculo


21", Revista Informtica Mdica, Vol. 1, N.2, Abril, 1998.

[HUA94] HUANG, K., SMITH, B., "Experiments with a Lossless JPEG Codec", June,
1994. "http://www.cs.a>mell.edi^nfo/Projects/zeno/Projects/LJPG.html".

[JAI89] JAIN, A. K., "Fundamentals of Digital Image Processing", Prentice Hall, 1989.

[JAW94] JAWERTH, B., SWELDENS, W., "An Overview of Wavelet Based


Multiresolution Analyses", SIAM Rev., v. 36, n. 3, pp. 377-412,1994.

[MAL89] MALL AT, S. G., "A Theory for Multiresolution Signal Decomposition: The
Wavelet Representation", IEEE Transactions on Pattern Analysis and Machine
Intelligence, v. 11, n. 7, July, pp. 674-693, 1989.
95
[MAROO] MARCELLIN, M. W., GORMISH, M. J., BILGIN, A , BOLIEK, M. P., "An
Overview of JPEG-2000", Proceedings of 2000 Data Compression Conference,
Snowbird, March, 2000.

[MAR99] MARQUES, F. O., NETO, H. V., "Processamento Digital de Imagens", Rio de


Janeiro, Brasport, ISBN 85-7452-009-8, 1999.

[MED01] MEDEIROS, L. F., "Reconstruo de Imagens Tomogrficas com Redes Neurais


Parcialmente Conectadas", Dissertao de Mestrado, DINF/UFPR, Curitiba,
2001.

[MEL94] MELO, A. C. W. P., "Compresso de Imagens em Escala de Cinza Utilizando a


Transformada Wavelet", Dissertao de Mestrado, CEFET-PR, Curitiba, 1994.

[MLA99] MIAO, J., "Compressed Image File Formats - JPEG, PNG, GIF, XBM, BMP",
Addison Wesley Longman Inc., USA, 1999.

[NET98] NETO, J.F., ALCOCER, P.R.C., "Compresso de Imagens Mdicas Utilizando a


Tcnica JPEG-DPCM", IV Frum Nacional de Cincia e Tecnologia em Sade,
p. 411-412, Curitiba, 1998.

[MUR96] MURRAY J. D., VANRYPER W., "Encyclopedia of Graphics File Formats,


Second Edition", O'Reilly & Associais Inc, USA, 1996.

[PEN93] PENNEBAKER, W. B., MITCHELL, J. L.: "JPEG Still Image Data Compression
Standard", Ed. Van Nostrand Reinhold, 1993.

[RIB96] RIBEIRO, E. P., 'Tomografia de Susceptibilidade Magntica com Magnetmetro


Supercondutor SQUID", Tese de Doutorado, PUC-RJ, Rio de Janeiro, dezembro,
1996.

[SAI96] SAID, A., PEARLMAN, W. A., "A New Fast and Efficient Image Codec Based
on Set Partitioning in Hierarchical Trees", IEEE Transactions on Circuits and
Systems for Video Technology, v. 6, n. 3, pp. 243-249, June, 1996.

[SAN01] SANCHES, I., "Compresso sem Perdas de Projees de Tomografia


Computadorizada usando a Transformada Wavelet", Dissertao de Mestrado,
Departamento de Informtica, UFPR, Curitiba, 2001.

[SHA93] SHAPIRO, J. M., "Embedded Image Coding using Zerotrees of Wavelet


Coefficients", IEEE Transactions on Signal Processing, v. 41, n. 12, pp. 3445-
3462, December, 1993.

[SWE97] SWELDENS, W., "The Lifting Scheme: A Construction of Second Generation


Wavelets", SIAM J. Math. Anal, v. 29, n. 2, pp. 511-546, 1997.

[ZIV77] ZIV, J., LEMPEL, A., "A Universal Algorithm for Sequential Data
Compression", IEEE Transactions on Information Theory, v. IT-23, n. 3, p. 337-
343, May, 1977.

Você também pode gostar