Compression of S-EMG signals by Transforms and Spectral Profile for Bit Allocation

Compressão de Sinais de S-EMG por Transformadas e Perfil Espectral para Alocação de Bits

M. H. Trabuco1, M. V. C. Costa2, F. P. Schwartz1 e F. A. de O. Nascimento1
1Departamento de Engenharia Elétrica, Universidade de Brasília, Brasília, Brasil
2Faculdade do Gama, Universidade de Brasília, Brasília, Brasil 
Email: mhtrabuco@gmail.com; chaffim@unb.br; fabiano.schwartz@camara.leg.br; assis@unb.br

Abstract –– In this paper, an S-EMG signal encoder based on wavelet transform and bit allocation for sub-bands is presented. Were implemented and compared two methods of allocating bits: linear decreasing spectral profile and hyperbolic tangent decreasing spectral profile. Comparisons with other encoders in the literature are shown. In the development of the encoder, always sought to maximum compression, but without loss of fidelity of the reconstructed signal, a fundamental characteristic of the analysis of electromyographic signals. Developed algorithm showed very satisfactory and promising results.

Keywords –– Data compression, discrete wavelet transform, surface electromyographic signal

	Resumo –– Nesse trabalho é apresentado um codificador de sinais de eletromiografia baseado em transformada wavelet e alocação de bits por sub-bandas. Foram implementadas e comparadas duas formas de alocação de bits: perfil espectral linear decrescente e perfil espectral tangente hiperbólica decrescente. Comparações com outros codificadores presentes na literatura são apresentadas. No desenvolvimento do codificador, buscou-se sempre a máxima compressão, mas sem a perda da fidelidade do sinal reconstruído, característica fundamental da análise de sinais eletromiográficos. Verificou-se que o algoritmo desenvolvido apresentou resultados muito satisfatórios e promissores.

	Palavras-chave –– Compressão de dados, transformada wavelet discreta, eletromiografia de superfície 

I.  INTRODUÇÃO

	O processamento de sinais eletrofisiológicos sempre teve seu foco de pesquisa mais voltado para sinais cardíacos (ECG) e eletroencefalográficos (EEG), inclusive com aplicações em telemedicina, em função de estarem diretamente relacionados ao funcionamento de órgãos essenciais para a sustentação da vida.
Entretanto, o processamento de sinais de eletromiografia (EMG), sobretudo os de superfície (S-EMG), tem ganho força em virtude de um maior interesse de ramos que lidam com fisioterapia, biomecânica, medicina esportiva e ortopedia. Assim, temos observado nos últimos anos um aperfeiçoamento das técnicas de compressão envolvidas. É nesse cenário que este trabalho está inserido.
A digitalização de um sinal de S-EMG envolve a amostragem do sinal, que geralmente varia entre 1 kHz e 2 kHz, e a quantização com comprimento de palavra digital de 2 bytes por amostra (boa parte dos eletromiógrafos utilizam conversores A/D de 12 bits a 16 bits).
	Na maioria dos casos, há uma grande quantidade de dados oriundos de sinais eletromiográficos que precisam ser armazenados ou transmitidos, isso porque protocolos envolvendo sinais de S-EMG em geral tem duração de vários minutos. Assim, é de interesse o desenvolvimento de técnicas eficientes de codificação, que possam prover um sinal codificado que mantenha a fidelidade do sinal original em uma menor quantidade de bytes. O sinal decodificado deve possuir um nível de fidelidade tal que possam ser identificados padrões de interesse e/ou possa ser tratado por ferramentas computacionais dedicadas.

II. ESTADO DA ARTE

