Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

9
1 ALGORITMO DE CODIFICACIÓN DE SEÑALES ELECTROCARDIOGRÁFICAS MEDIANTE EL MODELO CAÓTICO DE LORENZ Eduardo Barbará Morales 1 , Oscar E. Rodríguez Ramírez 2 , Emiliano Alba Blanco 3 1 Centro de Bioingeniería, Facultad de Ing. Eléctrica, ISPJAE, 2 Dpto. de Telecomunicaciones y Telemática, Facultad de Ing. Eléctrica, ISPJAE, Centro de Bioingeniería, Facultad de Ing. Eléctrica, ISPJAE 1 [email protected] RESUMEN Las aplicaciones de los modelos o sistemas de ecuaciones caóticos en ramas como las comunicaciones, la telemedicina, el procesamiento de señales e imágenes son cada vez más frecuentes. Los algoritmos que generan señales caóticas pueden ser utilizados para la generación de portadoras, la encriptación y la codificación entre otras aplicaciones. En este trabajo se plantea un método, que permite combinar señales electrocardiográficas (ECG) obtenidas de un paciente, con un algoritmos que genera señales caóticas utilizando como base el sistema de ecuaciones de Lorenz. A este algoritmo se le han realizado una serie de modificaciones que mejoran el comportamiento del sistema. Los resultados obtenidos en simulaciones realizadas frente al ruido son aceptables. PALABRAS CLAVES: Algoritmos, ecuaciones caóticas, señal de electrocardiografía. CODING ALGORITHM ELECTROCARDIOGRAPHIC SIGNALS BY LORENZ CHAOTIC MODEL ABSTRACT Applications or systems models of chaotic equations in branches such as communications, telemedicine, signal and image processing are becoming more frequent. The chaotic signals generated algorithms can be used for the carrier generation, encryption and coding among other applications. This paper presents a method for combining signals electrocardiographic (ECG) obtained from a patient with an algorithm that generates chaotic signals using as a basis the system of Lorenz equations. In this algorithm have made a number of changes to improve the system performance. The results obtained against noise simulations are acceptable. KEY WORDS: Algorithms, chaotic equations, electrocardiography signal.

description

Este texto describe un algoritmo para codificar señales caóticas basado en el modelo de lorentz y haciendo uso para ello una señal de electrocardiograma

Transcript of Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

Page 1: Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

1

ALGORITMO DE CODIFICACIÓN DE SEÑALES

ELECTROCARDIOGRÁFICAS MEDIANTE EL MODELO CAÓTICO DE

LORENZ

Eduardo Barbará Morales

1, Oscar E. Rodríguez Ramírez

2, Emiliano Alba Blanco

3

1 Centro de Bioingeniería, Facultad de Ing. Eléctrica, ISPJAE, 2 Dpto. de Telecomunicaciones y Telemática, Facultad

de Ing. Eléctrica, ISPJAE, Centro de Bioingeniería, Facultad de Ing. Eléctrica, ISPJAE

[email protected]

RESUMEN

Las aplicaciones de los modelos o sistemas de ecuaciones caóticos en ramas como las comunicaciones,

la telemedicina, el procesamiento de señales e imágenes son cada vez más frecuentes. Los algoritmos que

generan señales caóticas pueden ser utilizados para la generación de portadoras, la encriptación y la

codificación entre otras aplicaciones. En este trabajo se plantea un método, que permite combinar señales

electrocardiográficas (ECG) obtenidas de un paciente, con un algoritmos que genera señales caóticas

utilizando como base el sistema de ecuaciones de Lorenz. A este algoritmo se le han realizado una serie

de modificaciones que mejoran el comportamiento del sistema. Los resultados obtenidos en

simulaciones realizadas frente al ruido son aceptables.

PALABRAS CLAVES: Algoritmos, ecuaciones caóticas, señal de electrocardiografía.

CODING ALGORITHM ELECTROCARDIOGRAPHIC SIGNALS BY

LORENZ CHAOTIC MODEL

ABSTRACT

Applications or systems models of chaotic equations in branches such as communications, telemedicine,

signal and image processing are becoming more frequent. The chaotic signals generated algorithms can

be used for the carrier generation, encryption and coding among other applications. This paper presents a

method for combining signals electrocardiographic (ECG) obtained from a patient with an algorithm that

generates chaotic signals using as a basis the system of Lorenz equations. In this algorithm have made a

number of changes to improve the system performance. The results obtained against noise simulations are

acceptable.

KEY WORDS: Algorithms, chaotic equations, electrocardiography signal.

Page 2: Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

