Este documento avalia diferentes métodos de compressão sem perdas para imagens de tomografia computadorizada. Os autores comparam transformadas wavelet reversíveis com LJPG e GZIP, que são amplamente utilizados para compressão sem perdas. Experimentos mostram que algumas transformadas wavelet, como S+P e (1,3), podem alcançar taxas de compressão melhores do que os outros métodos testados para imagens de tomografia, preservando a precisão dos dados originais.
Avaliação da compressão de senogramas de tomografia por wavelet
1. AVALIAÇÃO DA TAXA DE COMPRESSÃO DE
PROJEÇÕES DE TOMOGRAFIA
COMPUTADORIZADA
Ionildo José Sanches
Valdir Martins
Eduardo Parente Ribeiro
RESUMO: As imagens digitais geram uma grande quantidade de dados o que torna evidente a necessidade
de se utilizar alguma técnica de compressão com objetivo de reduzir o tamanho do arquivo, facilitando
assim o armazenamento e a transmissão. Os métodos que atingem altas taxas de compressão geralmente
o fazem através de remoção da redundância e de detalhes poucos perceptíveis na visualização, o que
implica em perda de informação. Imagens médicas, de uma maneira em geral, não devem sofrer perdas
no processo de compressão. A compressão de imagem com wavelets tem mostrado bons resultados em
estudos recentes. Neste trabalho foi utilizada a transformada wavelet de inteiros reversível que permite
realizar a compressão sem perdas. Alguns filtros wavelets foram avaliados e comparados com outras
técnicas de compressão sem perdas.
PALAVRAS-CHAVES: compressão, senograma, tomografia, wavelet, lossless (compressão sem perda)
INTRODUÇÃO
A utilização da tomografia computadorizada (Comput(eriz)ed Tomography - CT) tornou-se
um elemento indispensável de diagnóstico em hospitais e clínicas de todo o mundo. Nos
últimos anos a CT tem se estendido também para aplicações industriais.
Atualmente, no Brasil, a maior parte das imagens ainda são registradas e armazenadas
em filme. Mesmo imagens de CT, que são inerentemente digitais, são transferidas para o filme
depois que os técnicos a tenham otimizado para a visualização. Porém, várias instituições já
adotam o conceito de PACS (Picture Archiving and Communications System - Sistema de Comunicação
e Arquivamento de Imagens), o que facilita em muito o processo de diagnóstico médico.
Devido ao grande volume de dados gerados pelas imagens de CT, torna-se imprescindível
aplicar alguma técnica de compressão, com objetivo de facilitar o armazenamento e agilizar a
transmissão, porém preservando a exatidão desses dados.
Em tomografia computadorizada, o armazenamento dos dados originais que são as
projeções do raio-x, chamados senogramas, é bastante desejável para utilização futura. Por
exemplo, com os dados originais, pode-se comparar imagens antigas com novas tomografias
da mesma região, mas que tenham sida realizadas com equipamentos diferentes e provavelmente
diferentes algoritmos ou parâmetros de reconstrução.
Através do processo de compressão de dados podemos reduzir a quantidade de dados
necessários para representar uma determinada quantidade de informação. Vários métodos de
compressão de dados sem perdas (reversíveis) e com perdas (irreversíveis) têm sido propostos
na literatura nos últimos anos. Cada um desses métodos procura explorar determinadas
1
2. características da imagem. A escolha do método apropriado depende do conhecimento da
teoria do método, bem como, um prévio conhecimento das características presentes na imagem.
Desta maneira é possível alcançar maiores taxas de compressão.
Entre os métodos de compressão de imagens temos a transformada wavelet que faz
parte de uma teoria relativamente nova, tendo demonstrado que é uma ferramenta poderosa e
vantajosa na área de compressão de imagens (Sanches, 2001). Neste trabalho, avaliamos o uso
da transformada wavelet e para efeito de comparação, utilizamos o LJPG1 (Lossless Joint Photographic
Experts Group) (Huang e Smith, 1994), que é utilizado para compressão sem perdas de imagens,
e o GZIP2 (Gnu ZIP), que é utilizado para compressão de dados em geral.
TOMOGRAFIA DE RAIO-X
A tomografia computadorizada é um método de radiografia que foi introduzido em
1972 para aplicações neurológicas, mas rapidamente com o avanço da tecnologia, permitiu
examinar outras partes do corpo também (Olson, 1995). A tomografia de raio-x tem desde
então se estendido para aplicações industriais também.
O termo tomografia é usado para se referir a qualquer método de obtenção de imagem
do interior de um determinado corpo a partir de medidas realizadas externamente. Embora
todas as técnicas de tomografia se utilizem do computador, o termo “computerized tomography”,
ou somente CT, caiu no uso comum e até hoje se refere ao tomógrafo de raio-x, porém existem
outras técnicas de tomografia baseadas em outros princípios físicos como ressonância
magnética e emissão de pósitrons (Ribeiro, 1996).
A tomografia consiste na reconstrução da imagem de uma fatia do interior do corpo a
partir das medidas realizadas externamente ao corpo, que matematicamente são consideradas
projeções. A imagem formada pelas projeções empilhadas é chamada de senograma devido a
propriedade geométrica que faz com que cada ponto na fatia do objeto apareça como uma
senóide na imagem projetada. Existem vários algoritmos e técnicas que permitem a reconstrução
da imagem a partir das projeções obtidas (Olson, 1995; Jain, 1989; Herman, 1980). As técnicas
que permitem a reconstrução da imagem, embora já bem desenvolvidas, continuam como um
tópico de pesquisa.
A figura 1 mostra, como exemplo, o senograma de uma CT, contendo 768 colunas e 90
linhas (cada linha é obtida após uma rotação de 2 graus da amostra, perfazendo assim 180
graus), As projeções foram obtidas utilizando um phantom de teste (objeto cilíndrico de acrílico
contendo alguns furos no seu interior onde são adicionados diferentes elementos para análise).
A imagem reconstruída a partir do senograma deste objeto pode ser observada na figura 2.
Fig. 1 - Senograma antes da reconstrução
1
http://www.cs.cornell.edu/Info/Projects/zeno/Projects/LJPG.html
2
ftp://prep.ai.mit.edu/pub/gnu/gzip
2
3. Fig. 2 - Imagem depois da reconstrução
COMPRESSÃO DE IMAGENS
A compressão de uma imagem é possível porque as imagens, em geral, apresentam um
alto grau de coerência, que se traduz em uma redundância de informação quando codificada
(Gomes e Velho, 1994). Por exemplo, tomando um pixel (picture element) qualquer de uma imagem,
provavelmente, a cor desse pixel será igual a dos elementos vizinhos ou de uma outra região
próxima na imagem, porque há uma grande probabilidade de todos eles pertencerem a um
mesmo objeto da imagem. Caso isso não ocorra, provavelmente uma relação mais complexa
existirá na imagem.
Baseado neste fato, os métodos de compressão de imagens digitais visam produzir,
através da redução ou eliminação de redundância, um código mais compacto que preserve as
informações contidas na imagem. A redundância é uma característica que está relacionada a
distribuição estatística da informação presente na imagem.
Em uma imagem digital há, basicamente, três tipos de redundância de dados que podem
ser identificadas e exploradas (Gonzalez e Woods, 1992): redundância de código, redundância
interpixel e redundância psicovisual.
Dependendo da área de aplicação, as informações que desejamos preservar podem ser
de natureza objetiva ou subjetiva (Gomes e Velho, 1994). No primeiro caso o método de
compressão deve permitir a recuperação exata dos dados da imagem original. Dizemos, nesse
caso, que o processo é reversível (lossless), ou que temos uma compressão sem perda. Caso
contrário, ele é chamado irreversível (lossy), e dizemos que temos uma compressão com perda,
isto é, ele não permite a reconstrução exata dos dados originais.
No caso particular da tomografia computadorizada, os senogramas, não devem sofrer
perdas, pois isso afeta o processo de reconstrução para obtenção da imagem.
Os recentes avanços das técnicas de compressão com perdas incluem diferentes
métodos tais como a transformada discreta cosseno (DCT), quantização vetorial, transformada
wavelet, redes neurais e codificação fractal. Apesar desses métodos poderem realizar altas taxas
de compressão (tipicamente 50:1 ou maior), eles não permitem a reconstrução exata da versão
original dos dados de entrada. Portanto, métodos com perdas são menos aceitos para certas
aplicações como: imagens médicas digitais, imagens de satélite, dados sísmicos, imagens de
alta fidelidade, arquivos executáveis, e assim por diante. Técnicas de compressão sem perdas,
3
4. todavia, permitem a reconstrução perfeita dos dados originais, mas as taxas de compressão
são comparativamente baixas (de 2:1 a 4:1).
TRANSFORMADA W VELET
A
Entre os métodos de compressão de imagens temos a transformada wavelet, que faz
parte de uma teoria relativamente nova, e tem demonstrado que é uma ferramenta poderosa e
vantajosa. Wavelets são funções bases com as quais se representa uma determinada função em
múltiplos níveis de detalhe. Wavelets foram desenvolvidas independentemente em diferentes
áreas, tais como: matemática, física, engenharia elétrica e geologia. Intercâmbios entre estas
áreas têm ocorridos nos últimos vinte anos.
A transformada wavelet direta mapeia os dados da imagem original para um outro domínio,
sem fornecer nenhuma compressão dos dados em relação a imagem original. Neste novo
domínio os dados são caracterizados por uma grande quantidade de valores iguais ou próximos
de zero, que torna eficiente o uso de codificadores de entropia. A compressão é realizada pela
quantização/limiarização e pela codificação dos coeficientes wavelets. A reconstrução da imagem
é efetuada invertendo as operações do processo de compressão.
Transformada Wavelet Reversível
A transformada wavelet tinha até então seu uso limitado em aplicações de compressão de
imagens com perdas. Recentemente, a transformada wavelet de inteiros (integer wavelet transform –
IWT), isto é, a transformada wavelet que mapeia valores inteiros para inteiros mantendo perfeita
reconstrução do sinal de entrada, foi introduzida (Calderbank at al, 1997; Said e Pearlman,
1996; Zandi at al, 1995).
Os métodos clássicos de compressão usando wavelets não permitem reconstruir
exatamente a versão original da imagem, mesmo retendo todos os coeficientes resultantes da
aplicação da transformada wavelet. Isso ocorre pelo fato de que os filtros utilizados na
transformada wavelet geram coeficientes que são números reais (números com ponto flutuante)
e têm que ser convertidos para números inteiros. Em muitos casos a aplicação da transformada,
no sentido matemático, permite a reconstrução perfeita dos dados originais, porém na prática
as operações de truncamento e/ou o armazenamento dos coeficientes com aritmética de
precisão finita é que provocam a perda de informação e impede a sua exata recuperação
quando se aplica a transformada inversa.
Wavelets reversíveis são filtros lineares com arredondamento não linear os quais
possibilitam a implementação de sistema de reconstrução exata utilizando aritmética de inteiros
(Zandi at al, 1995).
O lifting scheme (Calderbank at al, 1997) pode ser facilmente modificado para construir
wavelets reversíveis. A transformada wavelet de inteiros pode ser desenvolvida, usando o lifting
scheme, arredondando para o menor inteiro o resultado de cada passo lifting.
Inicialmente aplicamos a transformada wavelet preguiçosa (lazy wavelet) seguido por um ou
mais passos M usando os filtros p(k) and u(k). Finalmente, as amostras s(M)[n] se tornam os
4
5. coeficientes passa baixa s[n], enquanto as amostras d(M)[n] se tornam os coeficientes passa alta
d[n] quando escalonado por um fator K. Os passos lifting dual e lifting primário são calculados
respectivamente por
1
d ( k ) [ n] = d ( k −1) [ n] − (∑ p ( k ) [ m]s ( k −1) [ n − m]) + (1)
m 2 (2)
1
s ( k ) [ n] = s ( k −1) [ n] − (∑ u ( k ) [ m]d ( k ) [ n − m]) +
m 2
A transformada inversa pode ser obtida aplicando os passos lifting dual e primário na
ordem inversa em que foi aplicado a transformada direta e invertendo também os sinais.
EXPERIMENTOS REALIZADOS E RESULTADOS
O processo geral de compressão, descompressão e reconstrução da tomografia é ilustrado
na figura 3. O senograma é comprimido e armazenado. Posteriormente pode ser descomprimido
e reconstruído obtendo-se então a imagem da fatia do interior do corpo. Avaliamos apenas o
processo de compressão, já que a descompressão retorna exatamente os dados originais
(processo reversível).
Neste trabalho estamos considerando apenas algumas transformadas wavelet de inteiros,
ou seja, a transformada S ou (1, 1), S+P, (1, 3), (2, 6) e (5, 3), que possuem a propriedade de
preservação de precisão (PPP). A PPP, permite manter o valor dos coeficientes num intervalo
entre [–2q-1, 2q-1 – 1], para q igual ao número de bits necessários para representar cada pixel da
imagem, conforme mostrado em (Chao e Fisher, 1996). Sem esta propriedade, necessitaríamos
utilizar um número maior de bits para representar os coeficientes transformados. Na fase de
codificação, aplicamos a codificação aritmética (Nelson e Gailly, 1996).
Fig. 3 - Esquema de compressão usado nos experimentos
Para efeito de comparação, utilizaremos dois programas de compressão sem perda
atualmente disponíveis. O primeiro é o GZIP que utiliza o algoritmo LZ77 (Ziv e Lempel, 1977).
O LZ é um dos algoritmos mais comuns usados para a compressão de dados e imagens. Ele foi
criado em 1977 por Abram Lempel e Jakob Ziv e, desde então, muitas variantes deste algoritmo
5
6. têm sido utilizadas em vários formatos de arquivos. Este método de compressão visa reduzir a
redundância de codificação a partir do uso de dicionários de dados e não gera perdas.
O segundo programa implementa o LJPG que é um padrão da ISO/ITU-T para codificação
sem perdas de imagens estáticas. O LJPG usa modulação por código de pulso diferencial
(DPCM). Trata-se de uma combinação linear dos pixels vizinhos, usados para prever o valor do
próximo pixel. Utiliza também a codificação de Huffman ou Aritmética e um seletor automático
para o PSV (Prediction Selection Value), onde seleciona o melhor PSV entre os disponíveis, ou então
utiliza um PSV previamente selecionado (Huang e Smith, 1994).
Para realização dos experimentos, utilizamos dez senogramas diferentes para testes. Os
senogramas utilizados aqui são referentes a fatias de um dente humano, de um phantom de
teste e outras imagens diversas. As informações fornecidas pelo tomógrafo industrial, que
utilizamos para coletar as projeções para os experimentos, constituem-se de valores inteiros
no formato binário. Estes valores variam de 0 a 65535, ou seja, 16 bits não sinalizados. Dessa
maneira, cada senograma é armazenado no computador usando 138.240 bytes. Imagens
médicas reais de tomografia computadorizada foram utilizadas e os seus respectivos
senogramas foram gerados por um programa simulador. Em outra fase dos experimentos,
foram adicionados na imagem “Abdom”, determinadas quantidades de ruído, de forma aleatória,
visando conhecer o comportamento dos programas de compressão com variados níveis de
ruído.
Resultados
Com objetivo de explorar melhor a correlação dos dados das projeções, aplicamos a
transformada nos bytes mais significativos e nos bytes menos significativos dos dados de
entrada, onde cada informação constitui de dois bytes (16 bits).
Os dados da tabela 1 são relativos a média do cálculo da entropia (em bits por pixel).
aplicado nas duas imagens no qual o senograma foi dividido.
TABELA 1 - COMPARAÇÃO DE DIFERENTES WAVELETS DE INTEIROS (BITS/PIXEL)
Senogramas S (1, 1) (1, 3) (2, 6) (5, 3) S+P
amost1 4,7993 4,9215 4,9619 5,1247 5,1604
amost2 4,8842 5,0028 5,1399 5,3542 5,3173
senogr1 5,1022 5,1432 5,3044 5,4450 5,5231
senogr2 5,0671 5,0937 5,2953 5,4654 5,5079
senogr3 4,4755 4,5603 4,5595 4,7518 4,6740
senogr4 5,0261 4,8820 5,1323 5,2249 5,2617
senogr5 4,7749 4,8496 4,8920 5,0867 5,0128
dente1 5,3005 5,3185 5,5226 5,7201 5,8055
dente2 5,0858 5,1802 5,3492 5,5841 5,6498
dente3 5,0964 5,1855 5,3280 5,5550 5,5873
média 4,9612 5,0137 5,1485 5,3312 5,3500
6
7. Nesse caso, a transformada que apresentou melhores resultados foi a transformada S.
Os filtros com menos coeficientes apresentaram melhores resultados. Nestes testes os filtros
longos não apresentaram bons resultados.
TABELA 2 - COMPARAÇÃO EM TAMANHO (BYTES) ENTRE OS DIFERENTES MÉTODOS
Senogramas S e CA S+P e CA LJPG GZIP Entropia
amost1 86.529 91.746 86.150 110.515 116.275
amost2 87.321 97.432 91.515 126.260 127.494
senogr1 91.398 98.273 91.997 125.625 127.175
senogr2 90.566 97.690 91.779 125.579 127.189
senogr3 81.154 89.366 85.319 108.443 115.185
senogr4 91.373 98.493 87.556 111.614 118.624
senogr5 86.450 94.780 87.671 121.512 123.971
dente1 95.104 101.376 93.972 126.261 127.745
dente2 92.119 98.764 92.386 126.059 127.676
dente3 92.114 98.994 92.375 126.331 127.927
média 89.413 96.691 90.072 120.820 123.926
Na aplicação da transformada wavelet usando os dados na sua forma original (16 bits) a
transformada S+P apresenta melhores resultados para todos os senogramas (Sanches, 2001).
Para uma avaliação mais detalhada do tamanho dos dados comprimidos, apresentamos a
tabela 2. Nela temos os melhores resultados obtidos com a transformada wavelet de inteiros
usando 8 e 16 bits após a aplicação da codificação aritmética (CA). Acrescentamos também os
resultados obtidos com o LJPG e o GZIP. A coluna da entropia na tabela, corresponde ao
tamanho do arquivo comprimido que pode ser obtido levando em consideração apenas a
redundância de código baseado no cálculo da entropia de primeira ordem. Uma representação
gráfica da tabela 2 é apresentada na figura 4.
Fig. 4 - Gráfico comparativo dos resultados obtidos.
7
8. Os dados da tabela 3 representam os resultados dos programas de compressão sobre
senogramas gerados por um “simulador de senogramas”, portanto, desprovidos de ruídos
aleatórios que podem ser inseridos na imagens pelos equipamentos geradores. Pode-se notar
que os métodos que não utilizam a transformada wavelet apresentam melhores ganhos. Isto
pode ser explicado pelo alto grau de coerência entre os pixels das imagens.
TABELA 3 - COMPARAÇÃO ENTRE DIFERENTES MÉTODOS
TABELA 4 - COMPARAÇÃO ENTRE DIFERENTES MÉTODOS COM RUÍDO
Os dados da tabela 4 são os resultados do cálculo de compressão dos programas de
compressão utilizados sobre o senograma que teve ruídos aleatórios inseridos (Martins, 2002).
O senograma possui 46080 bytes, mantendo sempre a mesma quantidade de bytes,
independente da relação sinal/ruído. Pode-se notar que, a medida que o percentual de ruído
cresce, as transformadas S e S+P sofrem menor perda na taxa de compressão do que os
métodos GZIP e LJPG. O gráfico, da figura 5, mostra os resultados.
Fig. 5 - Gráfico com o resultado da compressão sobre senogramas com ruído
8
9. CONCLUSÃO
Neste trabalho avaliamos uma das inúmeras aplicações da transformada wavelet em
processamento de imagens, mais especificamente na compressão de projeções de tomografia
computadorizada. Uma vantagem de comprimir as projeções de CT, em vez das imagens já
reconstruídas, é a preservação dos dados originais, podendo-se fazer, quando necessária, a
reconstrução da imagem utilizando-se técnicas apropriadas.
Os resultados obtidos neste trabalho mostraram que com a transformada wavelet é
possível obter uma redução considerável no tamanho do arquivo. Na média, a taxa de
compressão das projeções ficaram acima de 35%. Quando comparado com o algoritmo de
propósito geral (GZIP), os resultados apontam para um ganho de 22,7%. Em relação ao LJPG, o
ganho apresentado não foi significativo, porém existem vários aprimoramentos que podem ser
realizados com objetivo de melhorar os resultados obtidos com a transformada wavelet.
Avaliou-se também o desempenho dos métodos de compressão na presença de ruídos
em diferentes proporções no senograma. Observou-se uma grande redução na taxa de
compressão nas técnicas de uso geral, enquanto que as taxas de compressão com a transformada
wavelet sofreram menores perdas.
Como trabalho futuro, pretende-se avaliar o ganho obtido com a utilização de filtros que
se adaptem melhor às características presentes nessas imagens.
REFERÊNCIAS BIBLIOGRÁFICAS
Calderbank, R. C.; Daubechies, I.; Sweldens, W.; Y B., Losless Image Compression
eo,
using Integer to Integer Wavelet Transforms, In: International Conference on
Image Processing (ICIP) v. 1, p. 596-599, 1997.
(ICIP),
Chao, H.; Fisher, P., An Approach to Fast Integer Reversible Wavelet
Wavelet
Transforms for Image Compression Preprint, September, 1996.
Compression,
Gomes, J.; Velho, L., Computação Gráfica : Imagem Rio de Janeiro, IMP
Imagem, A/
SBM, 1994.
Gonzalez, R. C.; Woods, R. E., Digital Image Processing Addison-Wesley
Processing,
Publishing Company, 1992.
Herman, G. T., Image Reconstruction from Projections Academic Press Inc.,
Projections,
Orlando, Florida, 1980.
Huang K.; Smith B., Lossless JPEG Codec Version 1.0 June, 1994.
Version 1.0,
Jain, A. K., Fundamentals of Digital Image Processing Prentice Hall, 1989.
Processing,
Martins, V., Compressão sobre Projeções de Tomografia Computadorizada:
Tomografia
Um Estudo de Caso Dissertação de Mestrado, UFPR, Curitiba, Agosto, 2002.
Caso,
Nelson, M.; Gailly, J. L., The Data Compression Book M&T Books, 2nd Edition,
Book,
New York, 1996.
Olson, T., Optimal Time-Frequency Projection for Localized Tomography, In: Annals
9
10. of Biomedical Engineering v. 23, Issue 5, p. 622-636, September/October, 1995.
Engineering,
Ribeiro, E. P., Tomografia de Susceptibilidade Magnética com
Magnetômetro Supercondutor SQUID Tese de Doutorado, PUC-RJ, Rio de
SQUID,
Janeiro, Dezembro, 1996.
Said, A.; Pearlman, W. A., An Image Multiresolution Representation for Lossless
and Lossy Compression, In: IEEE Transactions on Image Processing vol. 5,
Transactions Processing,
p. 1303-1310, September, 1996.
Sanches, I. J., Compressão sem Perdas de Projeções de Tomografia Tomografia
Computadorizada usando a Transformada Wavelet Dissertação de Mestrado,
Transformada Wavelet
avelet,
UFPR, Curitiba, Fevereiro, 2001.
Zandi, A.; Allen, J. D.; Schwartz, E. L.; Boliek, M., CREW: Compression with
Reversible Embedded Wavelets, In: Proceedings of IEEE Data Compression
Conference Snowbird, Utah, p. 212-221, March, 1995.
Conference,
Ziv, J.; Lempel, A., A Universal Algorithm for Sequential Data Compression, In:
IEEE Transactions on Information Theory v. IT-23, n. 3, p. 337-343, May,
Transactions Theory,
1977.
Ionildo José Sanches
UFPR - Universidade Federal do Paraná Depto de Informática.
E-mail: ionildo@inf.ufpr.br
Valdir Martins
UFPR - Universidade Federal do Paraná Depto de Informática.
E-mail: vmartins@inf.ufpr.br
Eduardo Parente Ribeiro
Depto de Engenharia Elétrica Centro Politécnico, 81531-990, Curitiba, R
Email: edu@eletrica.ufpr.br
10