Na literatura científica especializada, verificou-se maior ênfase em relação à compressão de sinais de S-EMG a partir de meados da década de 1990. Desde então, estratégias envolvendo modelagem paramétrica e codificadores de forma de onda foram objeto de estudo. A modelagem paramétrica linear [8] permite um alto ganho de compactação aliado a um baixo custo computacional. Entretanto, a fidelidade da forma de onda reconstruída é um fator limitante da técnica.
Abordagens com base nos codificadores de forma de onda permitem desempenho superior com controle da precisão do sinal decodificado, contudo, exigem um maior esforço computacional nos processos de codificação e de decodificação. Um exemplo clássico, fundamentado na aplicação da transformada wavelet discreta (TWD), é apresentado em [3]. Esta técnica, conhecida como EZW (Embedded Zero-tree Wavelets), possibilita bons ganhos de compressão em conjunto com uma alta relação sinal-ruído (SNR, do inglês Signal to Noise Ratio). Outras técnicas também baseadas em transformada wavelet podem ser encontradas na literatura [1, 2, 4, 7]. 
Métodos envolvendo inteligência artificial associada à transformada wavelet conduziram a ótimos resultados em termos de ganho de compressão versus SNR. No caso da técnica apresentada em [2, 4], as redes neurais aprendem os padrões espectrais dos sinais de S-EMG e determinam dinamicamente a quantidade de bits necessária para a quantização do vetor de coeficientes wavelet transformados. Esta abordagem visa aproximar o comportamento da envoltória de amplitude no domínio da transformada wavelet, priorizando os coeficientes de maior energia.
Outra técnica que apresentou excelente desempenho foi aquela baseada em padrões recorrentes [5]. A proposta é adequada a processos e sinais estocásticos de característica passa-baixa nos quais se subintenda a estacionaridade. Os resultados puderam ser observados em experimentos com protocolos de S-EMG isométricos. Entretanto, o custo computacional desta técnica é bastante alto, dependendo do tamanho e do comportamento espectral do banco de sinais sob análise.
Abordagens mais recentes [6, 9] utilizam técnicas bidimensionais na codificação dos sinais de S-EMG. Nesses algoritmos os sinais são segmentados e justapostos de forma a construir um sinal bidimensional. É implementado um reordenamento das colunas da matriz de sinal de forma maximizar a autocorrelação. Técnicas de codificação de sinais bidimensionais (imagens) são aplicadas. Os resultados de simulações computacionais mostram bons desempenhos da estratégia. 

III. PROPOSTA

Neste trabalho é proposto um algoritmo de compressão de sinais S-EMG baseado em transformada wavelet discreta e na alocação dinâmica de bits a partir do modelamento do perfil espectral no espaço transformado. O sinal é segmentado em janelas e a cada janela é aplicada a TWD, o que produz um vetor de coeficientes transformados.
Em seguida, o espectro do domínio da wavelet é segmentado em diversas sub-bandas e os bits são alocados para cada sub-banda segundo um modelo de perfil espectral específico. No passo seguinte, aplica-se uma técnica de compressão sem perdas por meio da codificação aritmética. Os dados são, finalmente, empacotados e estão prontos para transmissão e/ou armazenamento.
No processo de quantização, como discutido anteriormente, a quantidade de bits a ser alocada aos coeficientes transformados pertencentes a uma determinada sub-banda é fornecida por uma curva de alocação de bits. Aqui foram propostas e utilizadas duas curvas: a primeira é fornecida a partir de um perfil linear decrescente e a segunda é fornecida por um perfil tangente hiperbólica decrescente.
O objetivo de se utilizar uma curva decrescente é proporcionar uma quantização com maior quantidade de bits para os coeficientes transformados que apresentam maior energia e atribuir uma menor quantidade de bits para coeficientes de menor energia. Isso aumenta a eficiência do processo de quantização, uma vez que os coeficientes que carregam mais informação do sinal são melhor representados e não há desperdício de bits com coeficientes que carregam menos informação do sinal.
Por meio da alocação de bits busca-se um padrão de curva que forneça um maior ganho de compressão com a menor distorção da forma de onda do sinal reconstruído.
A saída do processo de quantização é a entrada do codificador por entropia, utilizado aqui com o objetivo de reduzir redundâncias existentes.
O algoritmo proposto é testado em um banco de sinais de S-EMG reais. Os resultados obtidos são apresentados e comparados com os resultados obtidos por outras técnicas, que atualmente fazem parte do estado da arte da compressão de sinais eletromiográficos.