2

1. INTRODUCCIÓN

La teoría del caos es el estudio cualitativo del comportamiento aperiódico e inestable en sistemas

dinámicos no lineales y deterministas. El comportamiento aperiódico inestable es altamente complejo,

éste nunca se repite y continúa manifestando los efectos de cualquier pequeña perturbación [1].

Para el desarrollo de este trabajo trataremos el concepto caos como un sistema de ecuaciones que es el

resultado de un proceso determinístico y que ocurre en sistemas no lineales y realimentados en los cuales

existe una gran sensibilidad a las condiciones iniciales.

La característica de no linealidad es una de las fundamentales que se manifiestan en los algoritmos y

sistemas de ecuaciones que presentan comportamiento caótico [2].

El objetivo de este trabajo consiste en la codificación y decodificación de señales electrocardiográficas

utilizando el modelo de ecuaciones de Lorenz. Al modelo de ecuaciones utilizado le son realizadas

modificaciones que mejoran la aleatoriedad sin alterar las propiedades caóticas originales, lo que

constituye un aporte de este trabajo. Se compararon además los resultados obtenidos frente al ruido y a

otros métodos de modulación

2. ECUACIONES CAÓTICAS Y MODELO DE LORENZ

El modelo para la generación de señales caóticas que será tratado en este trabajo es el Modelo de Lorenz

[3],[4],[5]. Lorenz estaba interesado en la predictibilidad de las soluciones de las ecuaciones

hidrodinámicas. El sistema que obtuvo es el compuesto por las ecuaciones (1)-(3).

( )

Donde , y son parámetros de control. El modelo describe el movimiento de convección de un fluido

en una celda de Rayleigh-Bernard pequeña e idealizada. La variable x representa la velocidad de flujo del

fluido. Si x>0 el fluido circula en sentido horario mientras que si x<0 el fluido circula en sentido

antihorario. La variable y representa la variación de temperatura horizontal y la variable z representa la

variación de temperatura vertical. El parámetro σ (número de Prandtl) depende de las propiedades del

fluido. El sistema anterior es un sistema continuo expresado en función de las derivadas de x, y, z por lo

que necesita ser discretizado para realizar el procesamiento digital de esta señal con la señal de

electrocardiograma. Este proceso se realiza por medio de la aproximación de primer orden de Euler

obteniéndose un sistema de ecuaciones como se muestra (4)-(6), [6].

[ ( )]

[ ]

[ ]

(1)

(2)

(3)

(4)

(5)

(6)

Page 3: Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

3

Donde es un parámetro escalar de tiempo. Al sistema ya expresado en forma discreta es lo que

llamamos mapa de 3D (tres dimensiones).

Para reducir la complejidad son aplicadas las siguientes transformaciones de escala y elevación que se

muestran en las ecuaciones (7)-(9)

( )

( )

( )

Donde y son respectivamente los parámetros de elevación y escala.

Los resultados de las ecuaciones se muestran en (10)-(12):

( )

( ) ( ) ⁄ ( )

( ) ( ) ⁄ ( )

En este trabajo fueron adoptados los siguientes valores para la simulación del sistema:

Aplicando estos valores antes mencionados a las ecuaciones 1.9, 1.10, 1.11, los resultados que se obtienen

finalmente se muestran en (13)-(15):

(

) (

)

(

) (

)

El sistema de ecuaciones (13)-(15): se conocen como mapa caótico de tres dimensiones, donde la clave

para la modulación está formada por los 8 bit menos significativos de la variable caótica [4],[5],[7].

Las transformaciones de escala y elevación así como la aritmética con números naturales fueron

empleadas para simplificar la realización e implementación computacional de este sistema de ecuaciones.

Este mapa es estructuralmente estable. Se puede realizar un análisis gráfico del sistema de las ecuaciones

(13)-(15) y comprobar que en realidad llega al caos, para este proceso se simuló en el asistente

matemático Matlab versión 7.10.0, los valores de las condiciones iniciales que se utilizaron fueron

Xn=19400, Yn=21315 y Zn= 32032. Estos valores fueron seleccionados teniendo en cuenta que

pertenecen al espacio de fases en el cual el algoritmo presenta comportamiento caótico. Los resultados se

muestran en la figura 1 y figura 2.

(7)

(8)

(9)

(10)

(11)

(12)

(13)

(14)

(15)

Page 4: Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

4

II ALGORITMO DE CODIFICACIÓN.

En el diagrama en bloque que se observa en la figura 3 se describe el proceso de codificación junto al

algoritmo para la perturbación de una de las señales caóticas.