IV. DESENVOLVIMENTO

A.	Codificador

O codificador proposto consiste na sequência de passos apresentados na Fig. 1.
O sinal S-EMG original é segmentado em conjuntos de amostras de tamanho fixo (isto é, janelas com número predeterminado de amostras), e cada um destes blocos é convertido para o domínio da transformada ortogonal wavelet.

Fig. 1. Diagrama de blocos do codificador de sinais de S-EMG.
A função da transformada ortogonal é concentrar a energia do sinal em uma quantidade pequena de coeficientes transformados levando a uma representação com menor correlação no domínio transformado [1].
A transformada wavelet discreta é implementada de forma ortonormalizada. Isto significa dizer que a faixa dinâmica dos coeficientes X[k] no espaço transformado é menor ou no máximo igual à do domínio do tempo, ou seja,

	.	(1)	

Neste caso, N corresponde ao comprimento da janela (número de amostras) e R ao comprimento de palavra (em bits) com o qual a sequência x[n] é digitalizada na representação em ponto fixo com sinal (para as simulações apresentadas neste trabalho, N = 2048 e R = 16 bits).
O vetor de coeficientes transformados é também segmentado, gerando um total de M sub-bandas. Adotamos a quantidade de 128 coeficientes para cada sub-banda, tal qual adotado em [2]. Assim, para cada janela de 2048 coeficientes, obtivemos M = 16 sub-bandas.
Em seguida, é realizada a quantização utilizando o vetor de alocação de bits obtido a partir do algoritmo de alocação. Em cada uma das M sub-bandas, os N coeficientes transformados X[k], k = 0, 1, ... , N–1,são quantizados de acordo com

	.	(2)	

O parâmetro λ é dado por

	.	(3)	

O valor de B[m] corresponde à quantidade de bits fornecida pelo algoritmo de alocação para a m-ésima sub-banda; a próxima seção detalha os procedimentos adotados para o cálculo deste parâmetro.
Os N/M coeficientes pertencentes à determinada sub-banda são representados com o mesmo comprimento de palavra digital. Para uma dada sub-banda m têm-se associados N/M coeficientes da transformada wavelet discreta, conforme expresso em

	,	(4)	

	com.	(5)	

Após a quantização, as sub-bandas são concatenadas para construir o vetor de símbolos que representa uma das janelas do sinal, e estas, por sua vez, são reagrupadas. O agrupamento de janelas é então compactado pelo codificador de entropia, o que produz o vetor de símbolos codificados. No último passo, os dados são empacotados gerando a representação final do arquivo que contém todo o sinal de S-EMG compactado.

B.	Algoritmos de alocação de bits

Duas técnicas foram desenvolvidas para prover a alocação de bits às sub-bandas do sinal transformado: alocação linear decrescente (ALD) e alocação tangente hiperbólica decrescente (ATH).
A seguir são apresentadas as relações matemáticas utilizadas para a alocação de bits B[m] para cada uma das propostas.
Os valores de Q e L correspondem, respectivamente, ao maior e ao menor comprimento de palavra digital a serem alocados para codificar um conjunto de coeficientes e M corresponde à quantidade de sub-bandas utilizadas na segmentação do espectro no domínio transformado. 

Algoritmo 1 – Alocação de bits com perfil linear decrescente (ALD):

	.	(6)	

No segundo algoritmo ainda temos as variáveis α e β, sendo que a primeira corresponde a um fator de compressão horizontal da curva e a segunda corresponde a um fator de deslocamento horizontal.

Algoritmo 2 – Alocação de bits com perfil tangente hiperbólica decrescente (ATH):

	.	(7)	

C.	Decodificador

O decodificador segue os passos definidos no processo de codificação, porém na ordem inversa. Os etapas deste processo estão representadas na Fig. 2.
	O algoritmo de decodificação tem início com o desempacotamento dos dados, para que se tenha acesso à informação correspondente ao sinal comprimido. Este segue então para o decodificador de entropia.
	Após a decodificação aritmética, são reconstruídas as janelas, que por sua vez são divididas novamente em sub-bandas, da mesma maneira como no codificador. A cada sub-banda é aplicada a quantização inversa. 
	As sub-bandas são reagrupadas em blocos, que são entradas da transformada wavelet inversa. Como saída obtém-se um janela de N amostras do sinal de S-EMG. Os diversos segmentos são concatenados de forma a se obter o sinal decodificado.

Fig. 2. Diagrama de blocos da decodificação de sinais S-EMG.

V. RESULTADOS

	Os resultados foram obtidos a partir de simulações computacionais e fazendo uso de um banco de sinais S-EMG reais. Comparações com resultados obtidos por outros autores são apresentados.

A.	Cenário e procedimentos

Foram utilizados sinais de EMG isométricos adquiridos com eletrodos de superfície pré-amplificados (modelo DE-02, DelSys Inc. Boston MA, USA). Os eletrodos foram posicionados de forma a obter sinais provenientes do músculo biceps brachii. Ao todo, foram avaliados 14 sujeitos submetidos a esforços de tensão isométricos, mantendo 60% de sua contração voluntária máxima. Os sinais foram alimentados em uma placa de aquisição com LABVIEW (NI-DAQ para Windows, National Instruments, USA). Todos os sinais foram amostrados a 2 kHz e digitalizados com 2 bytes por amostra. A duração dos sinais varia de 3 a 6 minutos.
Para a transformada wavelet discreta foi escolhida como função de base a Daubechies-4 e o processamento ocorreu em 8 níveis de resolução. Essa escolha foi estabelecida tendo por referência um estudo prévio cujos parâmetros de desempenho foram a de-correlação do sinal de S-EMG no espaço transformado e medidas de compactação de energia em menor quantidade de coeficientes da transformada [2].
	Como codificador de entropia foi utilizada a codificação aritmética, uma vez que essa se mostrou mais eficiente nos testes objetivos se comparada a outras técnicas de codificação como run-lenght ou Huffman.

B.	Resultados

O desempenho do algoritmo de compressão foi mensurado objetivamente a partir de duas métricas: o fator de compressão (CF) e a diferença percentual residual (PRD). Esses critérios são atualmente os mais utilizados na literatura para a avaliação da compressão de sinais eletrofisiológicos. O fator de compressão é definido por 

	,	(8)	

onde OS é a quantidade de bits necessária para armazenar os dados originais e CS é a quantidade de bits necessária para armazenar os dados comprimidos.
A diferença percentual residual é definida como

	,	(9)	

onde x é o sinal original,  é o sinal reconstruído e N é o tamanho do segmento de sinal.
A Fig. 3 mostra a média dos resultados de PRD em função de CF aferidos para o banco de sinais de S-EMG avaliado. Uma comparação com outros resultados apresentados na literatura também pode ser apreciada.
A Tabela 1 ilustra de maneira sucinta a diferença de desempenho existente entre os codificadores analisados.

Fig. 3. Avaliação de desempenho do algoritmo de compressão proposto e comparação com os resultados de Norris et al. [3], Berger et al. [4] e Filho et al. [5].
TABELA 1
AVALIAÇÃO DE DESEMPENHO DOS CODIFICADORES ‒ PRD (%)

	Fator de compressão ‒ CF(%)	
	70	75	80	85	90	95	