En este algoritmo se toman las variables Xn+1 e Zn+1 que tienen una longitud inicial de 16 bit, de cada una

de ellas se toman los 8 bit de la parte baja mediante una operación de AND lógico. Luego se realiza un

XOR y se almacena en un registro de 8 bit, estos bits posteriormente se realimentan nuevamente a la

posición donde fueron tomados en la variable Xn+1 para formar una nueva palabra de 16 bit como se

muestra en la figura 3.

Figura 1 Variable caótica Xn+1 correspondiente al sistema de ecuaciones (13)-(15)

Figura 2 Fractal correspondiente al sistema de ecuaciones (13)-(15).

Figura 3 Esquema de modulación y perturbación del generador caótico.

Page 5: Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

5

Este proceso de realimentación constituye una excitación al sistema de ecuaciones que es la base de la

perturbación que se realiza en cada iteración de este algoritmo. A partir de ese momento la señal caótica

tiene un nuevo comportamiento, entonces se dice que el sistema de Lorenz ha sido perturbado [4].

En la figura 4 se puede ver el comportamiento de la variable caótica Xn+1 originalmente y luego ella

misma después de ser perturbada con el algoritmo que se propone en la figura 3. Como se puede observar

las variables difieren en su comportamiento en el tiempo, la matriz de coeficientes de correlación

obtenida con Matlab se puede apreciar que las dos señales presentan muy baja correlación. [5],[8]

Finalmente el proceso de codificación ocurre al realizarse la operación de XOR entre la variable caótica

Xn+1 modificada y el dato o información útil que en este caso es la señal de electrocardiografía (ECG). Un

fragmento de la señal de ECG utilizada se puede observar en la figura 5.

Figura 4 Señal Xn+1 en la parte superior y Xn+1 perturbada con la variable Zn+1 en la

parte inferior.

Figura 5 Fragmento de la señal de ECG utilizada.

Page 6: Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

6

III. ALGORITMO DE DECODIFICACIÓN.

El algoritmo para realizar la decodificación de la señal de ECG es similar al descrito en el apartado

anterior. En este caso, para obtener la señal útil hay que realizar la operación lógica de XOR, de la

variable caótica perturbada con la señal que se recibe, obteniéndose nuevamente la información útil. La

longitud de las palabras binarias y el método para generar el algoritmo caótico coinciden con lo descrito

anteriormente. El diagrama en bloques del decodificador descrito se muestra en la figura 6 [5].

IV.SENSIBILIDAD A LAS CONDICIONES INICIALES

Se debe señalar que el sistema de ecuaciones caóticas que sea utilizado en el transmisor de origen, debe

ser generado exactamente en el receptor. Se debe contar además con una perfecta sincronización de las

condiciones iniciales que sirven de semilla en la generación de la señal caótica. Una pequeña variación en

las mismas da como resultado que no se recupere la señal adecuadamente. Si en el receptor es

implementado el algoritmo que se propone para la decodificación y se mantienen las condiciones

iniciales, la señal es recuperada totalmente, si se mantiene además una relación señal a ruido mayor o

igual a 18 dB.

Por el contrario si en el sistema de ecuaciones es alterada una de las tres condiciones iniciales, no es

posible recuperar la señal adecuadamente. En la figura 7 se muestra una variación de una unidad en la

variable Xn, la señal de electrocardiograma que se recupera está completamente distorsionada con

respecto a la señal original [5], [9], [10].

Figura 6 Algoritmo de demodulación para recuperar la señal de ECG.

Figura 7 Señal de ECG recuperada con una variación de una unidad en las

condiciones iniciales x1 = 19401; y1 = 21315; z1 = 32032

Page 7: Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

7

V. COMPORTAMIENTO FRENTE AL RUIDO

A continuación se hace un análisis del comportamiento de frente al ruido. Las simulaciones para este

caso fueron realizadas en el Matlab versión 7.10.0, y el ruido que se escogió para este proceso es el ruido

blanco aditivo gaussiano (AWGN), por ser este un modelo matemático de ruido que se asemeja a las

características de los canales de comunicaciones en general.

Fue simulada la recuperación de la señal de ECG para varios valores de relación señal a ruido (SNR). En

un primer caso la señal codificada es contaminada con AWGN manteniendo una SNR= 10 dB, para

este caso la señal de ECG que se recupera se ilustra en la figura 8

Fueron calculados los valores de la matriz de coeficientes de correlación entre la señal original que es

utilizada en el proceso de codificación y la que se recupera para las condiciones mencionadas

anteriormente, dando como resultado [1], [5]:

Cuando se varía la SNR a valores de 18 dB o superiores entonces es posible la recuperación completa de

la señal de información. En la figura 9 se muestra el caso de la señal recuperada con una SNR=18 dB.

Figura 8 Señal de ECG recuperada con el algoritmo propuesto con una SNR=10 dB.

Figura 9 Señal de ECG recuperada con el algoritmo propuesto con una SNR=18 dB.

Page 8: Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

8

Los resultados de la matriz de coeficientes de correlación, que evidencian la total similitud entre los

vectores de la señal original y la recuperada se muestran a continuación.

CONCLUSIONES

En este trabajo se presenta un algoritmo que permite la codificación de una señal de ECG real, utilizando

para este proceso una señal caótica obtenida con el modelo de ecuaciones de Lorenz. El sistema de

ecuaciones original fue modificado introduciéndose una perturbación al algoritmo lo cual mejora la

aleatoriedad del sistema. Se realizaron además simulaciones para la recuperación de la señal de ECG

con diferentes valores de relación señal ruido dando valores aceptables en este proceso.

REFERENCIAS

[1] BARBARÁ, E. “Modulación de una señal de electrocardiograma mediante algoritmo Caótico”.

Directores: Emiliano Alba, Oscar Ramírez. Tesis de Maestría, Instituto Superior Politécnico José

Antonio Echeverría, Ciudad de La Habana, (2011).

[2] BARBARÁ, E. M., y Martínez, M., “Generación discreta de señales caóticas”. Directores: Emiliano

Alba, Oscar Ramírez. Tesis en opción del título de Ingeniero en Telecomunicaciones y Electrónica.

Instituto Superior Politécnico José Antonio Echeverría Ciudad de La Habana, Cuba, (2008).

[3] RODRÍGUEZ J, E. D., y Álvarez, E., “Sistema de Comunicación Digital mediante modulación

caótica por posición de pulsos”. Director: Eduardo Barbará. Tesis en opción del título de Ingeniero en

Telecomunicaciones y Electrónica. Ciudad de La Habana, Cuba, (2010).

[4] GONZÁLEZ M C. Larrondo, H.A, Gayoso C.A, “Digital Signal Transmission with chaotic

encryption design and evaluation on FPGAS”. (2006).

[5] BARBARÁ, E. Alba, E. Ramirez O. Modulating electrocardiographic signals with chaotic

algorithms. Ingeniería e Investigación.. Vol. 32 núm. 2. pp 46-50. (2012)

[6] BLANCHET M. Charbit “Digital Signal and Image Processing using MATLAB®” ISTE Ltd,

(2006).

[7] SOBHY, M. I., Aseeri, M. A, y Shehata, E. R., “Real Time Implementation of Continuous (Chua and

Lorenz) Chaotic Generator Models using Digital Hardware”. Universidad de Kent, Reino Unido, (1997).

[8] YU, H., A Novel Chaotic Estimation Technique and its Application to Spread Spectrum

Communications. Tesis en opción al grado de Máster en Ciencias. Universidad de Calgary, Canadá.

(2001).

[9] MURALI K, M. Lakshmanan, “Transmission of signals by Synchronization in a Chaotic Van

der Pol-Duffing oscillator”, Phys. Rev. E, vol. 48, no. 3, pp R1624-R1626, (1993).

[10] LORENZO, M. de las N., “Influencia del Ruido Gaussiano Correlacionado en la Sincronización de

los Sistemas Caóticos. Tesis en opción al grado de Doctor en Física. Santiago de Compostela, Chile.

(2000).

Page 9: Algoritmo de Codificación de Señales Electrocardiográficas Mediante El Modelo Caótico de Lorenz

9

SOBRE LOS AUTORES

Eduardo Barbará Morales: Ing. Telecomunicaciones y Electrónica MSc. Bioingeniería. Departamento

de Bioingeniería (CEBIO). Profesor Instructor. Instituto Superior Politécnico José A. Echeverría, La

Habana, Cuba. Email [email protected]

Oscar E. Rodríguez Ramírez: Ing. Electricista MSc. Comunicaciones. Departamento de

Telecomunicaciones y Telemática. Profesor Auxiliar. Instituto Superior Politécnico José A. Echeverría,

La Habana, Cuba. Email [email protected].

Emiliano F. Alba Blanco: Ing. Electricista MSc. Radiocomunicaciones. Departamento de Bioingeniería

(CEBIO). Profesor Auxiliar. Instituto Superior Politécnico José A. Echeverría, La Habana, Cuba. Email

[email protected].