Norris et al.	[3]	3,90	4,12	5,20	8,02	13,08	27,10	
Berger et al.	[4]	2,57	2,63	3,85	7,01	14,14	24,95	
Filho et al.	[5]	1,21	1,75	2,64	4,18	7,33	16,61	
ALD	2,30	2,49	3,01	4,42	8,13	18,30	
ATH	2,07	2,22	2,52	3,31	6,88	19,74	

	A Fig. 4 e a Fig. 5 mostram exemplos de um trecho do sinal original, o respectivo sinal reconstruído e o erro de reconstrução (diferença entre os sinais) associado ao processo. A Fig. 4 foi obtida ao utilizar a alocação linear decrescente de bits tanto no codificador quanto no decodificador. Neste caso, os parâmetros da curva (Q e L) foram ajustados de tal forma que fosse obtido um fator de compressão igual a 85,86% e uma diferença percentual residual igual a 4,67%. A Fig. 5 por sua vez foi obtida ao utilizar a alocação de bits tangente hiperbólica decrescente. Os parâmetros da curva (Q, α e β) foram ajustados para que se obtivesse um CF igual a 85,92% e uma PRD de 3,44%.

VI. DISCUSSÃO

A aplicação da transformada wavelet torna possível concentrar a maior parte da energia do sinal em uma pequena quantidade de coeficientes transformados. O algoritmo proposto explora diretamente essa propriedade, ao atribuir uma maior quantidade de bits aos coeficientes que carregam maior energia (coeficientes de alta frequência, ou menor fator de escala) e uma menor quantidade de bits aos coeficientes que carregam uma menor quantidade de energia (coeficientes de baixa frequência, ou maior fator de escala). Deste modo, deixa-se de atribuir bits a coeficientes menos importantes no processo de reconstrução do sinal, o que gera uma maior compactação dos dados, sem afetar a qualidade da reconstrução. 
Para aumentar a eficiência da compactação, o algoritmo faz uso da codificação aritmética, que tem por objetivo reduzir redundâncias no vetor de bits. Além disso, a implementação do algoritmo elimina a necessidade de adicionar informação lateral (bytes de informação utilizados pelo decodificador) ao empacotamento de bits.
Observa-se na Tabela 1 que o algoritmo de compressão proposto por esse trabalho, em especial o que faz uso da ATH, forneceu resultados bastante satisfatórios, uma vez que apresentou valores de PRD mais baixos (o que significa menor distorção, logo, maior qualidade) para a faixa de CF entre 80% e 90% se comparado aos codificadores de sinais de S-EMG relatados na literatura mais recente.

Fig. 4. Exemplo qualitativo de reconstrução usando ALD (com CF = 85,86% e PRD = 4,67%): (a) janela de 2048 amostras do sinal S-EMG original; (b) sinal reconstruído após o processo de decodificação; (c) erro de reconstrução.

Fig. 5. Exemplo qualitativo de reconstrução usando ATH (com CF = 85,92% e PRD = 3,44%): (a) janela de 2048 amostras do sinal S-EMG original; (b) sinal reconstruído após o processo de decodificação; (c) erro de reconstrução.

É importante destacar que, além de prover excelente desempenho de compressão, o algoritmo aqui proposto é substancialmente mais simples e exige menores esforços computacionais quando comparado aos outros codificadores apontados por esse trabalho.
Como pode ser observado na Fig. 3, a alocação de bits tangente hiperbólica decrescente forneceu um desempenho melhor (PRD mais baixa) que a alocação linear decrescente para quase toda a faixa de CF analisada. Isso ocorre porque a ATH fornece maior quantidade de bits aos coeficientes de maior energia, o que propicia uma reconstrução mais fiel ao sinal original. Todavia, essa maior quantidade de bits atribuída não se torna um problema para o desempenho porque é compensada pela redução obtida com o algoritmo de compressão sem perdas (codificação aritmética).
As Figs. 4 e 5 mostram como se comporta na prática um trecho de sinal reconstruído após o uso do codificador proposto. Pode-se observar que, para valores de CF praticamente iguais (85,92% contra 85,86%), o resultado obtido pelo algoritmo que faz uso da ATH apresenta qualidade superior ao resultado obtido pelo algoritmo que faz uso da ALD. Percebe-se visualmente que o erro de reconstrução na Fig. 5 apresenta menor magnitude que aquele da Fig. 4 ao longo da maioria das 2048 amostras.
VII. CONCLUSÃO

Neste trabalho foi apresentado um algoritmo de compressão de sinais de eletromiografia que faz uso da transformada wavelet discreta e da segmentação do espectro transformado em sub-bandas com alocação de bits específica de acordo com o conteúdo espectral de cada sub-banda. Para a representação dos coeficientes transformados, foram avaliados dois perfis de alocação da quantidade de bits: o primeiro de acordo com uma curva linear decrescente e o segundo de acordo com uma curva tangente hiperbólica decrescente.
Os resultados das simulações aplicadas ao banco de sinais de S-EMG mostraram-se promissores. Novas pesquisas ainda podem ser realizadas no sentido de trazer melhorias de desempenho. Por exemplo, é possível estudar as características espectrais dos sinais de eletromiografia de superfície para adaptar melhor a alocação dinâmica de bits. 
Outra possibilidade interessante seria combinar as curvas de alocação de bits aos coeficientes transformados fornecidos por uma transformada wavelet aplicada a sinais dispostos de maneira bidimensional [6, 9], ou ainda construir uma função de base da transformada wavelet adaptada às características espectrais do banco de sinais [7].

REFERÊNCIAS

	[1]	M. H. Trabuco, J. C. Angarita, and F. A. O. Nascimento, “Algoritmo de Compressão de Sinais de S-EMG por Meio de TDW e Alocação de Bits Por Sub-Bandas,” in Anais do XXIII Congresso Brasileiro de Engenharia Biomédica, CBEB’2012, Ipojuca, Brazil, pp. 1953–1957.
	[2]	P. A. Berger, F. A. O. Nascimento, J. C. Carmo, A. F. Rocha, and I. dos Santos, “Algorithm for compression of EMG signals,” in Proc. 25th Annual International Conference of the IEEE Engineering in Medicine Biology Society, EMBC’2003, Cancun, Mexico, pp. 1299–1302.
	[3]	J. A. Norris, K. Englehart, and D. Lovely, “Steady-state and dynamic myoelectric signal compression using embedded zero-tree wavelets”, in Proc. 23rd Annual International Conference of the IEEE Engineering in Medicine Biology Society, EMBC’2001, Istanbul, Turkey, pp. 1879–1882.
	[4]	P. A. Berger, F. A. O. Nascimento, J. C. Carmo, and A. F. Rocha, “Compression of EMG signals with wavelet transform and artificial neural networks” Physiological Measurement, England, vol. 27, no. 6, pp. 457–465, 2006.
	[5]	E. B. L. Filho, E. A. B. da Silva, and M. B de Carvalho, “On EMG signal compression with recurrent patterns”, IEEE Transactions on Biomedical Engineering, vol. 55, no. 7, pp. 1920–1923, 2008.
	[6]	M. V. C. Costa, J. L. A. Carvalho, P. A. Berger, A. Zaghetto, A. F. da Rocha, and F. A. O. Nascimento, “Two-dimensional compression of surface electromyographic signals using column-correlation sorting and image encoders,” in Proc. 31th Annual International Conference of the IEEE Engineering in Medicine and Biology Society, EMBC’2009, Minneapolis, Minnesota, USA, pp. 428–431.
	[7]	J. P. L. M. Paiva, C. A. Kelencz, H. M. Paiva, R. K. H. Galvão, and M. Magini, “Adaptive wavelet EMG compression based on local optimization of filter banks,” Physiological Measurement, vol. 29, no. 7, pp. 843–856, 2008.
	[8]	E. S. G. Carotti, J. C. De Martin, R. Merletti, and D. Farina, “Compression of surface EMG signals with algebraic code excited linear prediction,” in Proc. of IEEE International Conference on Acoustics, Speech and Signal Processing, ICASSP’2006, Tolouse, France, pp. 1148–1151.
	[9]	M. V. C. Costa, P. A. Berger, A. F. da Rocha, J. L. A. Carvalho, and F. A. O. Nascimento, “Compression of Electromyographic Signals Using Image Compression Techniques,” in Proc. 30th Annual International Conference of the IEEE Engineering in Medicine and Biology Society, EMBC’2008, Vancouver, Canada, pp. 2948–2951.