Conclusiones. - Instituto Politécnico Nacional

Transcripción

Conclusiones. - Instituto Politécnico Nacional
1
2
INSTITUTO POLITECNICO NACIONAL.
Escuela Superior de Ingeniería Mecánica y Eléctrica.
Se cretaría de Investigación y Posgrado.
Sección de Estudios de Posgrado e Investigación.
MAESTRIA EN CIENCIAS EN INGENIERIA DE
TELECOMUNICACIONES.
“Técnica de Inserción de Información en Video aprovechando el
mismo Ancho de Banda”
PRESENTA: Ing. Blanca Esther Carvajal Gámez.
Asesor: M. en C. Marco Antonio Acevedo Mosqueda.
3
CONTENIDO.
Objetivo.
Justificación.
Resumen.
Abstract
Introducción.
Capitulo I. “Esteganografía”
1.-Introducción.
1.1.-Historia de la Esteganografía.
1.2.- Métodos Clásicos.
1.2.1. - Cifrado Nulo.
1.2.2. - Técnicas Actuales.
1.2.3.- Publicaciones.
1.2.3.1.- Hyperotomachia Poliphili.
1.2.3.2.-Steganographia.
1.2.3.3.- Schola Steganographic.
1.2.3.4.- La cryptographia militaire.
1.3.-Ocultamiento de información.
1.3.1. -Técnicas de Ocultamiento en la esteganografía.
1.3.1.1.-Métodos en el dominio espacial.
1.3.1.2.- Métodos en el dominio Frecuencial.
1.4.-Seguridad en la esteganografía.
1.5.-Bases en la esteganografía.
1.6.-Canales de Transmisión.
1.7.-Conclusiones.
1.8.-Referencias.
Pag.
11
12
13
14
15
16
16
16
17
17
18
18
19
19
20
21
21
21
22
26
27
28
31
31
Capítulo II.- “Conceptos Básicos: Estructura de un archivo de Audio y de un
archivo de Imagen”
2.-Introducción.
2.1.-Estructura de un archivo.
2.2.-Archivos de imagen.
2.3.-Composición de archivos de video.
2.4.-Descomposición de un archivo de video en imágenes.
2.5.-Imágenes digitales a color (RGB).
2.6.-Archivos de sonido.
2.7.-Referencias de un Archivo wav.
2.8.-Archivos de Video y de Audio.
2.9.- Archivos de formato AVI.
2.10.-Conclusiones.
2.11.-Referencias.
33
Capítulo III.-“Transformada Wavelet”
3.- Introducción.
3.1.- Qué es la wavelet?
3.2.- Transformada Wavelet Discreta.
3.3.- Transformada Wavelet Haar.
60
60
63
64
66
33
33
34
38
39
41
42
46
53
54
58
59
4
3.4.-Transformada Wavelet daub4.
3.5.-Transformada Wavelet en dos dimensiones.
3.6.- Conclusiones.
3.7.- Referencias.
68
71
72
72
Capítulo IV.- “Desarrollo del Algoritmo propuesto para aplicar la
esteganografía ”
4.-Introducción.
4.1.- Metodología para el desarrollo del algoritmo esteganográfico.
4.2.-Descomposición del Video Base y del Video a Ocultar.
4.3.-Herramientas Estadísticas.
4.4.-Criterio del umbral.
4.5.-Aplicación de la Transformada Wavelet Discreta para los flujos de audio y
de Video para el video Base y el Video a Ocultar.
4.6.-Recuperación de la información.
4.7.-Transformada Wavelet Discreta Inversa.
4.8.- Conclusiones.
4.9.-Referencias.
73
Capítulo V.- “Ataques”
5.-Introducción.
5.1.- Compresión.
5.2.-Tipos de Ruido.
5.3.-Conclusión.
5.4.-Referencias.
87
87
87
88
92
92
Capítulo VI.-“Pruebas e Implementación del Algoritmo Esteganográfico”
6.-Introducción.
6.1.- Inserción de información.
6.2.-Capacidad de Inserción con la Transformada Wavelet Discreta.
6.3.-Agregando ruido a la imagen.
6.3.1.- Ruido Multiplicativo adicionando a cada imagen que conforma
el video.
6.3.2.- Ruido Impulsivo adicionado a cada imagen que conforma el video.
93
93
93
96
98
73
73
75
76
77
78
82
82
85
85
99
6.3.3.- Agregando ruido Gaussiano a la imagen que conforma el video.
6.4.-Discusión de resultados.
6.5.-Conclusiones.
Conclusiones Generales.
109
119
132
133
134
Anexo1. -“Artículos publicados o por publicar”
Anexo2. -“Congresos Asistidos”
Glosario.
135
148
149
5
Imágenes.
Capítulo I.
Figura 1.1.- Parte del libro anteriormente mencionado en la parte superior
18
izquierda se puede ver la letra P.
Figura 1.2. - Portada del Libro Steganographia.
Figura 1.3. - Portada del libro Schola Steganographia.
Figura 1.4. -Amplificación de una imagen indexada en sus 256 tonos de gris.
Figura 1.5. -Imagen indexada en 256 tonos de gris.
Figura 1.6. - Aplicación del método Frecuencial y la visualización de los
relieves de la imagen.
Figura 1.7. - Medios de Transmisión.
Figura 1.8. - Ancho de Banda de Medios Guiados.
Capítulo II
Figura 2.1. - Imagen comprimida.
Figura 2.2.-Cabecera perteneciente a un archivo jpeg.
Figura 2.3.- Localidad de memoria de los campos de una cabecera de un
archivo de imagen.
Figura 2.4.- Descomposición de un archivo de video en cuadros.
Figura 2.5.- Composición de una imagen en sus matrices.
Figura 2.6.- Imagen en color y su descomposición en sus componentes RGB.
Figura 2.7.- Valor de los píxeles que conforman una imagen.
Figura 2.8. - Fragmento de una cabecera de un archivo wav.
Figura 2.9.- Mapa de localización en memoria de los campos contenidos en
una cabecera para archivos Wav.
Figura 2.10.- Archivo de Audio PCM a 8 bits.
Figura 2.12.- Visualización de la localidad de memoria para un archivo Avi.
Figura 2.12.- Encapsulado de las tramas de un archivo Avi.
Figura 2.13.- Cabecera de un archivo Avi.
Capítulo III.
Figura 3.1.- a)Respuesta al impulso de la Transformada Wavelet Discreta
Haar.
b) Respuesta al impulso de la Transformada Wavelet Discreta
para la db4
Figura 3.2.- Banco De filtros para la codificación en sub-bandas.
Figura 3.3.- Representación del escalamiento de una matriz.
Figura 3.4.- Representación del escalamiento de una matriz.
Figura 3.5.- Descomposición wavelt para una matriz.
Figura 3.6.- Descomposición wavelet para una imagen.
Figura 3.7.-Imagen original.
Figura 3.8.-Imagen descompuesta en sus distntos niveles de frecuencia.
19
20
22
22
26
28
29
36
36
37
39
40
42
42
44
45
46
56
57
58
61
64
67
67
69
70
71
71
Capítulo IV.
Figura 4.1.- Diagrama de flujo del algoritmo esteganográfico.
Figura 4.2.-Descomposición de un video en cuadros.
74
75
Figura 4.3.- Descomposición de una imagen en sus componentes RGB.
Figura 4.4.- Bloques de descomposición wavelet para una imagen.
76
79
6
Figura
Figura
Figura
Figura
Figura
Figura
4.5.-Descomposición en sub-imágenes del Video Base.
4.6.-Bloque de descomposición wavelet para una imagen.
4.7.-Doble descomposición de una imagen.
4.8.-Flujo de audio del video a Ocultar.
4.9.-Descomposición del flujo de Audio.
4.10.-Transformada Wavelet Discreta Inversa.
Capítulo V.
Figura 5.1.- Imagen Octopuss con la TWD db4.
Figura 5.2.-Histograma del Octopuss con la TWD.
Figura 5.3.-Imagen Octopuss con la TWD Haar.
Figura 5.4.- Histograma del Octopuss con la TWD Haar.
Figura 5.5.-Octopuss.
Figura 5.6.- Histograma Octopuss sin nin guna adición de ruido.
Figura 5.7.-Octopuss afectado por ruido aditivo.
Figura 5.8.-Histograma Octopuss afectado por el ruido aditivo.
Figura 5.9.-Alizee.
Figura 5.10.-H istograma de la imagen Alizee sin ser afectada por ruido.
Figura 5.11.-Alizee afectada por ruido Impulsivo.
Figura5.12. -Histograma de la imagen de Alizee afectada por ruido
Impulsivo.
Figura 5.13.-Alizee afectada por ruido Impulsivo.
Figura 5.14. -Histograma de la imagen de Alizee afectada por ruido
Impulsivo.
Figura 5.15.-Los Simpson.
Figura 5.16.-H istograma de la imagen sin aplicarse ruido.
Figura 5.17.-Simpson con ruido Gaussiano.
Figura 5.18.-H istograma de la imagen aplicando ruido Gaussiano.
Figura 5.19.-Simpson aplicándole ruido.
Figura 5.20.- Histograma de la imagen de los Simpson.
80
80
80
81
81
83
88
88
88
88
89
89
89
89
90
90
90
90
90
91
91
91
91
91
91
91
7
Tablas.
Capítulo II.
Tabla 2.1.- Campos utilizados.
Tabla 2.2. -Campos utilizados dentro de la estructura para archivos de
imagen.
Tabla 2.3.-Tipos de imágenes.
Tabla 2.4.-Campos utilizados de la cabecera de un archivo Wav.
Tabla 2.5.- Miembros pertenecientes a la estructura de los archivos Wav.
Tabla 2.6.- Valores típicos de reproducción para un archivo wav.
Tabla 2.7.- Compresión PCM a 11025 Hz con 16 bits.
Tabla 2.8.-Compresión PCM a 8000 Hz con 16 bits.
Tabla 2.9.-Compresión GSM a 11025 Hz.
Tabla 2.10. -Compresión PCM a 8000 Hz con 8 bits.
Tabla 2.11.-Compresión µ-Law a 8000 Hz.
Tabla 2.12. -Compresión PCM 11025 Hz con 8 bits.
Tabla 2.13. -Compresión µ-Law 8000 Hz.
Tabla 2.14. -Compresión ADPCM 11025 Hz con 4 bits.
Tabla 2.15. -Compresión ADPCM a 8000 Hz con 4 bits.
Tabla 2.16. -Compresión MP3 a 8000 Hz.
Tabla 2.17. -Compresión Lemout a 8000 Hz.
Tabla 2.18. -Compresión DSP a 8000 Hz.
Tabla 2.19. -Compresión Lemout Celp a 8000 Hz.
Tabla 2.20.- D iferentes tipos de captura de video.
35
35
40
43
43
45
46
47
47
48
49
49
50
50
51
51
52
52
53
59
Capítulo V.
Tabla 5.1.-Ejemplos de Compresión.
Tabla 5.2.- Generación de variables aleatorias.
88
92
Capítulo VI.
Tabla 6.1.- Visualización gráfica.
Tabla 6.2.- Características a considerar.
Tabla 6.3.- Visualización gráfica.
Tabla 6.4.-Capacidad de Inserción.
Tabla 6.5.-Imagen con ruido Multiplicativo.
Tabla 6.6.- Imagen del Video Base con ruido Multiplicativo.
Tabla 6.7.- Imagen del Video Base con ruido Multiplicativo.
Tabla 6.8.- Imagen del Video Base con ruido Multiplicativo.
Tabla 6.9.- Imagen del Video Base con ruido Multiplicativo.
Tabla 6.10.- Imagen del Video Base con ruido Impulsivo.
Tabla 6.11 Imagen del Video Base con ruido Impulsivo.
Tabla 6.12- Imagen del Video Base con ruido Impulsivo.
Tabla 6.13-Imagen del Video Bas e con ruido Impulsivo.
Tabla 6.14Imagen del Video Base con ruido Impulsivo.
Tabla 6.15Imagen del Video Base con ruido Impulsivo.
Tabla 6.16-Imagen del Video Base.
Tabla 6.17-Imagen del Video Base con ruido Gaussiano.
Tabla 6.18-Imagen del Video Base con ruido Gaussiano.
Tabla 6.19-Imagen del Video Base con ruido Gaussiano.
Tabla 6.20.-Imagen del Video Base con ruido Gaussiano.
94
96
96
97
100
101
103
104
105
106
107
109
111
113
115
117
120
122
124
126
8
Dedicatoria.
A Dios, Kuthumi, mi Mama, mi Abuelito (q.e.d), a
Bertha, Karol, Dante, José Luis, Pepe y V.C. Los quiero
mucho.
9
Agradecimientos.
Primeramente dedico esta Investigación al Maestro Kuthumi y a Dios, gracias por su
ayuda, apoyo, consejos e inspiración.
A mi mama Blanca Esther Gámez Acuña por todo su amor, apoyo incondicional, por
todas las desveladas que estuvimos juntas. Mami esto es para ti.
A Dante, mi hermana Bertha Isabel y a
incondicional.
Karol. Gracias por su apoyo y paciencia
Al Doctor José Luis López Bonilla por aquellos ratos en los que estábamos repasando
wavelets, por su paciencia, por su dedicación y por todo lo que me enseñó. Al prof.
Federico Felipe.
Al Doctor Kasakov y Dr. Funes. Por darme su mano y comprensión cuando más me
hacia falta.
A la Doctora Ingrid Daubechies por apoyarme en mi investigación y brindándome lo
más pr onto posible la información necesaria para esta investigación. Otra vez Gracias.
A todos mis amigos incondicionales que estuvieron dándome sus consejos, por su
apoyo, por el tiempo que me dedicaron para escucharme. Gracias a: Janet, Beto, Andrés,
Carolina, Laurita, Luis Resendiz, Víctor Cabrera, Yes, Mónica , Luis Rosales, Luis
Limón, Jorge Ferrer. Gracias , Amigos aguantarme!!
A mis jefes que son mis amigos. Gracias Isaac y Marisela por todo su apoyo y
preocupación.
A mis alumnos por su paciencia en mis ratos de mal genio, gracias por su apoyo en
especial a: Enoch, Emilio, Beto, Fili, Saúl, Flor, Javier, Iván Hernández, Manuel, Edgar,
Edgar, Javier , Alejandro. Y en especial a Víctor Cosío por todo su apoyo.
Les mando un fuerte ABRAZO.
A Martha y Abraham.
10
Objetivo General.
Proponer una técnica esteganográ fica en un video, capaz de albergar cualquier
clase de archivos para aprovechar el mismo Ancho de Banda utilizado en un medio
guiado para la transmisión de video en televisión por cable ; en esta investigación se
eligió un archivo de video, el cual contiene Audio. E l algoritmo con esta técnica podrá
manejar un mínimo de dos archivos (video y audio), que requieran ser transportados a
través de un canal de transmisión guiado en el cual puede existir simultáneamente
cualquier otra clase de información.
Objetivos Particulares:
•
•
•
•
•
•
•
•
•
•
•
Investigar y conocer los diferentes métodos de la esteganografía actuales.
Reconocer los archivos utilizados en esta investigación para su correcta
manipulación.
Elegir la Transformada del Dominio Frecuencial elegida para la aplicación del
algoritmo esteganográfico.
Reconocer las características que debe de presentar la Transformada Wavelet
Discreta (TWD).
Recabar información para la manipulación del Ancho de Banda de un medio de
transmisión.
Investigar los distintos tipos de efecto que puede ocasionar el ruido en los
canales de transmisión guiados en especial en el cable coaxial.
Establecer el medio de transmisión es indicado para el algoritmo.
Con la información recabada, empezar a desarrollar el algoritmo a seguir para
lograr el objetivo general.
Plantear el algoritmo de manera gráfica.
Realizar las pruebas y obtener los resultados, aplicando diversos ataques que se
presentan frecuentemente a través de un canal no ideal.
Verific ar hasta que varianza de ruido puede soportar el algoritmo sin
distorsionar la información oculta.
11
Justificación.
El Ancho de Banda es uno de los recursos más caros y sobre explotados en la
transfere ncia de información de un punto a otro, en algunos lugares del mundo dicho
Ancho de Banda se encuentra muy limitado por cuestiones del propio medio de
transmisión o de las normas oficiales establecidas en cada país; en México dicho Ancho
de Banda se encuentra limitado a 450 Mhz. Esta limitación de Ancho de Banda
repercute en que las transmisiones de datos estén limitadas para aplicaciones en tiempo
real, ocasiona tráfico en horas pico, limitada transferencia de datos a través del medio,
la información en oc asiones llega incompleta . En algunos países se han implementado
redes híbridas de Cable Coaxial y Fibra Óptica como en España, pero en lugares como
Estados Unidos y México aún no han entrado de lleno a cambiar las redes, por
consiguiente debemos de trabajar con el Ancho de Banda que este disponible . Aunado
ha esto se encuentra la seguridad en la transferencia de información.
La seguridad informática , al momento de realizar alguna transferencia de
información, es uno de los temas que han tomado mayor importancia. Por esta razón se
han ido creando diferentes técnicas o mecanismos protectores de información como las
marcas de agua, la criptografía, y como en el caso de esta investigación: la
esteganografía.
Existen diferentes métodos para la aplicación de la esteganografía como son: en
el Dominio Espacial y el Dominio Frecuencial; perteneciendo al primero el método
LSB (Least Significant Bit) el cual a dado resultados con menor capacidad de
ocultamiento.
Siendo entonces el Dominio Frecuencial un método con mayor campo de
investigación ya que existen herramientas matemáticas nuevas que pueden arrojar
mayor y mejores resultados que los ya existentes.
Una de estas herramientas matemáticas es la Transformada Wavelet Discreta, la
cual ya ha sido utilizada para el procesamiento digital, como es: la compresión de
imágenes, la eliminación del ruido y el reconocimiento de patrones.
Al realizar esta investigación podemos definir si la esteganografia por el método
frecuencial aplicado a un archivo de video es viable, ya que siendo esto positivo se
puede trabajar en un mayor campo de aplicación para el procesamiento digital.
Y a su vez podemos dar solución a la protección intelectual para cualquier clase
de archivos digitales que sea necesario transferirlos por un canal no seguro.
El resultado al que se desea llegar es novedoso e innovador ya que tendrá como
beneficio la disminución de costos de transmisión y la reducción de seguridad extra por
aquellos que se dediquen a la transmisión de datos a través de cualquier medio.
12
Es de interés demostrar que con ciertas consideraciones podemos hacer un mejor
uso de los medios de transmisión, así como efectuar un mejor manejo de los archivos
digitales de audio y video, explotando al máximo características propias de los archivos
que son redundantes al espectador. También se debe resaltar que el método que se
propondrá brindará seguridad y robustez a los ataques más comunes que puede llegar a
ocurrir en el transcurso del procesamiento.
13
Resumen.
En esta investigación se presenta un algoritmo esteganográfico para aplicarlo a
un archivo de video y ocupar el mismo Ancho de Banda en un medio de transmisión.
Se presenta un análisis de ventajas y desventajas del dominio espacial y del
dominio Frecuencial, para dar un panorama más amplio del dominio que se elegirá.
Se muestran los diferentes tipos de medios de transmisión y la elección del cable
coaxial como medio de transporte de información.
Se hace un análisis de los archivos de imagen y de los tipos de archivos de
imagen más comunes hoy en día . También se presenta la cabecera contenida en dicho
archivo y su importancia.
Se presentan las ventajas y desventajas de los archivos de audio a l momento de
manejarlos, se explica por que se elige un tipo de archivo de audio en particular para la
realización del algoritmo esteganografico para la investigación.
Se expone los beneficios que brinda ocupar la Transformada Wavelet Discreta
(TWD) para archivos de imagen, audio y video. Dentro de la TWD existen diferentes
tipos, se explican los motivos de la elección de las wavelets así como su
descomposición matemática.
Se explica mediante un diagrama de flujo los pasos a seguir para el algoritmo,
posteriormente se expone n detalladamente cada uno de los pasos a seguir para el
desarrollo del algoritmo.
Se tratan algunos de los ataques más frecuentes en las transmisiones de datos y
la manera en que afectan a los archivos.
Finalmente se hacen las prueba s del algoritmo para presentar los resultados obtenidos.
14
Abstract.
This research presents an steganographic algorit hm to apply it to a video file in
order to occupy the same Bandwidth in a transmission channel.
Present an analysis of advantages and disadvantages of spatial domain and
frequency domain, to give us a more comprehensive picture of the domain to be elected.
P resent different types of transmission channels and the choice of coaxial cable as a
means of transporting information. An analysis is made of the image files and types
more common today. It also presents the header contained in the file and its importance.
There are advantages and disadvantages of audio files at the time of driving,
explained that choosing a type of audio file in particular for the performance of the
algorithm esteganografico for research.
It outlines the benefits occupy the Discrete Wavelet Transform (TWD) for image
files, audio and video.
Within the TWD there are different kinds, showing the reasons for the choice of
TWD elected as its mathematical decomposition.
It explains through a flowchart the steps to the algorithm, then sets out in detail
each of the steps for the development of the algorithm.
There is talk of more frequent attacks on transmission of data and how they affect the
archives. It is testing algorithm and finally present the results.
15
INTRODUCCION.
El uso continuo de los medios de comunicación y el gran avance tecnológico ha n
provocado que la esteganografía sea una técnica eficaz para brindar seguridad a través
de un canal no seguro, así como para permitir un óptimo empleo de dicho canal, todo
esto debido a una conveniente manipulación de los archivos que se deseen transmitir.
Las características de los archivos como: imágenes, audio, video o texto han
permitido que sean más que simples archivos, ya que realizando un procesamiento
adecuado se puede ocupar el mismo espacio que se tenga designado para su uso, aun
añadiéndole a éste información extra, en donde se podrá estar realizando una
transferencia de información continua transparente para el usuario el cual no esté
autorizado para extraer la información extra que porte el archivo base.
Se plantea una secuencia de pasos (algoritmo) a seguir para aplicar la
esteganografía sobre cualquier archivo de audio y de video. Este algoritmo se
desglosará en el transcurso de cada capítulo de esta investigación; a continuación se
expone un breve resume n de cada uno:
El capítulo I presenta de manera breve los antecedentes históricos de la
esteganografía, y también trata los distintos métodos para realizar la esteganografía
moderna, los cuales están en el Dominio Espacia l y el Frecuencial. Se indican las
caracterís ticas que debe tener el archivo manipulado para no correr el riesgo de algún
filtraje de información.
El capítulo II presenta la explicación de la estructura de un archivo de audio y un
archivo de video, los cuales se identifican por una cabecera que posee al inicio de cada
archivo y que solo el co-dec adecuado podrá interpretarlo correctamente y así visualizar
o escuchar su contenido. Podremos observar que un archivo de video se compone por
una secuencia de imágenes consecutivas, las cuales pueden interpretarse como matrices
numéricas, en donde cada celda de la matriz se interpreta como un color en su
componente de RGB (Red, Green , Blue). Se hace referencia a la definición de un
archivo AVI, el cual es uno de los archivos de audio y video con más aplicaciones por
parte del sistema operativo Windows. Este archivo tiene como característica
fundamental el integrar de manera no ordenada los flujos de audio y de video, así que es
necesario conocer de manera exacta el significado de cada una de sus cabeceras, las
cuales contienen una estructura que hace referencia a diversos campos con información
referente a la grabación del archivo.
El capítulo III se enfoca al estudio de la Transformada Wavelet Discreta (TWD),
primero para archivos compuestos por arreglos unidimensionales como son los archivos
de audio, así como para archivos con matrices que hacen referencia a las imágenes. Se
explica el procedimiento de la Transformada, después de eso se expone cómo se efectúa
su perfecta recuperación presentando así wavelets biortogonales.
16
En el capítulo IV se muestra el desarrollo del algoritmo pa ra cada uno de los
archivos, así como algunas definiciones de matemática estadística para obtener ciertos
valores de suma importancia para lograr nuestro objetivo.
Se presenta también la descomposición de los archivos con las wavelets
elegidas, así como el mecanismo de ocultamiento en el video. Para corroborar que dicho
procedimiento es correcto proseguimos a obtener el Error Cuadrático Medio, la
Relación Pico Señal a Ruido, y por último, la correlación entre las imágenes originales
y las obtenidas después de todo el procesamiento.
El capítulo V presenta los divers os ataques a los que puede ser expuesto
cualquier tipo de archivo el cual se desea ser transmitido a través de un medio.
Finalmente , el capítulo VI muestra las pruebas e implementación del algoritmo en los
archiv os de audio y de video, y también se visualizan los resultados obtenidos con dicha
técnica.
17
CAPITULO I
ESTEGANOGRAFIA.
Introducción
“Un efecto esencial de la elegancia es ocultar sus medios”.
Honoré de Balzac.
Si se habla de manera rigurosa lo que es la esteganografía, observamos que
desde tiempos que se remontan a los griegos hasta nuestros días, se emplea esta técnica
ya que el ser humano por su propia naturaleza de dominar circunstancias como guerras,
conquistas territoriales, culturales, científicas, entre otras, la informació n manejada se
trata de transferir sin que ésta llegue a manos equivocadas o erróneas.
La esteganografía es el arte de ocultar información relevante dentro de otro tipo de
información tal vez de menor grado de importancia.
Desde hace algún tiempo, la información que recibía o mandaba una persona era
transportada por diferentes tipos de canales, definidos o conocidos tal vez por su
mecanismo de uso, como por ejemplo, el correo, el telégrafo, el teléfono, sólo por citar
algunos. El avance continuo de la tecnología computacional y de las telecomunicaciones
ha rodeado poco a poco las actividades cotidianas, recibimos y manejamos mucha
información diariamente. Si por un momento nos detuviéramos a pensar en la
información que extraemos continua mente en los distintos medios, podríamos observar
que también recibimos información que no es deseada (ruido). Dicho ruido, existente
en los distintos medios de comunicación, podríamos ocuparlo ampliamente y
tendríamos un extenso medio para aplicar la esteganografía, y así hacer un mejor uso de
los restringidos en Ancho de Banda de los medios de comunicación.
En este capítulo se presenta n de manera breve los antecedentes de la
esteganografía, utilizada en el transcurso de la historia política o religiosa, así como los
diferentes métodos que se han aplicado para lograr su cometido. Se verá que
actualmente la esteganografía sigue siendo un método de protección intelectual segura y
capaz de mandar información a través de cualquier medio de transmisión. Se exponen
los dos enfoque s más recientes para su aplicación como lo son en el Dominio de la
Frecuencia y en el Dominio Espacial, y se presenta un análisis de dichos métodos
señalando sus ventajas y desventajas. Se definen los puntos de seguridad que se debe de
cuidar en un archivo esteganográfico, junto con la robustez y la capacidad de inserción
de información dentro de la imagen a procesar. Se define el concepto de Ancho de
Banda del medio de transmisión utilizado en la televisión por cable.
18
1.1.-Historia de la esteganografía.
Del griego steganoz (steganos, encubierto) y graptoz (graphos, escritura) nace el
término esteganografía: el arte de escribir de forma oculta. Aunque criptos (oculto) y
steganoz puedan parecer en un principio términos equivalentes, o al menos similares,
son cosas completamente distintas. Hay que hacer mucho énfasis en las diferencias que
existen entre estos distintos conceptos porque tal vez se puedan confundir o interpretar
incorrectamente.
La criptografía es el arte de escribir de manera enigmática (definición aceptada
por la Real Academia Española), mientras que la esteganografía es el arte de escribir de
forma oculta. Puede que sigan pareciendo similares, pero las connotaciones toman
mucho valor al analizarlo detenidamente: la criptografía tiene su fuerza en la
imposibilidad de comprender el mensaje, mientras que la esteganografía la tiene en el
desconocimiento de que el mensaje siquiera existe [1].
Si se aplica al campo de las telecomunicaciones puede presentarse de la
siguiente manera: cualquier pe rsona que tenga acceso a un mensaje puede robarse o
manipular el mensaje cifrado con relativa facilidad, pero aún sabiendo que contiene
información importante seríamos incapaces de obtener información de él (si la
criptografía ha cumplido con su cometido). Respecto a la esteganografía, podemos
interceptar un mensaje y tratar de analizarlo completamente, sin tener la certeza de que
haya o no un mensaje oculto.
Entonces, para estas dos técnicas podemos concluir que la esteganografía NO es un tipo
de criptografía: son técnicas distintas e independientes, si bien pueden complementarse
entre ellas, y de hecho lo suelen hacer.
Existen diferentes maneras de aplicar la esteganografía a cualquier mensaje que se desea
ocultar , así que en la sección 1.2, se indica algunas para dar un panorama amplio.
1.2.-Métodos clásicos.
La esteganografía da sus prime ros pasos en la antigua Grecia; existe uno interesante en
“Las historias de Herodoto”:
Demeratus quería comunicar a la ciudad de Esparta que Xerxes tenía planes para
invadir Grecia. Para evitar ser capturado por espionaje en los controles, escribió sus
mensajes en tablas que luego fueron cubiertas con cera, de forma que parecían no haber
sido usadas. Ésta es posiblemente una de las primeras manifestaciones en la histor ia de
mensajes esteganografiados.
Con el tiempo se fueron aplicando otras técnicas esteganográficas, la cual consistía en lo
siguiente: tatuar al mensajero (generalmente un esclavo) un mensaje en la cabeza
afeitada para después dejarle crecer el pelo y enviar así el mensaje oculto.
19
1.2.1.-Cifrado nulo (Null Cipher).
El método de escritura de meta-información (información dentro de un mensaje
cualquiera) en un texto es empleado desde hace siglos, y sigue en uso hoy en día, de
hecho es el tema de esta Tesis. Esto es debido a que se trata posiblemente de uno de los
métodos más sencillos de ocultar información, pero el más complicado al tratar de evitar
que se hurte dicha información. Consiste en escribir un texto aparentemente inofensivo
donde, mediante algún mecanismo conocido por el legítimo receptor de la información
(actualmente hablamos de algoritmos y claves o también conocidos como llaves),
subyace la información realmente importante.
Veamos un ejemplo de un mensaje real enviado por un espía alemán durante la
Segunda Guerra Mundial, muy interesante a mi criterio, y gracias a este mensaje que lo
vi en un programa de televisión empecé a tener mucho interés en la esteganografía :
Apparently neutral's protest is thoroughly discounted
and ignored. Isman hard hit. Blockade issue affects
pretext for embargo on by products, ejecting suets
and vegetable oils.
Si de este inocente texto extraemos la segunda letra de cada palabra, obtendremos este
otro mensaje:
Pershing sails from NY June 1
Aquí se observa un ejemplo de qué tan importante fue empezar a utilizar estas
técnicas para que la información que se deseara mandar no fuera interceptada por
alguna persona no autorizada, también observamos lo fácil que es esconder información
en textos, así como comprender la necesidad de integrar mayor cantidad de información
para generar lo que se puede considerar ruido ya que al final esta información extra no
tiene mayor importancia, y nos sirve para ocultar la auténtica información tal que no
llame la atención.
1.2.2.-Técnicas actuales.
Actualmente la esteganografía está irremisiblemente ligada a los sistemas
informáticos así como a las telecomunicaciones, que le han proporcionado el medio
necesario para ser efectiva, y del que durante siglos no pudo disponer. Así mismo, está
íntimamente ligada a la criptología.
Hoy en día se usan multitud de técnicas esteganográficas, todas se basan en los
mismos principios de ocultamiento de información, este punto, al ser el eje central de
esta Tesis, se tratara más adelante.
20
1.2.3.-Publicaciones.
Se muestra a continuación algunos ejemplos de la esteganografía desde tiempos
pasados a la actualidad.
1.2.3.1.-Hypnerotomachia poliphili (1499).
Hypnerotomachia poliphili, figura 1.1, es un libro publicado en 1499 por Aldus
Manutius, el cual versa sobre conocimiento general, tratando temas como arquitectura,
ingeniería, paisajes, creación de jardines, pintura, escultura, pues de todo menos
esteganografía, criptografía o códigos de forma alguna. El más famoso, y el
considerado com o primer texto esteganografiado de forma escrita se obtiene tomando la
primera letra de cada uno de sus capítulos, obteniéndose:
Poliam frater Franciscus Columna peramavit
Que significa “El Padre Francesco Colonna ama apasionadamente a Polia”.
Figura 1.1.- Parte del libro anteriormente mencionado en la parte superior izquierda se puede
ver la letra P.
Francesco Colonna aún vivía cuando el libro fue publicado.
21
1.2.3.2.-Steganographia (1499) - Tritheim
Johannes Heidenberg.
Benedictino y ocultista alemán. Fue uno de los cabalistas cristianos más ilustres
de su tiempo. Compuso un sistema de criptografía al que llamó esteganografía. Entre
sus obras, cabe destacar Steganographia (1509) figura 1.2 , y Poligraphia (1518).
Se trata de la publicación más notoria de Tritheim. En Steganographia se incluye un
sistema de esteganografía bastante avanzado, pero la temática general del libro (magia y
métodos de aprendizaje acelerados) hizo que nunca se tomara demasiado en serio el
texto. No obstante, en este libro se trataba un método de envío de mensajes sin
caracteres ni mensajero.
Figura 1.2.- Portada del Libro Steganographia.
1.2.3.3.-Schola Steganographica (1665) - Gasparis
Schott.
Gaspar Schott (5 febrero 1608 - 22 mayo 1666) era científico alemán,
especializándose en los campos de la física, de las matemáticas y de la filosofía natural.
Él nació en Königshofen y murió en Augsburg (o Würzburg, las fuentes varían).
Este libro, figura 1.3, es uno de los más importantes en la historia de la
criptografía y la esteganografía. En él se discuten los conocimientos de la época
respecto a la escritura oculta o cifrada, algunos de ellos tratados anteriormente, pero que
en este libro toman un profundo giro en el enfoque de estudio: Schott se aleja de lo
esotérico y lo mágico para enfocar la esteganografía y la criptografía desde el punto de
vista de la técnica y la ciencia .
22
En el Whipple Science Museum de Cambridge se conserva una copia completa e
intacta (la de la fotografía) que fue publicada junto a otra obra del mismo autor.
Figura 1.3.- Portada del Schola Steganographica.
1.2.3.4.-La cryptographie militaire (1883) Auguste Kerckhoffs.
La cryptographie militaire es un estudio del uso de técnicas criptográficas,
esteganográficas y en general de ocultación de información en el ejército francés del
siglo XIX.
Cualquier estudioso de la criptografía ha oído al menos hablar de los Principios
de Kerckhoffs, los cuales fueron enunciados en Enero de 1883 durante la redacción de
este libro.
Kerckhoffs (s. XIX), en su trabajo titulado "La criptografía militar", recomendó que los
sistemas criptográficos cumpliesen las siguientes reglas, que efectivamente han sido
adoptadas por gran parte de la com unidad criptográfica:
§
§
§
§
No debe existir ninguna forma de recuperar mediante el criptograma el texto
inicial o la clave. Esta regla se considera cumplida siempre que la complejidad
del proceso de recuperación del texto original sea suficiente para mantener la
seguridad del sistema.
Todo sistema criptográfico debe estar compuesto por dos tipos distintos de
información.
• Pública: como es la familia de algoritmos que lo definen.
• Privada: como es la clave que se usa en cada cifrado particular. En los
sistemas de clave pública, parte de la clave es también información
pública.
La forma de escoger la clave debe ser fácil de recordar y modificar.
Debe ser factible la comunicación del criptograma por los medios de transmisión
habituales.
23
§
La complejidad del proces o de recuperación del texto original debe
corresponderse con el beneficio obtenido.
1.3.- Ocultamiento de información.
En muchas aplicaciones prácticas de la esteganografía, es frecuente ocultar
información en archivos de imágenes con el fin de que no sea interceptada por alguien ajeno
a tenerla, en dichas aplicaciones, generalmente se aprovecha los bits menos significativos
de los colores que integran a la imagen para en ellos poder agregar la información. Sin
embargo esta técnica tiene muchas desventaja s en cuanto a capacidad se refiere.
Es por eso que se han implementado otras técnicas capaces de ocultar información en
cualquier zona de la imagen, si analizamos correctamente dicha imagen se puede observar
si existen abundantes bordes y/o relieves, los cuales son excelentes lugares para agregar
información ya que generalmente son representados como ruido por el ojo humano.
Así también cuando se usan archivos de sonido, la información oculta aparece como ruido
de fondo, pudiendo confundirse fácilmente como una simple grabación con algo de ruido.
1.3.1.- Técnicas de ocultamiento en la
esteganografía.
Existen varios métodos para ocultar información en archivos digitales los cuales pueden
ser clasificados en [2]:
•
•
Métodos en el Dominio Espacial.
Métodos en el Dominio de la Frecuencia.
1.3.1.1.-Métodos en el dominio espacial.
En el punto 1.2 solo se mostraron ejemplos de la esteganografía en el dominio
espacial ya que en las técnicas anteriormente mencionadas solo toman una letra de cada
palabra que conforma un párrafo y lo modifican, ahora bien, si se realiza un traslado a
este siglo y se analiza nuestro el entorno se observará que casi en su totalidad todo está
basado en medios electrónicos, computadoras principalmente que facilitan algunos
cálculos o realizan alguna actividad en donde se sustituye la mano del hombre. Es por
eso que se ha creado un estándar asociado a cualquier carácter (ASCII es el utilizado
con mayor frecuencia) que puede descodificar la computadora.
En este dominio se tiene la técnica LSB (Least Significant Bit) la cual se
considera más simple y sencilla de manejar, en donde se toma de cada píxel el bit
menos significativo para poder ser modificado[3].
En las siguientes figuras se puede observar una imagen que es utilizada como
Base (en la cual se va a insertar información), figura 1.4, y en su lado opuesto el texto
que se desea esconder. La figura 1.5 se presenta con la información insertada.
24
“ HOLA MUNDO ”
en código ASCCII es
interpretado como:
‘H’=107 en binario
es:
1101011.
Mensaje Original.
Figura 1.4.- Amplificación de
imagen indexada con 256
tonos de gris.
Figura 1.5.- Imagen indexada en
256 tonos de gris con el mensaje
oculto.
Si bien es un método bastante cómodo de utilizar, no es práctico ya que está limitado en
su capacidad de almacenamiento. Por eso es necesario analizar otra clase de métodos.
1.3.1.2.-Métodos en el dominio frecuencial.
Es quizás uno de los métodos más robustos para ocultar información, en los
cuales se utilizan Transformaciones como la Transformada Discreta de Fourier (TDF),
la Transformada del Coseno Discreto (TCD) [6], o la Transformada Wavelet D iscreta
(TWD) [7], [8] como medio para ocultar la información en zonas significativas de la
imagen. Dichas técnicas emplean la compresión de imágenes o cualquier otra clase de
archivos digitales para así aplicar el método de la esteganografía [4], se pueden
manipular las propiedades de la imagen como es la luminosidad, bordes y/o relieves
entre otras propiedades características de dic ha imagen, figura 1.6. Normalmente se
crean condiciones indicando los lugares idóneos para el ocultamiento de información.
En la actualidad es uno de los dominios , con más frecuencia utilizados para la
aplicación de la esteganografía en archivos de imagen, audio y video. En recientes
estudios se han presentado los resultados obtenidos [5],[6],[7] por investigadores en la
Universidad de Santa Bárbara California , así como el Instituto Tecnológico de
Massachusets; presentando en su trabajo como herramienta pr incipal la TCD y la
TWD[5],[6],[7].
Uno de los trabajos que se toman como punto de partida para el análisis del
problema planteado en esta investigación es el propuesto en la Universidad de Santa
Bárbara California por el prof. Sa jint Mitra, en el cual toma como referencia el estándar
establecido por el algoritmo de Lloyd’s, el cual consis te en la sub división de un archivo
en clusters y con cada cluster se determina el punto medio o el centroide del cluster y
heurísticamente empiezan ha realizar una nueva partición del cluster original, una de las
desventajas del método es que en ocasiones arroja un nuevo cluster erróneo, el por que
de su elección se debe a su rápida convergencia. Este algoritmo es aplicado con
frecuencia en aplicaciones como la compresión de los archivos de audio, como en el
MPEG-1 y el MPEG-2, aplicando a este algoritmo la TCD se obtienen sub-vectores
que contendrá n la información de la descomposición en frecuencias con la TWD. La
sub matriz arrojada por la TWD que se elige para esta aplicación es la descomposición
obtenida en altas frecuencias, en dicha matriz sus coeficientes son aproximadamente
25
ceros [5], la Relación Señal a Ruido Pico(PSNR) que arroja como resultados esta
comprendida entre los valores de 27 dB y 28 dB.
La propuesta para este trabajo es tomar cualquier descomposición en frecuencias
generada de la imagen extraída del video, y así poder ir ocultando la información en el
video.
Otro trabajo para el ocultamiento de video en video es el propuesto por J.J.
Chae y B.S. Manjunath [6]. La propuesta consiste en realizar la descomposición de la
imagen con la Transformada del Coseno Discreto(TCD) la cual arrojara bloques de 8x8
de la matriz original, posteriormente proponen una matriz que la nombran máscara la
cual se utilizara como una especie de filtro, así finalmente podrán obtener una sub
imagen final con mayor o menor texturización de la misma.
A partir de este punto podrán ocultar la información que se desea. Las pruebas
que se realizaron en este trabajo fue solo la inserc ión de las sub imágenes que
componen un video, generalmente con una menor resolución que la imagen base. La
PSNR obtenida como resultado oscila alrededor de los 27 a los 35 dB.
Finalmente en otro trabajo de video en video se propone un trabajo similar al
anterior mencionado [7], a diferencia de aplicarle la TCD, aplica la TWD el mecanismo
es el mismo para ocultar información, otra diferencia importante es que el video a
ocultar tiene una menor resolución que el video en donde se pretende insertar la
información. En este trabajo se llega a obtener un PSNR de un valor de los 23 dB a los
35 dB. Existen dos puntos importantes que no muestran resultados concretos:
1)
2)
Dejan sin atacar la inserción del audio original del video a ocultar.
No se realizan pruebas de ataques con diferentes tipos de ruido.
Es un objetivo en este trabajo insertar el video con diferentes resoluciones de
imagen, así como integrar a este el audio que compone el video. Ya que en los trabajos
anteriores no se menciona la inserción del audio en ninguna de los bloques de la
descomposición de la TCD.
También se pretende llegar a conservar una PSNR parecida o mayor a los
trabajos anteriormente consultados, así como portar el audio en cualquier sub imagen
obtenida de la descomposición en frecuencias , por cualquier transformación que se elija
para la realización del trabajo.
Es necesario conocer los diferentes tipos de Transformaciones que existen en el
Dominio Frecuencial para así lograr el objetivo fijado.
En la siguiente sección se explican las diferentes transformaciones existentes en
el dominio frecuencial.
26
Transformada Discreta de Fourier.
La transformada discreta de Fourier (TDF) es quizás una de las transformadas
más conocidas y con mayor aplicación en procesamiento de señales y en campos afines
con el fin de analizar sus componentes de frecuencia.
n−1
f j = ∑ x[k ]e
−2πi
jk
n
(1.1)
k =0
En donde k es el índice de la posición actual dentro del vector x.
n es el número total de elementos que conforman al vector x.
La transformada de Fourier tiene como función madre generadora una
exponencial, la cual por Euler se puede descomponer en senos y cosenos por
consiguiente contiene a dos funciones madres generadoras. Dichas funciones
generadores, devuelven una señal aproximada a la original y podemos observarla
solamente en el dominio de la frecuenc ia, dejando a un lado el dominio del tiempo.
Al aplicar la TDF, nos arrojara valores complejos, justamente por el uso del seno
en su descomposición. Esto se considera una desventaja al utilizarla en el procesamiento
de señales, ya que puede complicar el uso de cualquier señal.
Transformada del Coseno Discreto.
La Transformada del Coseno Discreto(TCD), es una variante de la TDF, a
diferencia de esta solamente posee una función madre generadora la cual es el coseno.
Dicha transformada no trabaja con números imaginarios, sin embargo aún al utilizar
solo números reales su tiempo de convergencia es mucho menor comparada con TWD.
n− 1
π 
f [ j ] = ∑ x[k ]cos j  k +
k =0
n 
1 

2  
(1.2)
En donde k es el índice de la posición actual dentro del vector x.
n es el número total de elementos que conforman al vector x.
Transformada Wavelet Discreta.
La Transformada Wavelet Discreta es una de las técnicas que más utilidades
presentan al momento de realizar el procesamiento de señales, se puede considerar
archivos de audio y de video.
Dicha transformada posee una función madre generada la cual se puede asignar
sin ningún problema, esta función madre no presentara problema al tratar de converger
la señal original, ya que una de sus ventajas es el tiempo de convergencia el cual es
mucho menor que cualquiera de las otras dos transformaciones.
27
(
)
ϕ j , k (x) = a j / 2ϕ a j x − kb
(1.3)
La ec. 1.3 se explica a detalle en el capítulo IV.
Una imagen se puede representar como una matriz x [n, m] , entonces, se
considera como una señal discreta en el tiempo. Dicha matriz está conformada de
píxeles los cuales contienen información que la describe físicamente, por ejemplo,
luminosidad, color, entre otras propiedades. Esta información contenida en la image n
(píxel), en su conjunto está conformada por bits y en su totalidad forman un byte de
información(es decir, cada píxel es un byte de información que hace referencia a las
características de la imagen).
Así que si se elige ocultar información en un píxel, entonces no esta sujeta la
inserción a una determinada cantidad de bits como en el caso del Dominio Espacial, ya
que éste solo marca la inserción de un bit de información del archivo a ocultar dentro
del bit menos significativo de la imagen que sirve como base para la inserción.
El Dominio Espacial, solo modifica un bit de la matriz de la imagen x [n, m]. Se
propone utilizar un método capaz de no estar sujeto al cambio de los bits menos
significativos, sino a zonas completas de una imagen, así que se elige el Dominio de la
Frecuencia ya que ésta nos devuelve valores de los cambios de resolución o relieves de
la imagen; también se considera óptimo por su robustez y además por la cantidad de
información que se puede adicionar u ocultar , la Técnica del Dominio en la Frecuencia
realiza un análisis global de las características predominantes de una imagen (hay que
remarcar que no solo en imágenes se puede emplear dicha técnica, si no aumenta la
posibilidad de ocultar información en los archivos dig itales ).
Con el manejo del Dominio en la Frecuencia se tiene mayor cantidad de
inserción de información, ya que no se está limitado a la capacidad de almacenamiento,
el Dominio de la Frecuencia es flexible al momento de ocultar información ya que es
capaz de realizar el ocultamiento con solo modificar el bit menos significativo de cada
píxel que conforma una imagen. [8]
28
Figura 1.6.- Aplicación del Método Frecuencial, y la visualización de los relieves de dicha
imagen.
1.4.- Seguridad en la esteganografía.
La esteganografía deja de cumplir su objetivo cuando se detecta la presencia de
información ajena al archivo en cuestión, o en su defecto, cuando llega a manos
incorrectas. Por definición, los cambios que realiza la esteganografía sobre las imágenes
son impe rceptibles para el ojo humano, por eso la mayoría de los programas que ocultan
información lo que hacen es introducir una ligera variación del color respecto al original
[3]. Las imágenes poseen ciertas paletas de colores en las cuales aparece n todos los
colores que se están usando. Los programas de detección lo que hacen es crear una lista
con los colores que menos se emplean. Si estos colores son muy numerosos es posible
que esa imagen se trate de una estego imagen, y por tanto tenga oculta información.
Mencionado lo anterior se presenta una ventaja más para el objetivo de este trabajo: El
método propuesto no genera un patrón de los colores que con menor o mayor frec uencia
se utilicen. Es necesario tomar en cuenta ciertos factores para lograr una esteganografía
exitosa.
Robustez:
Se considera que un algoritmo esteganográfico, es robusto cuando
perdura a varios ataques como ruido, compresión, o robo a través de un canal no ideal,
lo cual puede adicionar información no deseada o la pérdida total de tal archivo.
Seguridad:
Se asume que la información oculta está segura si no es fácil de
detectar un patrón a seguir para recuperar la información adicionada.
29
Capacidad: La capacidad de ocultamiento de un algoritmo esteganográfico es
uno de los factores más importantes a seguir, ya que un algoritmo bien planteado puede
albergar suficiente información.
1.5.- Bases de la esteganografía.
El desarrollo continuo de las telecomunicaciones y el crecimiento de la
informática han aportado el marco perfecto para que la esteganografía alcance una gran
importancia en la transmisión de datos de manera segura [3]. Los avances en
computación nos proporcionan medios para calcular rápidamente los cambios
necesarios en el ocultamiento de la información, dentro de un mensaje a simple vista
inocente, ya que puede transportar grandes cantidades de información a cualquier punto
que lo este solicitando.
¿Cómo se logra que el archivo resultante no
muestre haber sido modificado?
Prácticamente cualquier archivo es bueno para ocultar datos en su interior, pero
existen algunos (imágenes y sonido principalmente) que resultan ideales para este
cometido, por motivos que más adelante comentaremos. Sea cual sea el tipo de
informac ión que quiera ocultar, se deben respetar los puntos importantes para lograrlo,
independientemente del medio en el que deseamos hacerlo :
- Toda información existente en un píxel se puede sustituir si la información a insertar
cumple con ciertos criterios, por ejemplo, si tiene un valor igual o menor al original. Ya
que si se aleja este valor del original, dicho cambio puede ser reconocido por cualquier
distorsión que presente la imagen. Esto se logra si se maneja la imagen en el Dominio
de la Frecuencia, porque cada color de una imagen tiene una frecuencia que se
manifiesta en la señal.
- Las cabeceras de los archivos no deben ser modificadas.
Aunque la esteganografía computacional clásica consiste en la modificación binaria del
archivo que sirve de canal, existen técnicas para casos particulares de archivos que
también son válidas en el Dominio de la Frecuencia. Un ejemplo de estas técnicas es la
adición de mensajes ocultos a los archiv os de sonido mediante superposición de capas
de sonidos que no resultan audibles para el oído humano, pero que sí contienen
información. También existe documentación de técnicas basadas en ocultamiento de
mensajes en archivos de imagen creados con programas de tratamiento gráfico con la
Transformada Wavelet Discreta [8] mediante el uso de capas transparentes donde se
aloja la información.
30
1.6.- Medios de Transmisión.
El medio de transmisión constituye el soporte físico a través del cual emisor y
receptor pueden comunicarse en un sistema de transmisión de datos. Distinguimos dos
tipos de medios: guiados y no guiados figura 1.7. En ambos casos la transmisión se
realiza por medio de ondas electromagnéticas.
La naturaleza del medio junto con la de la señal que se transmite a través de él
constituye, los factores determinantes de las características y la calidad de la
transmisión.
Figura 1.7.- Medios de Transmisión.
Medios Guiados.
Los medios guiados conducen (guían) las ondas a través de un camino físico,
ejemplos de estos medios son el cable coaxial, la fibra óptica y el par trenzado.
En el caso de medios guiados es el propio medio el que determina las principales
limitantes de la transmisión como: tasa de transmisión de datos, ancho de banda que
puede soportar y espaciado entre repetidores. [9],[10]
31
Medios No Guiados.
Los medios no guiados proporcionan un soporte para que las ondas se
transmitan, pero no las dirigen; como el aire y el vacío. Un ejemplo son: Radio
Frecuencias, Micro Ondas, Infrarrojos y Ondas de Radio.
Ancho De Banda.
El ancho de banda es la cantidad de información o de datos que se puede enviar
a través de una conexión en un período de tiempo dado. El ancho de banda se indica
generalmente en Bits por segundo (Bps), Kilobits por segundo (Kbps), o Megabit s por
segundo (Mps) figura 1.8.
Medio de
Transmisión.
Par Trenzado.
Cable Coaxial.
Fibra óptica.
Tasa de datos.
Ancho de Banda.
4 Mbps.
500 Mbps.
2 Gbps.
3 Mhz.
450 Mhz.
2 Ghz.
Separación entre
repetidores.
2 a 10 km
1 a 10 km
10 a 100 km.
Figura 1.8.- Ancho de Banda para medios Guiados.
CABLE COAXIAL.
El cable coaxial es un medio conductor, con un ancho de banda superior al de las
líneas telefónicas. La cuestión está en poder aprovechar al máximo el ancho de banda
que se tenga para suministrar un acceso de alta calidad. La transmisión por cable puede
incluir televisión por cable , Internet y telefonía básica en un solo medio.
El cable coaxial es más eficiente que el par trenzado, aunque más caro, pues su
arquitectura incorpora medios de protección de interferencias externas,
independientemente del sistema en que está siendo utilizado; o sea, el blindaje del cable
coaxial es más eficiente que el blindaje del cable metálico común. En líneas generales,
un cable coaxial posee un conductor interno circundado por un conductor externo,
siendo estos separados por un dieléctrico.
Los cables coaxiales generalmente son empleados en sistemas de transmisión de
datos, transmisión de voz e imágenes. La utilización de los cables coaxiales es muy
difundida para los datos, pues sus características eléctricas son muy favorables para la
transmisión de señales de alta frecuencia, una vez que posee inmunidad a las
interferencias externas
El cable coaxial produce una buena combinación de un gran ancho de banda con
una alta inmunidad al ruido. El ancho de banda que puede alcanzarse depende de la
longitud del cable y del tipo, pudiendo ser de hasta 450 MHz. Así, un cable de 100m
hasta 1 km de longitud permite obtener velocidades de hasta 10 Mbps en banda base y
hasta 150 Mbps en transmisiones en banda ancha sobre cables de calibre 75. [9]
32
Cable coaxial de banda ancha.
Este cable se utiliza comúnmente para el envío de la señal de televisión por
cable. El término banda ancha proviene del medio telefónico, y se refiere a frecuencias
mayores a 4 kHz.
Utilizan la tecnología patrón para envío de señales de te levisión por cable y por
ello pueden llegarse a alcanzar hasta 450 MHz de ancho de banda para longitudes de
hasta 100 m. Un cable típico de 300 MHz puede, por lo general, mantener velocidades
de hasta 150 Mbps.
Es habitual que los sistemas de banda ancha se dividan en varios canales, por
ejemplo en canales de 6 MHz para el envío de señal de televisión. Cada canal puede
emplearse de forma independiente, por lo que en un mismo cable pueden coexistir
señales de vídeo, voz y datos.
Una diferencia clave entre los sistemas de banda base y los de banda ancha es
que los últimos necesitan amplificadores que repitan la señal en forma periódica. Estos
amplificadores sólo pueden transmitir señales en una dirección de manera que una
computadora de salida a un bloque de información sólo puede alcanzar a otras
computadoras. Hay dos formas de solucionar este problema: uso de cable dual y uso de
canales distintos.
En los sistemas de cable dual, se tienden dos cables idénticos paralelos. Para
transmitir información la computadora emplea uno de ellos, que envía el mensaje hacia
el repetidor central (en la cabeza de la red). Una vez que el mensaje alcanza dicho
repetidor se reenvía por el otro cable para que todas las computadoras puedan leerlo.
El otro sistema consiste en aplicar diferentes frecuencias para las señales que
entran y salen sobre un cable sencillo. La banda de baja frecuencia se emplea.
Para enviar información hacia el repetidor central para que éste la reenvíe hacia
las computadoras por la banda de mayor frecuencia. En el sistema de asignación baja el
tráfico de llegada al repetidor usa una frecuencia de entre 5 y 30 MHz, mientras que el
de salida usa una banda entre 40 y 300 MHz. En el sistema de asignación media , el
tráfico entrante va entre 5 y 116 MHz, mientras que el de salida va entre 168 y 300
MHz. La adopción de estas técnicas se debe en parte a la fiabilidad y bajo coste del
hardware empleado.
Un sistema de banda ancha puede usarse de diferentes maneras. Por ejemplo, se
puede asignar un canal para su uso exclusivo por un par de computadoras o
decodificadores, mientras que los demás deben competir por el uso de un canal temporal
mientras dure la comunicación.
El Ancho de Banda para televisión por cable es de 6Mhz, el cual puede pasar sin
problema a través del cable coaxial calibre 75. Cada "canal" de 6 MHz de ancho de
banda puede transmitir hasta seis programas de televisión NTSC o PAL[10].
33
1.7.- Conclusiones .
Al analizar los distintos tipos de Dominio existentes para la aplicación de la
esteganografía, se concluye que para la aplicación que requerimos hacer es necesario
cubrir los siguientes puntos:
1. Se debe elegir el Dominio Espacial o Frecuencial respecto a la capacidad de
ocultamiento necesario; al hablar de audio y video, se requiere por lo menos la
capacidad mínima de ocultar una imagen en otra sin problema alguno.
2. Se ocultarán bytes de información y no bits como en algunos ejemplos citados.
3. Se requiere un método capaz de ser robusto a ataques y que cumpla con el
servicio de seguridad al resguardar la información correctamente.
4. Se elige la Transformada Wavelet Discreta para realizar el presente trabajo ya
que cumple con los siguientes aspectos: Ayuda a la compresión de las señales
digitales, elimina ruido en las señales, y comparada con las otras dos
Transformadas nos reduce en mayor parte el tiempo de oscilación a la señal
original, además que trabaja con números reales.
El canal de Transmisión utilizado en Televisión por cable es: el cable coaxial de calibre
75, el cual es un cable de Banda Ancha, con un Ancho de Banda de hasta 450 Mbps.
P osee inmunidad al ruido, y es capaz de transferir a través de él audio, video y datos.
1.8. - Referencias
[1] R. J. Anderson and A. P. Petitcolas, “On the limits of steganography,” IEEE Journal
on Selected Areas in Communications, vol. 16, no. 4, pp. 474–481, May 1998.
[2] F. Johnson and S. Jajodia, “Exploring steganography: Seeing the unseen,” IEEE
Computer Mag., pp. 26–34, Feb. 1998.
[3]R. Chandramouli and Nasier Memon, “Analysis of LSB Based Image Steganography
Techniques”, Proceedings of the International Conference on Image Processing,
Thessalonica, Greece, October 2001.
[4] Neil F. Johnson and Sushil Jajodia, “Steganalysis: The Investigation of Hidden
Information”, IEEE Information Technology Conference, Syracuse, New York,
September 1-3,1998.
[5] J. J. Chae and B. S. Manjunath, “Data Hiding in Video” ,Department of Electrical
and Computer Engineering University of California, Santa Barbara.
http://citeseer.ist.psu.edu/cache/papers/cs/8811/http:zSzzSzvivaldi.ece.ucsb.eduzSzuser
szSzchaejjzSzpublicationzSz815-icip99.pdf/data -hiding-in-video.pdf ,(2000)
[6] Debargha Mukherjee, Jong Jin Chae, Sanjit K. Mitra, and B. S. Manjunath , “A
source and channel coding framework for vector based data hiding in video”,
Department of Electrical and Computer Engineering, University of California, Santa
Barbara, C ircuits and Systems for Video Technology, IEEE Transactions on
Volume 10, Issue 4, June 2000 Page(s):630 - 645
[7] David E. Lane,”Video-in-Video Data Hiding”, Department of Electrical and
Computer
Engineering
University
of
California
Santa
Barbara,
http://www.mit.edu/people/dlane/files/hiding1.6.pdf
http://citeseer.ist.psu.edu/cache/papers/cs/30774/http:zSzzSzwww.mit.eduzSzpeoplezSz
dlanez SzfileszSzhiding1.6.pdf/video-in-video-data.pdf.(2000)
34
[8] Izlian Yolanda Orea Flores, “Marcas de Agua Robustas en Imágenes Digitales con
formato BMP”, Tesis de Maestría en Ing. de Telecomunicaciones, SEPI-ESIME
Zacatenco , Instituto Politécnico Nacional, México DF, 2006.
[9] http://docente.ucol.mx/al972052/public_html/CABLE%20COAXIAL.htm 2008
[10] Walsh, Patricio Daniel,”Video a Demanda”,Instituto Tecnológico de Buenos Aires,
www.itba.edu.ar/capis/epg-tesis-y-tf/walsh-trabajo-final.PDF. 2003.
35
CAPITULO II
CONCEPTOS BÁSICOS: Estructura de
un Archivo de Audio y de un Archivo de
Imagen.
Introducción.
Para modificar un archivo digital, ya sea de imagen o de video, es necesario
conocer su estructura interna, por ejemplo, el número de bytes requeridos en su paleta
de colores, medidas (alto y ancho), tipo de compresión de los archivos, entre otras
características que lo hacen único. En este capítulo se muestra como se integra su
estructura interna de los archivos de audio y de imagen. Se muestra la descomposición
en imágenes de un video, así como se muestra la manera de descomposición de una
imagen en sus matrices RGB.
Se define que es la matriz R, G y B, y como se obtiene los valores que integran a cada
pixel de la imagen.
En este capítulo se muestra que un archivo de video es una composición de
imágenes continuas que son visualizadas dependiendo de la aplicación.
Los archivos de video avi son nativos de Windows, y así manipulables
solamente por Windows. Dicho Sistema Operativo es la plataforma en la cual se
realizan las pruebas, y en consecuencia también es manipulable en Matlab. Por ese
motivo, es necesario conocer su composición lógica y física, estipulada por su
diseñador (Windows). Tal plataforma establece ciertos parámetros para su correcta
manipulación.
2.1.-Estructura de un archivo.
Antes de empezar a modific ar archivos es importante entender al estructura
básica de un archiv o. Aunque los usuarios de sistemas Windows no lo sepan, un archivo
contiene información que se encuentra en su interior conocido como cabecera o headers.
Se menciona porque en sistemas com o Unix y compatib les (Linux), un archivo BMP es
reconocido como tal aunque su nombre sea “foto.sutano”; mientras que en los sistemas
Windows simplemente se verifica la extensión del archivo, de forma que carta.bmp se
tratará de abrir con el visor de imágenes predeterminado aún tratándose de texto.
Además de la cabecera, el archivo contiene la información respectiva a la imagen.
Debido a que cada tipo de archivo tiene una estructura distinta, se pueden dar
casos anecdóticos, como por ejemplo, que un archivo pueda ser a la vez de dos tipos sin
que éstos interfieran entre sí, un caso es el archivo gif-zip. Por las especificaciones de
cada uno de los archivos: un archivo gif define en su cabecera el tamaño del mismo, de
36
forma que cualquier byte posterior al supuesto fin de la información es ignorado, y un
archiv o zip almacena la información en tablas de forma que cualquier byte anterior al
inicio de éste es ignorado. Sí se define una cabecera gif de 5000 bytes, y en el byte 5001
y posteriores se ponen las tabla s zip, se tiene un archivo que gif y zip a la vez.
Por regla general, no se debe de modificar la cabecera del archivo. Se modificara
solamente el cuerpo del mismo para introducir datos. La forma en que se introducirá los
datos, así como el sitio donde se hará, depende del tipo de archivo y de las herramientas
matemáticas que se tenga definidas. Es necesario saber cómo se almacena la
información en el archivo para no modificarlo de forma considerable. Para saber dónde
colocar nuestros datos conviene conocer la estructura del archivo, o empezar a
modificar datos a partir de direcciones avanzadas (bytes), con lo cual se asegura un
margen prudente que evite tocar la cabecera. Aquí se tratará más adelante cada uno de
las distintas cabeceras que maneja cada archivo.
2.2.-Archivos de imagen.
Las imágenes son los archivos más comunes en donde se puede utilizar la
técnica de la estegranografía con mensajes ocultos y así poder transmitir la información
sin ser percibida. Existen varios archivos que permiten almacenar imágenes, los cuales
son:
Windows BitMaP (BMP): Es el formato gráfico más simple , y aunque teóricamente es
capaz de realizar compresión de imagen, en la práctica jamás se usa para tal fin.
Consiste simplemente en una cabecera y los valores de cada píxel de la imagen
(ocupando cada píxel 4, 8, 16, 24 ó 32 bits según la calidad del color) empezando de
abajo hacia arriba y de izquierda a derecha.
Su principal ventaja es la sencillez. Su mayor inconveniente es el inmenso tamaño que
ocupa. Para poder manipular dicha imagen primero es necesario conocer la cabecera, la
cual se muestra a continuación:
Sintaxis:
typedef struct tagBITMAPINFOHEADER {
DWORD biSize;
LONG
biWidth;
LONG
biHeight;
WORD
biPlanes;
WORD
biBitCount;
DWORD biCompression;
DWORD biSizeImage;
LONG
biXPelsPerMeter;
LONG
biYPelsPerMeter;
DWORD biClrUsed;
DWORD biClrImportant;
} BITMAPINFOHEADER;
en donde la estructura tiene una longitud total en bytes perteneciente a la cabecera de
dicho archivo. Se presenta una Tabla indicando cada campo con su longitud en bytes:
37
Tabla 2.1.- Campos utilizados en la cabecera, así como su longitud en bytes de dicha variable.
TIPO DE DATO
VARIABLE
BYTES OCUPADOS EN
LA CABECERA.
DWORD
biSize
4
LONG
biWidth
4
LONG
biHeight
4
WORD
Biplanos
2
WORD
biCount
2
DWORD
biCompression
4
DWORD
biSizeImage
4
LONG
biXPelsPerMeter
4
LONG
biYPelsPerMeter
4
DWORD
biClrUsed
4
DWORD
biClrImportant
4
Es importante conocer la cabecera ya que brinda información de suma importancia para
su correcta manipulación. Los campos que se utilizaron se presentan en la siguiente
Tabla:
Tabla 2.2.- Campos utilizados de la estructura que define una imagen en Windows.
Miembro.
Significado
biSize.
Especifica el número de bytes re queridos
para la estructura.
biCompression.
Establece el tipo de compresión para un
Mapa de Bits comprimido.
PC Paintbrush (PCX): Este tipo de archivo es una evolución del mapa de bits
tradicional. En PCX se emplea el algoritmo de compresión RLE, mediante el cual,
cuando dos o más píxeles consecutivos tienen el mismo color, el algoritmo guarda la
información del color y el número de píxele s que lo usan (para la posterior
visualización). E l criterio para almacenar el número de píxeles empleando el color es el
siguiente: si el byte es menor o igual que 192, corresponde a un único píxel, pero si es
superior a 192 el número de píxeles repetidos nos lo dan los seis bits menos
significativos del byte (ponemos a cero los dos bits más significativos) y el color lo
aporta el byte siguiente. Como ventajas tiene la sencillez del algoritmo (debido a su
complejo criterio de almacenar los bytes se descarta totalmente), y como inconveniente,
la escasa compresión que obtenemos en fotografías (que tienen mayor variedad de
píxeles), el mayor uso esta en las imá genes.
Graphics Image Format (GIF): Es uno de los mejores formatos de compresión (sobre
todo para imágenes con grandes áreas de un mismo color), además de ser la opción más
38
sencilla para animaciones vectoriales (flash y otros métodos caros y complejos). Usa el
algoritmo de compresión LZW (empleado en compresión de archivos). Su principal
punto débil es la limitación a 256 colores (8 bits) de la paleta de color, lo cual lo hace
desaconsejable para cualquier tipo de fotografía o imagen realista. Su principal ventaja
es la enorme compresión (cosa que complica la esteganografía) y la capacidad de uso de
transparencias y entrelazado, mientras que su mayor defecto es la escasa paleta de
colores.
Joint Photographic Experts Group (JPEG): Este archivo es el más popular y es uno con
mayor compresión del archivo, el cual al momento de manipularlo con Matlab no es
tardado procesarlo, junto con los archivos BMP . El algoritmo de compresión de JPEG
se basa en un defecto del ojo humano que impide la completa visualización de la paleta
de 24 bits, por lo que elimina la información que el ojo humano no es capaz de procesar
[3]. Esto da una importante reducción de tamaño, pero algo muy importante: este
algoritmo sí tiene pérdida de infor mación (la cual se puede ocupar sin ningún
problema), figura 2.1, en el proceso de compresión. Dependiendo del factor de
compresión la pérdida de imagen puede no ser perceptible al ojo humano.
Figura 2.1 .- Imagen comprimida en un archivo jpeg.
Como se hace referencia en las Tablas 2.1 y 2.2, muestran los respectivos
campos que contiene por defa ult una imagen. En la figura 2.2 se muestra cómo es
interpretado un archivo de imagen jpeg, y la línea en rojo indica la cabecera de dicho
archivo, en donde JFIF contiene el formato de compresión de una imagen jpeg. JFIF se
interpreta como un apuntador el cual almacena la estructura mostrada en la Tabla 2.1, al
momento de encontrar la cabecera; el codec(codificador -descodificador) puede tener
acceso a cada uno de los campos contenidos en la estructura que lo identifica, es decir,
si se debe de acceder al campo biCompresion primero se debe de cerciorar que exista
dicha cabecera y después se podrá tener acceso, mediante el registro de la Tabla 2.1.
ÿØÿà JFIF
ÿÛ C
$.'
",#
(7),01444'9=82<.342ÿÛ
C
2! !22222222222222222222222222222222222222222222222222ÿÀ
ð @
"
ÿÄ
Figura 2.2.- Cabecera perteneciente a un archivo jpeg.
en donde JFIF es un apuntador a la estructura de la tabla 2.2., en la figura 2.3 se muestra
su alojamiento y localidad de memoria dentro del archivo de imagen.
39
CAMPO
biSize
OFFSET(bytes)
4
biWidth
4
biHeight
4
Biplanos
2
biCount
2
biCompression
4
biSizeImage
4
biXPelsPerMeter
4
biYPelsPerMeter
4
biClrUsed
4
biClrImportant
4
biWidth
4
biHeight
4
Biplanos
4
JIFF
Hace referencia a
los
parámetros
contenidos en el
archivo
de
imagen.
Figura 2.3 .- Localidad de memoria de los campos de un archivo de imagen.
Una variante del JPEG original es el JPEG progresivo, que realiza entrelazado
de datos para visualizarlo en primer lugar con baja calidad e ir aumentando la misma en
varias vistas. La principal ventaja que tiene JPEG es su calidad a la hora de representar
fotografías (con su paleta de 16 bits y su alta compresión), su principal desventaja es la
pérdida de calidad e información con grandes tasas de compresión. JPEG es sin duda el
más usado en esteganografía, pero eso no significa que sea el más sencillo.
Tagged Image File Format (TIFF): TIFF es un formato usado en imágenes de altísima
resolución y calidad, principalmente en trabajos de imprenta o fotografía profesional. Se
trata básicamente de un mapa de bits preparado para el estándar CMYK (Luminancias y
Cromancias), y preparado para el empleo de muchos estándares y formatos de
compresión diversos, que pueden ser utilizados en la misma imagen. La ventaja de este
formato es la enorme calidad obtenida, y su principal desventaja es el tamaño que
ocupa. Debido a lo específico de este tipo de archivo, prácticamente no es aplicado para
esteganografía.
Portable Network Graphics (PNG): El formato PNG nace debido a los problemas de la
patente del algoritmo LZW (Lempel-Ziv-Welch), y con la intención de sustituir a GIF
como estándar. PNG cubre prácticame nte todas las características de GIF, con un mejor
algoritmo de compresión, sin pérdida de información y con una paleta de color muy
superior a los 256 bits de GIF (16 bits). Además, se trata del único formato comprimido
que incorpora la información del canal alpha, logrando una altísima calidad en el uso de
capas y transparencias. PNG también es uno de los primeros archivos de imagen en
40
contener información acerca del archivo en forma de metadatos de texto. A pesar de
todas sus ventajas (principalmente el tratarse de un formato libre), tiene un defecto: no
permite el uso de animaciones (al contrario que GIF).
Aunque son muchas las formas de representar una imagen en una computadora,
todas tienen un denominador común: deben representar colores mediante bytes, bien sea
cada punto, vectores o Tablas. La principal ventaja es la calidad de la imagen, por lo
que, según la profundidad de color será más o menos sencillo la realización de la
esteganografía. Con 4 y 8 bits (16 y 256 colores respectivamente) la variedad no es muy
alta, por lo que es poca la diferencia entre colores contiguos.
En profundidades de color más comunes hoy en día, como 16, 24 y 32 bits (65.535,
16.777.216 y 4.294.967.296 de colores , respectivamente) es muy diferente. Si bien con
16 bits la diferencia entre colores no es tanta, modificar un punto en una imagen de
tamaño medio (200*200 = 40.000 puntos) y con una diferencia de color de 1 entre
65.535, no se podrá distinguir este punto. Con 24 y 32 bits ya la diferencia es
muchísimo mayor. Se va a aumentar o disminuir en una unidad el valor del color de un
registro de color de la imagen.
Explicado cada uno de los tipos de manipuladores de imágenes disponibles para
el tratamiento de imágenes, se debe elegir un formato capaz de no ocupar muchos
recursos de memoria, ya que como se ha mencionado, la capacidad de almacenamiento
de un dispositivo electrónico es uno de los recursos más caros que se tienen aunados a
la adición de información. Es por eso, que se eligió el formato .jpeg porque brinda
mucha s ventajas sobre los otros tipos gracias a su mínima capacidad de
almacenamiento.
2.3.-Composición de archivos de video.
Un video es una colección de imágenes acompañada generalmente de sonido; la
información de uno y otro tipo se suele grabar en partes separadas que luego se
coordinan para su ejecución simultánea del video [2].
Para transformar la información analógica de las imágenes en digital se usan los
CODEC (acrónimo de codificador/decodificador). En muchos casos estas utilidades
analizan los fotogramas y emplean algoritmos para comprimir sus datos. La compresión
puede ser temporal, en la que se analiza un fotograma y se guarda la diferencia entre
éste y el que le precede, o espacial, en la que se eliminan los datos de los píxeles que no
cambian en cada fotograma.
Existen tres formatos de video de gran implantación: el QuickTime Movie
(MOV), el AVI y el correspondiente al estándar MPEG. El formato QuickTime Movie
(MOV), creado por Apple, es multiplataforma y en sus versiones más recientes permite
interactuar con películas en 3D y realidad virtual. El AVI (Audio Video Interleaved,
audio video intercalado) es un formato propio de Windows, que sólo se puede ejecutar
bajo esta plataforma. El formato correspondiente al estándar MPEG (Moving Pictures
Experts Group) produce una compresión de los datos con una pequeña pérdida de la
calidad; desde su creación, se ha definido el MPEG-1, utilizado en CD-ROM y Vídeo
CD, el MPEG-2, usado en los DVD-ROM, en televisión digital, y el MPEG-4, que se
41
emplea para transmitir video e imágenes en ancho de banda reducido; es un formato
adecuado para distribuir multimedia en la Web.
2.4.- Descomposición de un archivo de video en
imágenes.
Para aplicar la esteganografía, se debe de separa el video en imágenes
subsecuentes, figura 2.4 [1].
Figura 2.4.- Descomposición de un archivo de video en sub imágenes.
Obtenida cada imagen del archivo de video, se obtiene una matriz x [n,m] que
caracteriza a la imagen, figura 2.5.
42
Figura 2.5 . Composición de una imagen en sus matrices.
Existen diferentes tipos de imágenes que se pueden procesar o manipular en un video,
generalmente el video esta integrado por el mismo tipo de imagen obtenida en la
descomposición entre ellas se pueden identificar los siguientes tipos:
Tabla 2.3.- Tipos de Imágenes.
TIPO
Imagen Binaria.
Imagen Indexada.
Imagen de Intensidad.
Imagen RGB.
DEFINICIÓN
Contiene solamente píxeles en blanco y
negros. Representada por una matriz de
enteros o matriz lógica conteniendo
0’s(negro) y 1’s (blanco).
Los valores de los píxele s son índices
directos a un mapa de colores RGB.
Representada por una matriz de enteros o
reales. El mapa es siempre una matriz de
Mx3 de números reales.
Los valores de los píxeles corresponden al
brillo de grises. Representada por una
matriz de enteros y reales.
Los píxeles toman 3 valores cada uno: las
componentes de rojo, verde y azul.
Representada por una matriz M x N x 3 de
enteros o reales.
Identifica do el tipo de imagen obtenida del video, se caracteriza dicha imagen, para
obtener su capacidad de ocultamiento.
La calidad de la imagen digital está directamente relacionada con el número de
píxeles que tenga, este aspecto se le denomina resolución de la imagen. Se usa el
término de resolución espacial para describir cuántos píxeles componen una imagen; a
mayor número de píxeles, mayor resolución espacial y capacidad de ocultamiento, tal
como las imágenes RGB [1].
43
2.5.- Imágenes digitales a color (RGB).
Cuando se trabaja con imágenes digitales a color se manejan tres características
representativas de dicha imagen: resolución espacial (cantidad ocupada en un
dispositivo de almacenamiento) y resolución de brillo (cantidad en bytes ocupada para
la manipulación del brillo de dicha imagen). Para representar la resolución de brillo en
imágenes a color generalmente son cuantificadas por tres tonalidades de brillo. Al
desplegar el color, se usan tres emisores de brillo para generar en conjunto todos los
colores del espectro. Si se pone atención y nos fijamos muy de cerca al monitor
podremos observar unos puntos individuales de colores. Estos puntos pueden emitir luz
en los colores rojo, azul y verde o en sus siglas en inglés (Red, Green, Blue). Conforme
nos vamos alejando estos puntos tienden a mezclarse hasta el grado de ya no distinguir
dichos puntos. En lugar de eso, ahora se percibe la combinación de ambos como si fuera
un solo color. Debido a que estos tres puntos de brillo se generan a partir de los colores
primarios azul, rojo y verde, entonces una imagen digital a color es una matriz
tridimensional, que se compone por tres planos conocidos como R, G y B [2], como se
muestra en la figura 2.6. Si se parte de lo anterior , entonces una imagen RGB está
conformada por 3 sub matrices que son una copia exacta de la original lo cual se puede
observar en la figura 2.6, en consecuencia aumenta la posibilidad de ocultar información
en una imagen RGB. Al realizar esta recolección de informació n, se eligió el uso de
imágenes RGB para ser albergue del ocultamiento de información [1]. Al descomponer
una imagen en sus tres componentes no aumenta su espacio de almacenamiento, sigue
siendo el mismo que el original ya que éstas se encuentran en capas que colocadas una
encima de otra integran la imagen original.
En la figura 2.7, se presenta un ejemplo: se toma un píxel de cada matriz de
descomposición, en donde dicho píxel expresa la información que inte gra la imagen
original; y la suma de cada píxel de las sub matrices de descomposición: R (rojo), G
(verde) y B (azul) en su totalidad conforman un píxel de la imagen original, figura 2.6.
44
Figura 2 .6 .- Imagen en color y su descomposición en las tres bandas RGB.
129
+
128
+
69
=
Figura 2.7.- Valor de los píxeles que conforman la imagen original.
2.6.-Archivos de sonido.
Los archiv os de sonido son también utilizados a menudo en técnicas
esteganográficas. Se muestran algunos de los distin tos tipos de formato empleados:
- Waveform Audio File Format (WAV): Se trata del formato de sonido desarrollado por
Microsoft para su sistema operativo Windows. Se compone de una cabecera de 43 bytes
y un conjunto arbitrario de bytes que contienen las muestras una tras otra, sin ningún
tipo de compresión y con cuantificación uniforme. Al ser un formato realmente sencillo,
es muy útil para realizar tratamiento digital de sonido [3]. Su principal ventaja es la
sencillez del formato, y su mayor inconveniente la cantidad de espacio requerido (una
muestra de 10 segundos en calidad de CD -PCM, 44 KHz, 16 bit, estéreo ocupa 1,6
Mb). Cada archivo wav al momento de ser leído por un reproductor de audio, es
identificado por los distintos miembros que conforman la cabecera. Se muestra la
estructura que hace referencia a cada una de las cabeceras requeridas en un archivo wav.
45
Sintaxis:
typedef struct waveformat_extended_tag {
WORD wFormatTag;
WORD nChannels;
DWORD nSamplesPerSec;
DWORD nAvgBytesPerSec;
WORD nBlockAlign;
WORD wBitsPerSample;
WORD cbSize;
} WAVEFORMATEX;
la estructura anterior tiene una longitud total en bytes perteneciente a la cabecera del
archivo la cual es la suma de cada campo del audio. Se presenta una Tabla en donde se
hace referencia a cada campo con su longitud en bytes:
Tabla 2.4.- Campos utilizados en la cabecera, así como la longitud en bytes de dicha variable.
TIPO DE DATO
VARIABLE
BYTES OCUPADOS EN
LA CABECERA.
WORD
wFormatTag
2
WORD
nChannels
2
DWORD
nSamplesPerSec
4
DWORD
nAvgBytesPerSec
4
WORD
nBlockAling
2
WORD
wBitsPerSample
2
WORD
cbSize
2
Los 22 bytes restantes son reservados como uso exclusivo de Windows.
De los miembros que conforman la estructura se utiliza n nChannels y nSamplesPersec;
en la Tabla 2.5 se explica el significado de dichos miembros. NOTA: el archivo wav es
el nativo de Windows, el cual es el estándar manejado por Matlab.
Tabla 2.5.- Miembros pertenecientes a la estructura de un archivo wav.
Miembros
NChannels
NSamplesPerSec
Significado.
Especifica el número de canales en el flujo
de audio. Es decir; si es mono (1 cana l) o
es estéreo (2 canales).
Establece la tasa de muestreo en muestras
por segundo (Hz). Los valores más
comunes son: 8,000; 11,025; 22,050; y
44,100.Para archivos PCM.
46
- Motion Picture Experts Group - Audio Layer 3 (MP3): Sin duda el más famoso de
todos los formatos de audio. Este formato utiliza un algoritmo de compresión con
pérdida de información, basándose en las limitaciones del oído humano: somos
sensibles a las frecuencias medias, pero poco perceptivos con las altas o bajas; y además
percibimos mal los sonidos bajos que suenan a la vez que sonidos muy fuertes (efecto
de ocultamiento). Eliminando los sonidos que no oímos, logra una relación de
compresión de hasta 12:1. Su principal ventaja , sin duda, es la gran compresión y la
poca pérdida de calidad que tiene, y su principal inconveniente es la pérdida inevitable
de información.
La representación de la información en los archivos de sonido se realiza
generalmente mediante el registro consecutivo de las muestras que componen el sonido.
Al igual que ocurría con los archivos de imagen, el sonido es representado siempre en
forma de bits, y cada vez con una calidad mayor , de forma que para nuestros
experimentos esteganográficos se podrá manipular los bits menos significativos de la
información.
En el sonido ocurre una cosa muy curiosa: nos da prácticamente igual que la
calidad sea alta o baja, pues en calidades altas la cantidad de bits usados para
representar el sonido es muy alta, y un cambio ínfimo no influye en el resultado;
mientras que en los de calidad baja, aunque la modificación sea más llamativa, al
tratarse de un sonido de baja calida d, cualquier modificación puede pasar inadvertida
como ruido de fondo.
La forma de introduc ir los datos es la misma que en el caso de archiv os de imagen.
En la figura 2.8 se muestra la cabecera de un archivo wav, elegido en esta
investigación, las letras en cursiva indican la cabecera que tiene dicho archivo, tal
cabecera no se debe modificar al realizar la esteganografía:
RIFFô | WAVEfmt
+ +
dataÐ|
€€€€€€€• €• €• €€• €• €• €• €• €• €• €• €~z{z{{{{{{{{{{{{{{{{zz{zzzzzzzzzzzzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
yyyyyyyy.
Figura 2.8.- Fragmento de una cabecera de un archivo WAV.
Donde:
Riff: Es un apuntador y hace referencia si se requieren los campos fmt y data de dicho
archivo, para la figura 2.8 se observa que el archivo wav hace referencia ha estos dos
campos.
fmt: define el formato del audio. Dicha cabecera apunta a la estructura de la tabla 2.4.
Tal estructura contiene distintos campos que brindan la información necesaria para el
procesamiento del archivo.
data: indica el tamaño del archivo.
47
Después de este último campo empieza la grabac ión del sonido. Como se mencionó
para las cabeceras de la imagen, si nuestro archivo de audio no posee dichas cabeceras
no existirá la estructura de la tabla 2.4, lo cual impedirá nuestro procesamiento.
En la figura 2.9 se muestra la localidad de alojamiento en memoria.
CAMPO
Chunk ID
Chunk Size
Format
Sub Chun1 ID
SubChunk1
Size
Audioformat
NumChannels
SampleRate
ByteRate
BlockAling
BitsPerSample
Sub Chun2 ID
SubChunk2
Size
OFFSET(bytes)
4
4
4
4
4
2
2
4
4
2
2
4
4
Riff.
Hace referencia a
cuantos enlaces va
a tener. Para este
caso fmt y data.
fmt.
Contiene
la
información del tipo
de
formato
del
sonido.
data.
Indica el tamaño en
duración del sonido.
SubChunk2
Size
Data
Figura 2.9 . Mapa de la Cabecera en archivos WAV.
Los archivos de audio wav vistos en Matlab tienen una magnitud de -1 y 1 y es
representado como vector , el cual al querer ejecutarse en Windows empieza a leer la
cabecera para conocer la manera en cómo se va reproducir dicho archivo de audio, los
formatos más comunes en Windows están expuestos en la Tabla 2.6:
Tabla 2.6.- Valores típicos de reproducción de un archivo de audio .wav.
Modulación
PCM
PCM
PCM
Tasa de muestreo.
11,025
22,050
44,100
No. De Bits.
8
8,16
16
Dichos vectores se pueden observar en la figura 2.10.
48
1
0.5
0
-0.5
-1
-1.5
0
0.5
1
1.5
2
2.5
4
x 10
Figura 2.10.- Archivo de audio .wav. PCM, 11,025 a 8 bits.
2.7.-Referencias de un Archivo Wav.
Es indispensable no tocar las cabeceras que conforman un archivo de Audio
Wav para así no entrar en conflicto al momento de intentar abrir dicho archivo en
cualquier Sistema Operativo con el que se esté trabajando. También es necesario
enfatizar los diferentes tipos de compresión de los archivos al momento de ser
transferidos a cualquier medio de Transmisión, ya que esto dificulta en sobremanera el
tipo de Programación que se va a seguir, así como para elegir correctamente el Lenguaje
capaz de solucionar rápida y efectivamente el problema al momento de aplicar la
esteganogra fía a cualquier tipo de archivo de sonido. Cada archivo wav tiene en sí una
composición distinta, es decir; cada vez que se graba un archivo de Audio con extensión
wav estas pueden poseer distintos tipos de compresión y de muestreo. A partir de las
Tablas 2.7 a la 2.19 se visualizan todos los tipos de datos que pueden contener las
cabeceras de un archivo wav mencionados.
La tabla 2.7 contiene las cabeceras de un archivo WAV. Este tipo de cabecera es una de
las más comunes hoy en día para las aplicaciones de procesamiento de audio.
49
Tabla 2.7.- Compresión PCM a 11025 Hz., a 16 bits por muestra.
Formato: 11025
Hz 16 bits, PCM.
Cabecera RIFF
ID: RIFF
Tamaño: 304570
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:16
Código de
Compresión:1
Número de
Canales: 1
Tasa de Muestreo:
11025
Promedio de Bits
por segundo:22050
Alineación de
Bloque:2
Bits por muestra:
16
ID:DATA
Tamaño:304534
Velocidad
de
Transmisión:176Kbps.
Cabecera que muestra qué contiene el formato de compresión PCM.
Tabla 2 .8.- Compresión PCM a 8000 Hz, a 16 bits por muestra.
Formato: 8000 Hz
16 bits, PCM.
Cabecera RIFF
ID: RIFF
Tamaño: 227018
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:16
Código de
Compresión:1
Número de
Canales: 1
Tasa de Muestreo:
8000
Promedio de Bits
por segundo:16000
Alineación de
Bloque:2
Bits por muestra:
16
ID:DATA
Tamaño:220982
Velocidad
de
Transmisión:176Kbps.
La Tabla que se muestra a continuación indica que su compresión es GSM 6.10, una
compresión poco utilizada en la grabación de audio.
50
Tabla 2.9.- Compresión GSM 6.10 a 11025 Hz por muestra.
Formato: 11025
Hz GSM 6.10.
Cabecera RIFF
ID: RIFF
Tamaño: 30992
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:20
Código de
Compresión:49
Número de
Canales: 1
Tasa de Muestreo:
11025
Promedio de Bits
por segundo:2239
Alineación de
Bloque:65
Bits por muestra: 0
Bytes de formato
extra:2
ID:DATA
Tamaño:30940
Velocidad
de
Transmisión:17Kbps.
Cabecera que muestra e l contenido del formato de compresión PCM.
Tabla 2.10.- Compresión PCM a 8000 Hz, a 8bits por muestra.
Formato:
8000
Hz,8 bits,PCM.
Cabecera RIFF
ID: RIFF
Tamaño: 110324
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:16
Código de
Compresión:1
Número de
Canales: 1
Tasa de Muestreo:
8000
Promedio de Bits
por segundo:8000
Alineación de
Bloque:1
Bits por muestra: 8
ID:DATA
Tamaño:110488
Velocidad
de
Transmisión:64Kbps..
Cabecera que muestra qué contiene la compresión µ-Law, también poco común para un
manejo que implique algún procesamiento .
51
Tabla 2.11.- Compresión µ-Law a 11025 Hz.
Formato: 11025
Hz µ-Law.
Cabecera RIFF
ID: RIFF
Tamaño: 152318
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:18
Código de
Compresión:7
Número de
Canales: 1
Tasa de Muestreo:
11025
Promedio de Bits
por segundo:11025
Alineación de
Bloque:1
Bits por muestra: 8
ID:DATA
Tamaño:152267
Velocidad
de
Transmisión:88Kbps.
Bytes de formato
extra:0
Cabecera que muestra que contiene el formato de compresión PCM.
Tabla 2.12.- Compresión PCM a 11025 Hz bits a 8 bits por muestra.
Formato: 11025
Hz 8 bits, PCM.
Cabecera RIFF
ID: RIFF
Tamaño: 152304
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:16
Código de
Compresión:1
Número de
Canales: 1
Tasa de Muestreo:
11025
Promedio de Bits
por segundo:11025
Alineación de
Bloque:1
Bits por muestra: 8
ID:DATA
Tamaño:110488
Velocidad
de
Transmisión:64Kbps.
Bytes de formato
extra:0
Cabecera que muestra el contenido de la compresión µ-Law, también poco común para su
manejo que implique algún procesamiento :
52
Tabla 2.13 .- Compresión µ-Law a 8000 Hz.
Formato:
8000
Hz,µ-Law,
toll
quality telephone.
Cabecera RIFF
ID: RIFF
Tamaño: 110538
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:18
Código de
Compresión:7
Número de
Canales: 1
Tasa de Muestreo:
8000
Promedio de Bits
por segundo:8000
Alineación de
Bloque:1
Bits por muestra: 8
ID:DATA
Tamaño:110488
Velocidad
de
Transmisión:64Kbps.
Bytes de formato
extra:0
Cabecera de archivo wav, su formato de compresión es el ADPCM, es también uno de
los más utilizados al momento de manejar audio, sin embargo; este tipo de compresión
no lo maneja el software de Matlab.
Tabla 2.14.- Compresión ADPCM a 11025 Hz con 4 bits por muestra.
Formato: 11025
Hz4 Bits, ADPCM.
Cabecera RIFF
ID: RIFF
Tamaño: 77244
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:20
Código de
Compresión:17
Número de
Canales: 1
Tasa de Muestreo:
11025
Promedio de Bits
por segundo:5588
Alineación de
Bloque:256
Bits por muestra: 4
ID:DATA
Tamaño:77192
Velocidad
de
Transmisión:44Kbps.
Bytes de formato
extra:2
53
Cabecera de archivo wav, su formato de compresión es el ADPCM, es también uno de
los más utilizados al momento de manejar audio, sin embargo; este tipo de compresión
no lo maneja el software de Matlab.
Tabla 2.15 .- Compresión ADPCM a 8000 Hz a 4 bits por muestra.
Formato: 8000 Hz,
4 Bits, ADPCM.
Cabecera RIFF
ID: RIFF
Tamaño: 56064
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:20
Código de
Compresión:17
Número de
Canales: 1
Tasa de Muestreo:
8000
Promedio de Bits
por segundo:4056
Alineación de
Bloque:256
Bits por muestra: 4
ID:DATA
Tamaño:29315
Velocidad
de
Transmisión:16Kbps.
Bytes de formato
extra:2
Este tipo de compresión es uno de los comerciales, es aplicado cuando se desea
compactar considerablemente un archivo de audio, las pérdidas que sufre el archivo no
son notorias.
Tabla 2.16.- Compresión MP3 a 8000 Hz.
Formato: 8000 Hz,
MP3,16K.
Cabecera RIFF
ID: RIFF
Tamaño: 27378
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:30
Código de
Compresión:85
Número de
Canales: 1
Tasa de Muestreo:
8000
Promedio de Bits
por segundo:2000
Alineación de
Bloque:1
Bits por muestra: 0
Bytes de formato
ID:DATA
Tamaño:22490
Velocidad
de
Transmisión:13Kbps.
54
extra:12
Cabecera que muestra qué contiene la compresión Lemout, también poco común para un
manejo que implique algún procesamiento
Tabla 2.17.- Compresión Lermout a 8000 Hz.
Formato: 8000 Hz,
Lermout & hawpie
SBC, 12K.
Cabecera RIFF
ID: RIFF
Tamaño: 19650
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:18
Código de
Compresión:114
Número de
Canales: 1
Tasa de Muestreo:
8000
Promedio de Bits
por segundo:2312
Alineación de
Bloque:37
Bits por muestra:
16
ID:DATA
Tamaño:19600
Velocidad
de
Transmisión:18Kbps.
Bytes de formato
extra:0
Este tipo de compresión es utilizada cuando se tiene el equipo electrónico físico para realizar la
descompresión del mismo archivo.
Tabla 2.18.- Compresión DSP a 8000 Hz.
Formato:
8000
Hz,DSP
Group
TrueSpeech.
Cabecera RIFF
ID: RIFF
Tamaño: 14834
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:50
Código de
Compresión:34
Número de
Canales: 1
Tasa de Muestreo:
8000
Promedio de Bits
por segundo:1067
Alineación de
Bloque:32
ID:DATA
Tamaño:14752
Velocidad
de
Transmisión:8Kbps.
55
Bits por muestra: 1
Bytes de formato
extra:32
Cabecera que muestra el contenido de la compresión Lemout, también poco común para su
manejo que implique algún procesamiento.
Tabla 2.19.- Compresión Lermout Celp a 8000 Hz.
Formato: 8000 Hz,
Lermout & Hawpie
CELP.
Cabecera RIFF
ID: RIFF
Tamaño: 8342
Tipo: Wave
Cabecera FMT
Cabecera DATA
ID:FMT
Tamaño:18
Código de
Compresión:112
Número de
Canales: 1
Tasa de Muestreo:
8000
Promedio de Bits
por segundo:600
Alineación de
Bloque:12
Bits por muestra:
16
ID:DATA
Tamaño:8292
Velocidad
de
Transmisión:4Kbps.
Bytes de formato
extra:0
2.8.- Archivos de video y de audio.
En los archivos de video, existen varios tipos, pero el AVI es el estándar para
Windows. El AVI (Audio Video Interleave) es el formato de video digital nativo de
Microsoft Windows, éste sola mente es un software agregado en el sistema, en otras
palabras, no es como otros productos como el caso del MPEG, que es necesario agregar
un hardware (tarjeta de video) adicional en la computadora para ser usado. La manera
en que el formato AVI maneja los datos de audio y de video es intercalándolos y
almacenándolos consecutivamente en un archivo AVI (un segmento de dato de vídeo es
seguido inmediatamente por un segmento de dato de audio), y permite enviar en forma
intercalada la información de video y de audio a una tasa de 15 tramas por segundos,
proporcionando una resolución de 320 x 256 en millones de colores [5].
El AVI es un caso especial de los archivos RIFF (Resource Interchange File
Format) y es una propuesta general de formato para intercambiar tipos de datos
multimedia que fueron definidos por Microsoft e IBM durante su alianza. De hecho,
RIFF es un clon del formato IFF inventado por Electronic Arts en 1984. Ellos crearon el
56
formato para Deluxe Point, e IFF rápidamente se convirtió en un estándar para
intercambio de Commodore.
Los archivos RIFF están conformados por [1]:
1. RIFF (encabezado) :
'RIFF' (archivos de 4 byte de longitud) 'xxxx' (data)
donde 'xxxx' identifica la forma de RIFF. 'AVI ' para archivos AVI.
2. Chunk (Cuerpo)
4 byte identifica dos (4 byte de longitud chunk) (data)
Los 4 bytes de identificación es una secuencia de lectura de cuatro caracteres
como 'JUNK' o 'idx1'.
3. List (Lista)
'LIST' (lista de longitud de 4 byte) (lista de identificador de 4 byte) (data)
donde los 4 bytes de identificación son una secuencia de lectura de cuatro caracteres
como 'rec ' o 'movi'.
Su localidad de memoria como cabecera dentro del archivo de formato AVI es
visualizada a continuación, Figura 2.11:
Campos
RIFF
dwFourCC
dwSize
Data
dwList
dwSize
dwFourCC
Data
Offset(bytes)
4
1
1
2
1
1
1
1
Riff.
Chunk.
List.
Figura 2.11.- Visualización de la localidad de memoria del archivo AVI.
2.9.- Archivos de formato AVI.
AVI es una especialización o forma de RIFF descrita abajo, Figura 2.12:
'RIFF' (Archivo de longitud 4 byte) 'AVI ' . Archivo de encabezado (forma RIFF).
'LIST' (Lista de longitud 4 byte) 'hdrl' . Lista de encabezado para archivos AVI.
La lista de 'hdrl' contiene:
'avih' (sección de longitud 4 Byte) (data) . El encabezado AVI.
57
'strl' Lista secuencial de encabe zados para cada sección (audio, video, etc.) en los
archivos AVI. El archivo AVI puede contener cero o una secuencia de video, y cero,
una o muchas secuencias de audio.
El cuerpo de audio y video en los archivos AVI no está contenido ni en los tiempos, ni
en las tramas contadas. Los datos están ordenados secuencialmente en el tiempo como
aparece en el AVI. La aplicación puede desplegar las tramas de video como la tasa de
trama indicada en los encabezados [5].
58
Figura 2.12.- Encapsulado de Tramas en un archivo AVI.
En la figura 2.13 se muestra el fragmento de un archivo AVI que contiene sus
dos flujos de Audio y de Video. El fragmento en cursiva representa las cabeceras del
AVI, como se menciona en el punto 2.9, podemos realizar la referencia a cada uno de
los campos que conforma un archivo AVI, en esta parte se puede identificar dentro de la
cabecera del AVI si tiene los dos flujos de Audio y de Video ó si sólo se tiene un solo
flujo. Observe la figura siguiente, en cursiva se señala a strl que posee su flujo de audio:
59
auds. Al encontrar esta parte en la cabecera se manda llamar el codec indicado y se
podrá reproducir con éxito nuestro archivo.
RIFFØζ AVI LISTp" hdrlavih8 j
î
LIST” strlstrh8 vidsDIV3
j
@B
î ¾b
@
ð
DIV3 „
LIST| strlstrh8 auds
+
Ð| ø? ÿÿÿÿ
+
LIST
odmldmlhø
JUNKt
VirtualDub
build
LIST• ¶
{ÀóJN ª‚ª
'
@ ð
@ ð strf( (
JUNK
strf
+
JUNK
î
15584/release
movi00dcF#
Figura 2 .13.- Cabecera de un archivo AVI.
La manera en la que se graba el video es diferente; los estándares en resolución
utilizados frecuentemente, tanto en Europa como en América son: Low Motion Video,
High Motion Video y Full Motion Video.
Low motion video:
La compresión de video Low Motion está muy
alejada , en cuanto a la fidelidad y calidad de video se refiere, es un poco raro que se
utilice para alguna película grabada en un DVD ya que éste se considera solo exclusivo
para el estándar de video AVI. Es decir, cada vez que uno maneja o trata de crear un
AVI éste solo será capaz de manejar 15 cuadros por segundo sin ningún acelerador de
video. Obviamente , hoy en día se puede conseguir dicho acelerador de video y convertir
un archivo de video AVI Low Motion a un video de alta calidad High Motion.
High motion video:
Esta técnica de compresión se utiliza para brindarle
mayor estética a un video al momento de estar proyectándolo hacia una pantalla.
Normalmente es el estándar para NTSC, éste es capaz de manipular 24 cuadros por
segundo; conocido también como de Alta Definición. La calidad de la imagen es mejor
ya que posee más resolu ción al tener mayor número de píxeles. La televisión estándar se
basa en una pantalla que contiene 450.000 píxeles aproximadamente, visualizados a 25
o 30 cuadros por segundo. La alta definición puede tener hasta 2 millones de píxeles
vistos a 24, 25 o 30 cuadros por segundo, o 1 millón vistos a 50 o 60 cuadros por
segundo. Los programas de alta definición pueden emplear dos técnicas diferentes y de
mayor uso, Tabla 2.20 [6]:
* Utilizando una resolución de 1920 x 1080, proporcionando 2,07 millones de píxeles,
filmado en modo cine a 24 o 25 cuadros por segundo con escaneado progresivo. Este
término se llama 1080/25p ó 1080p (1080/24p) El escaneado progresivo de la imagen a
24 o 25 cuadros proporciona una calidad similar al cine y algunos productores la están
empezando a usar para sustituir a la película.
* La misma resolución pero a 25 o 30 cuadros por segundo en modo entrelazado,
llamado 1080/25i ó 1080i (1080/30i) derivado de la televisión. Las imágenes
entrelazadas proporcionan una buena calidad en imágenes en movimiento, sobre todo en
deportes.
60
* Existe una tercera opción que es 1280 x 720 proporcionando casi un millón de
píxeles. Se utiliza el escaneado progresivo a 50 o 60 cuadros por segundo.
MPEG-2 es para la codificación genérica de imágenes en movimiento y el audio
asociado que crea un flujo de video arreglados en un orden específico llamado “La
estructura GOP”(GOP = Group Of Pictures o grupo de imágenes). Generalmente el
material originado es una secuencia de video a una resolución de píxeles pre-fijada a 25
o 29,97 cuadros por segundo con sonido. MPEG-2 admite flujos de video escaneado de
manera tanto progresiva como entrelazada. En flujos de escaneo progresivo, la unidad
básica de codificación es un campo.
Tabla 2.20.- Los diferentes tipos de Sistemas de Captura.
Sistema
Captura
Escaneado
24p,25p,30p,50p,60p
24psF, 25psF, 30psF
1920*1080 progresivo
1920*1080 captura
progresiva
1920*1080 entrelazado
Progresivo
Cuadro
50i,60i
Entrelazado
Full motion video:
Full Motion Video (FMV), o video de movimiento
completo, es el estándar para el video que se reproduce en una computadora, es
excelente para películas en 3D, o video juegos de alta resolución. Y se refiere a una
fluidez suave y excelentes colores muy similares a los que se pueden observar en un
video; también se conoce como video a pantalla completa, completo o color verdadero.
2.10.- Conclusiones.
Se identificó que un archivo de Video está conformado por una secuencia
continua de imágenes, las cuales son del mismo tipo al integrar el video total, existen
diferentes tipos, Tabla 2.2. De la misma manera se observa que las imágenes RGB, por
su composición matricial y su resolución espacial [1], son más factibles de ocultar
información por su capacidad de almacenamie nto. Al momento de obtener las imágenes
del video, es necesario identificar los campos de su cabecera que son importantes para
empezar el procesamiento de las imágenes.
El archivo de Audio está constituido por una estructura en donde se puede
identifica r distintas características importantes para su adecuado manejo, como por
ejemplo: si el archivo de audio posee solamente un canal de grabación (mono) o dos
canales de grabación (estéreo), esto es importante ya que a cada uno de los canales se le
debe de aplicar el mismo procesamiento esteganográfico, y también ver el tipo de
modulación que se usa para su grabación. Como se observa en las tablas 2.7 a la 2.19 se
puede encontrar diferentes tipos de modulación en la grabación se debe de elegir la
modulación con la cual trabaja correctamente matlab para que no presente problemas
con la descomposición del audio y a su vez se pueda abrir el archivo en dicho lenguaje.
En este capítulo se investigo cómo está compuesto un archivo de video AVI, el
cual es el común de manejar en Windows y en Matlab. Se puede ver que dicho archivo
tiene varias tramas las cuales se encuentran encapsuladas en él. Se identifica que el
61
entramado de imagen y de audio en un archivo de video se presenta intercalado. Así
como también se conocen los diferentes estándares de grabado para los archivos de
video.
2.11.- Referencias.
[1] Alecxis Morales Fernández.”Transmisión de imágenes con marcas de agua”. Tesis
de Ingeniería. ESIME-ZAC.2006
[2] Blanca Esther Carvajal Gámez, M. A. Acevedo Mosqueda, S. Luz Gómez Coronel.
”Ocultamiento de Información en Video utilizando Wavelets”. IX Congreso Nacional
de Ingeniería Electromecánica y de Sistemas, TEL18, México D.F, Noviembre 2006.
[3] http://msdn2.microsoft.com/en-us/library/ms706539.aspx.2007
[4] Ramesh (Neelsh) Neelamani, R. Quiroz, Zhigang Fan, Sanjeb Dash, and Richard G.
Baraniuk, JPEG Compression history estimation for color images, IEEE Transactions
on Image Processing 15, No. 6 (2006) 1365-1378.
[5] http://msdn2.microsoft.com/en-us/library/ms706539.aspx. 2007.
[6] www. Polycom.com.High Definition: the evolution of video conference. 2005
62
CAPITULO III.
Transformada Wavelet.
Introducción.
En nuestros días las técnicas de cambio de dominio de la frecuencia son más
comúnmente empleadas que las técnicas del dominio espacial, debido a que sus
resultados muestran a más detalle las características que se presentan en la frecuencia de
una im agen, y así es mucho más fácil manipular la información de dicha imagen
permitiendo que se tenga más robustez y por consiguiente seguridad.
Con la Transformada Wavelet Discreta podemos observar a la imagen desde
diferentes tipos de frecuencia o resolución, eso es una gran ventaja sobre otras
Transformadas del Dominio Espacial, ya que permite elegir el nivel de resolución en
frecuencia de cada descomposición que se le llegue a aplicar.
En este capítulo se presentará un análisis de las wavelets y se justificará el por
qué de su elección para el desarrollo de nuestro algoritmo.
3.1.-¿Qué es una wavelet?
Las wavelets proporcionan una herramienta matemática flexible para problemas
prácticos en cienc ia e ingeniería. En la última década se han aplicado con éxito al
análisis de señales en disciplinas tan diversas como la medicina, la ingeniería eléctrica,
teledetección y muchas otras. Una de las principales virtudes de las wavelets es que
permiten modelar mejor procesos que dependen fuertemente del tiempo y cuyo
comportamiento no tiene por qué ser suave. La transformada wavelet resulta
especialmente eficiente para extraer información de señales no periódicas o de vida
finita. Otra de las ventajas de dicha transformada , frente a otros métodos, es el de poder
disponer de una amplia familia de wavelets, lo cual permite tratar señales de diversa
índole. La elección de la wavelet dependerá del tipo de señal que se analice. Algunos de
los principales problemas que afectan al tratamiento de señales e imágenes digitales, y
en los que las wavelets constituyen una potente herramienta para afrontarlos, son la
reducción del ruido (en señales de audio y en imágenes), la compresión de señales (de
vital importancia tanto en la transmisión de grandes cantidades de datos como en su
almacenamiento) o la detección de determinados objetos en imágenes o irregularidades
locales en ciertos tipos de señales (electrocardiogramas, vibraciones de motores, etc.)
[1]. Esta moderna teor ía ha experimentado un gran desarrollo en las dos últimas décadas
mostrándose muy eficiente donde otras técnicas, como por ejemplo, la transformada
rápida de Fourier, no resultaban satisfactorias. En esta última se maneja una base de
funciones bien localizada en frecuencia pero no en tiempo, mientras que la mayoría de
las wavelets presentan una buena localización en tiempo y en frecuencia, disponiendo
incluso de bases de wavelets con soporte compacto.
La transformada Wavelet discreta o continua está íntimamente ligada al análisis
de multirresolución, es decir, la observación de la señal en distintas frecuencias [5] lo
63
que permite tener un mejor panorama de dicha señal, y facilita su cálculo rápido cuando
la familia de wavelets es ortogona l.
Aún entendiendo al definición de la ortogonalidad para las señales discretas
como continuas que indica un desfasamiento en 90º. Se puede agregar lo siguiente:
Se dice que un conjunto de funciones f n(t) es ortogonal en un intervalo de 0-T
cuando su producto interno integral de dos miembros diferentes de la familia es cero,
mientras que su cuadrado es integrable y diferente a cero, esto es:
T
∫ ϕ j (t )ϕ k (t )dt = 0 si j ≠ k
(3.1)
0
En donde φ j y φk son las funciones madres generadoras de la wavelet.
Esta característic a en particular permite obtener los coeficientes Wavelet para
cada descomposición.
La transformada wavelet discreta es una transformación de la señal que la
divide en dos tipos de sub-señales, de aproximaciones y detalles [2]. Las
aproximaciones son una copia de la señal a menor resolución y los detalles almacenan
información referida a los cambios locales en la señal original. Las aproximaciones y
detalles más significativos permiten una compresión de la señal a cambio de descartar
información irrelevante y de la eliminación del ruido producido por los aparatos y las
condiciones de medida. Según el tipo de medición realizada, el ruido correspondiente se
comporta matemáticamente siguiendo distribuciones de probabilidad gaussianas
uniformes. El estudio de los detalles permite detectar anomalías o disfunciones en el
comportamiento esperado de la señal inicial. También permite la comparación con
patrones para detectar formas en una imagen o una señal unidimensional de forma
automática. El nuevo formato de JPEG2000 [6] basa la compresión de imágenes en la
transformada wavelet. La mayor parte de las familias de wavelets que se utilizan son
ortogonales, la cual permite una transformada inversa de fácil obtención, y tan rápida
como la transformada directa. No existe una transformada wavelet única, ni que
resuelva todos los problemas, a partir del modelado del proceso y de un análisis a priori
del tipo de señal tratada y del objetivo que se pretenda (compresión, eliminación del
ruido, segmentación de la imagen, etc. ) se busca la familia de wavelets [4] (Haar,
Daubechies, etc.), figura 3.1 a) y b), que mejor coincida con las características de la
señal a estudiar.
64
Descomposicion Filtro Pasa Bajas
0.8
Descomposicion Filtro Pasa Altas
1
0.6
0.5
0.4
0
0.2
-0.5
Descomposicion Filtro Pasa Bajas
1
Descomposicion Filtro Pasa Altas
1
0.5
0.5
0
0
0
1
1.5
-1
2
Reconstruccion Filtro Pasa Bajas
0.8
-0.5
-0.5
1
1.5
Descomposición Filtro Pasa Altas
1
0.6
0.5
0.4
0
-1
0
2
2
4
6
8
0
1.5
2
4
6
8
0.5
0.5
0
-0.5
-0.5
1
2
Descomposición Filtro Pasa Altas
1
1
0
0.2
0
Reconstruccion Filtro Pasa Bajas
-0.5
-1
1
1.5
2
Filtros utilizados en la descomposicion Haar
Figura 3.1.- a) Respuesta al impulso de la
wavelet Haar.
0
2
4
6
8
-1
0
2
4
6
8
Filtros utilizados en la descomposicion Daub4
b) Respuestas al impulso de la Daubechies
daub4.
El tratamiento con wavelets discretas permite su aplicación directa a procesos
computacionales. Las wavelets continuas presentan, por una parte, la dificultad de su
manejo al tener que evaluar un gran número de integrales y tener en consecuencia una
redundancia de información, esto por consecuencia aumenta el costo en tiempo de
procesamiento de señales, sobre todo si dichas señales ocupan mucho espacio de
almacenamiento. Concretamente, en el tratamiento de imágenes digitales se precisa
resaltar detalles y detectar texturas analizando la imagen desde distintos ángulos, lo cual
es posible con la descomposición wavelet.
Las wavelets proveen un método poderoso y una diversidad de herramientas para
resolver problemas en el ámbito del procesamiento de señales. Por ejemplo, los
problemas más comúnmente resueltos por las wavelets son [4]:
•
•
•
Eliminación de ruido en archivos de audio y archivos de imagen.
Compresión de señales.
Reconocimiento de patrones.
El estudio en tiempo-frecuencia se puede entender de dos maneras: física y
matemáticamente, siendo la última la que nos permite ver cómo las propiedades
espectrales de la señal cambian con el tiempo [6], [7]. Las wavelets es una herramienta
que posibilita observar dicha señal en el dominio de la frecuencia.
Las wavelets son funciones expresadas en la siguiente manera:
(
)
ϕ j , k (x) = a j / 2ϕ a j x − kb
(3.2)
donde f ? L 2 (R),a>0, b ? R, y j, k son enteros. Esto es, las wavelets son generadas
por una función kernel o madre para este caso [7]. El estándar propone que a=2 y b=1.
65
Los coeficientes de las wavelet de f ? L2 (R) son definidos como:
(3.3)
F ( j , k ) = ∫ f ( x)ϕ j , k (x)dx
Cuando j, k (establecen los límites de ventana de muestreo) cambian sus valores, la señal madre
se dilata, es decir; puede expandirse o contraerse. Aunque se presenten la expansión o
contracción, la función puede seguir cubriendo el espectro de la señal a procesar y la calidad de
la imagen se conserva.
3.2.-Transformada wavelet discreta.
La señal discreta x[n] debe pasar a través de una serie de bancos de filtros espejo en
cuadratura [4], [5], [7], dichos filtros son: Filtro Pasa Bajas y Filtro Pasa Altas. La señal
resultante de cada filtro es diezmada por un factor de 2 para el caso de esta Tesis.
La resolución de la señal, la cual es una medida de la cantidad detallada de la
información dentro de la señal, se modifica por la acción del filtrado y la escala se modifica por
la operación del diezmado. El diezmado de una señal corresponde a la reducción de tamaño de
dicha señal, o la eliminación de algunas muestras de la señal. A este proceso de filtrado y
diezmado sucesivo se le conoce como codificación en sub-bandas [3], figura 3.2. Dicha
operación se interpreta de la siguiente manera:
xaltas[k ] = ∑ x[n] • g [2k − n]
(3.4)
xbajas[ k ] = ∑ x[n] • h[2k − h]
(3.5)
n
n
donde x bajas [k]y x altas[k] son las salidas de los Filtros Pasa Bajas (F.P.B.) y Pasa Altas
(F.P.A.), respectivamente, y g[2k -n] representa la respuesta al impulso del F. P. A y
h[2k -h] representa la respuesta al impulso del F. P. B, sub muestreado por un factor de 2
expresada en la figura 3.2. A estas dos salidas del sistema de filt rado se le aplica el
diezmado anteriormente mencionado. De esta manera es como trabaja la Transformada
Wavelet Discreta(TWD), lo cual significa que la Transformada analiza la señal de
entrada en distintas bandas de frecuencia con diferentes tamaños en su composición de
muestras, mediante la descomposición de la señal en componentes de mayor y menor
energía [9]. La obtención de la señal se obtiene mediante el banco de filtros
mencionados anteriormente.
La codificación en sub- bandas puede repetirse cuantas veces sea necesario.
Cada nivel de filtrado y diezmado resultará exactamente a la mitad del número de
muestras de la señal original, y por consiguiente a la mitad de resolución del tiempo [5],
[6].
66
Figura 3.2.- Banco de filtros para codificación en sub - bandas.
3.3.-Transformada wavelet Haar.
Para entender el mecanismo de las wavelets, hay que definir la wavelet Haar
para una sola dimensión. Es una de las señales más sencillas de aplicar, sin embargo, es
una de uso más frecuente debido a su sencillez.
Debido que la TWD Haar es la convolución de la señal original con un filtro
pasa altas y un filtro pasa bajas. Se debe conocer la respuesta al impulso para cada uno
de los filtros a utilizar. La respuesta al impuls o para el filtro Pasa Bajas está dada a
continuación:
 1
 2 ; 0 ≤ n ≤1

 1
g [n ] =  ; 1 ≤ n ≤ 2
 2
0; en otro caso


Para el caso del Filtro Pasa Altas es:
 1
 2 ; 0 ≤ n ≤1

 −1
h[ n] =  ; 1 ≤ n ≤ 2
 2
0; en otro caso


67
Una señal discreta es una función con valores extraídos en instantes discretos del
tiempo. Generalmente definimos a una señal discreta en la siguiente forma:
x[m] = (x1 , x2 ,K xm )
La Transformada Haar descompone una señal discreta dentro de dos sub- señales
de la mitad de longitud de la original. Una sub – señal es conocida como
aproximaciones y la otra sub – señal es conocida como detalles [6].
La primera sub – señal a 1 = (a1 , a 2 ,L , a m / 2 ) , para la señal x es calculada tomando el
promedio de la señal de la siguiente manera. El primer valor a1 es calculado tomando el
primer par de valores del vector de x[m] : (x1 + x2 ) / 2 y multiplicamos éste por
2.
Esto es de manera similar a a1 = ( x1 + x2 ) / 2 ; de manera semejante para los valores
restantes, es decir a 2 = (x3 + x4 ) / 2 , etc. La fórmula precisa es:
am / 2 =
x2 m −1 + x2 m
(3.6)
2
donde m es el número total de elementos del vector.
La otra sub – señal es también conocida como la primera fluctuación . La
primera fluctuación de la señal x, es denotada como: d 1 = (d 1 , d 2 ,L , d m / 2 ) y es
calculada tomando la diferencia del primer par de valores de x, ( x1 − x2 ) / 2 , y después
es multiplicado y dividido por
2 , y así sucesivamente. La fórmula exacta es:
− x2 m 
x
d m / 2 =  2 m −1

2


(3.7)
donde m es la dimensión del vector. Después de aplicar la Transformada Wavelet
Discreta Haar y arrojándonos dos vectores, los cuales son las aproximaciones y
detalles obtenidos que tienen una longitud de la mitad del vector original. Finalmente,
podemos proceder a la recuperación de dicho vector con la siguiente ecuación:
a + d n / 2 a n / 2 −d n / 2 
 a + d1 a1 − d1
f [n ] =  1
,
,L , n / 2
,

2
2
2
2


(3.8)
68
3.4.-Transformada wavelet daub4.
La transformada daub4 es definida de la misma manera que la Transformada
Haar, ec. 3.2 y 3.3. Si tomamos una señal x[m] la cual tiene un número impar de m o n
valores, entonces el primer nivel de la daub4 es la transformación del mapeo
D1
(
)
1
x → a 1 | d 1 , del cual se obtiene el vector de aproximaciones dado por a y el vector de
detalles d 1[6]. Cada valor de a m de a 1 = (a 1 , L , a m / 2 ) es igual al producto escalar:
a m = x[m ]⋅ Vm1
(3.9)
de x con el primer nivel de la señal escalada Vm1 el cual contiene los valores del producto
con la respuesta al impulso del filtro; para la descomposición de aproximaciones el
filtro es un Pasa Bajas, de igual forma para el valor d m de d 1 = (d 1 ,L , d m / 2 ) con W m1 , el
cual contiene el producto de cada uno de los componentes de la señal con la respuesta al
impulso del filtro Pasa Altas :
d m = x [m ] ⋅ Wm1
(3.10)
La diferencia entre la Transformada Haar y la Transformada daub4 es la función de
transferencia dada para el filtro pasa altas y para el filtro pasa bajas.
Primero se define cada uno de los coeficientes dados por α n los cuales representan la
respuesta al impulso para el filtro Pasa Bajas, y esta definido como un escalamiento de
señales con la Transformada daub4 las cuales se exponen a continuación [6]:
α1 =
1+ 3
4 2
,α 2 =
3+ 3
4 2
,α 3 =
3− 3
4 2
,α 4 =
1− 3
(3.11)
4 2
Usando estos números en la forma 3.9, obtenemos la señal deducida con la daub4 que
están representados como en la F igura 3.3, la cual representa la descomposición
Wavelet de aproximaciones:
69
V11 = (α 1 , α 2 ,α 3 , α 4 ,0,0,L ,0 )
V21 = (0 ,0 ,α 1 ,α 2 ,α 3 ,α 4 ,0,0,L ,0 )
V31 = (0 ,0,0,0,α 1 , α 2 ,α 3 , α 4 ,0,0, L ,0 )
Figura 3 .3.- Representación del escalamiento
con el Filtro Pasa Bajas .
M
Vm1 −1 = (0,0,L,0,α1 ,α 2 ,α 3 , α 4 )
Vm1 = (α 3 ,α 4 ,0,0,L ,0 ,α 1 ,α 2 )
En donde m es la longitud del vector.
Una propiedad importante de este escalamiento de señales es:
1. Si α 12 + α 22 + α 32 + α 42 = 1 , esto implica que el primer nivel de escalamiento de
la señal tiene una energía total de 1.
2. Otra identidad que satisface este escalamiento de números es:
α1 + α 2 + α 3 + α 4 = 2
Esta ecuación maneja la siguiente definición: para cada nivel de valor promedio de
x ⋅Vm1 es un promedio de los cuatro primeros valores x la cual es la función de entrada
que se aplicará la TWD, multiplicado por
2 [6].
La respuesta al impulso para el filtro Pasa Altas utilizado en la daub4:
β1 =
1− 3
3 −3
3+ 3
− 1− 3
, β2 =
, β3 =
, β4 =
4 2
4 2
4 2
4 2
(3.12)
Usando este escalamiento de señales, el primer nivel de la daub4, se muestra en la
Figura 4.4, la cual representa la convolución de la respuesta al impulso del filtro Pasa
Altas con cada uno de los componentes de la señal a procesar :
W11 = (β 1 , β 2 , β 3 , β 4 ,0,0,L ,0)
W21 = (0,0, β 1 , β 2 , β 3 , β 4 ,0,0,L ,0)
W31 = (0,0,0,0, β1 , β 2 , β 3 , β 4 ,0,0,L ,0)
M
Figura 3 .4.- Representación del escalamiento
con el Filtro Pasa Altas.
W n1−1 = (0,0, L ,0, β 1 , β 2 , β 3 , β 4 )
W n1 = (β 3 , β 4 ,0,0,L ,0, β1 , β 2 )
70
3.5.- Transformada wavelet en dos dimensiones.
La Transformada wavelet en 2 dimensiones de una imagen discreta puede ser
realizada, empleándola de la siguiente manera: se aplica la transformada wavelet en una
imagen x definida, usando cualquier transformación wavelet en una dimensión,
siguiendo los siguientes dos pasos:
1. Se realiza la Transformación wavelet en una dimensión, sobre cada renglón de la
imagen x, produciendo la nueva imagen [6].
2. Sobre la nueva imagen obtenida en el paso 1, se aplica de manera semejante
sobre cada columna [6].
La primera descomposición wavelet de la imagen x puede ser simbolizada como:
 a1 | v 1 

x →  1
1
h | d 
donde, las sub – imágenes a 1, v 1, h
renglones y n/2 columnas.
1
y d
1
cada una tiene una dimensión de m/2
La nueva sub imagen a 1 es obtenida realizando el cálculo de las aproximaciones
a través de los renglones de x seguido a continuación de las aproximaciones a través de
las columnas; lo que representa un promedio de baja frecuencia de la imagen original.
Un camino más fácil de explicar para el cálculo y obtención de a 1, es un producto
escalar de la imagen x con el escalamiento de las señales mencionadas anteriormente
(renglones y columnas).
La sub imagen h 1 es creada por el cálculo de sus aproximaciones a través de los
renglones de la imagen x seguido por el cálculo de los detalles a través de las columnas.
Este cálculo enfatiza el eje horizontal.
Para obtener la sub imagen v1, su procedimiento es similar que el de h 1, excepto
que se obtiene primero los detalles de los renglones seguido por el cálculo de las
aproximaciones en las columnas.
Finalmente, para obtener la primera diagonal d1 , la cual enfatiza todas las
características diagonales de la imagen, porque es creada de los detalles a través de
ambas columnas y renglones. Estos detalles tienden a borrar los ejes horizontales y
verticales en donde la imagen es relativamente constante. Por ejemplo, el valor de los
detalles es generalmente mucho más peque ño que el valor de las aproximaciones.
Entonces los detalles en las sub imágenes h 1, v1, y d1 tienen valores significativamente
más pequeños que los de a 1.
Como en la primera descomposición, así como para múltiples niveles de
descomposición en la transformación en dos dimensiones, están definidos repitiendo la
descomposición de la transformada en una dimensión de las aproximaciones de la sub
imagen a 1 como se define a continuación:
71
2
2


a
|
v
1


a → 2
2
h | d 
De otra manera lo podemos interpretar como: la descomposición de la sub matriz R
representada por XR [n,m] , para la primera descomposic ión mostrada en la figura 3.5 se
aplica el paso del filtro pasa bajas a través de los renglones y las columnas para así
obtener la sub matriz a anteriormente mencionada de la imagen, en la segunda
descomposición se le aplica el filtrado pasa bajas a través de los renglones y el filtrado
en altas para las columnas obteniendo así la sub matriz h, en la tercera descomposición
es de manera similar a h pero se invierte el filtrado primero es el filtro pasa altas y
posteriormente el filtro pasa bajas así obtenemos a la sub matriz v y finalmente para
obtener la sub matriz d se le aplica el filtrado en renglones como en columnas con el
filtro pasa altas, estos pasos se muestran gráficamente en la figura 3.5 :
Figura 3 .5.- Descomposición Wavelet para una matriz .
en donde b[m] representa el Filtro Pasa Bajas a través de las columnas de la imagen y
b[n] denota el Filtro Pasa Bajas a través de los renglones de la imagen original, de igual
manera para a[m] que representa al Filtro Pasa Altas a través de las columnas y a[n] a
través de las columnas.
Si a una imagen se le aplica la TWD se obtienen cuatro matrices de coeficientes
en aproximaciones, detalles horizontales, detalles verticales y detalles diagonales , figura
3.6 [2].
72
La aproximación contie ne la mayor parte de la energía de la imagen, es decir, la
información más importante, mientras que los detalles diagonales tienen valores
próximos a cero figura 3.6 [4,6].
Figura 3 .6.- Descomposición Wavelet de una Imagen.
La elección de la wavelet juega un papel muy relevante en los resultados finales.
Entre las características más importantes a tener en cuenta se encuentran: soporte
compacto, simetría, biortogonalidad, etc. Las wavelets son duales, este tipo de wavelets
son biortogonales , es decir, son aquellas que deben cumplir con las siguientes
condiciones: debe presentar una reconstrucción perfecta, es decir; debe de existir la
transformada inversa sin ninguna otra condición.
Así de ec. 3.13, podemos obtener la ec. 3.14 y así obtener la señal original.
Para la descomposición wavelet se tiene:
xaltas[k , l ] = ∑∑ x[n, m] • g [2k − n,2l − m]
n
(3.13)
m
xbajas[k , l ] = ∑∑ x[n, m]• h[2k − h,2l − m]
n
m
y para la reconst rucción se tiene que:
u[k ,l ] =
∞
∞
∑∑
k =−∞ l =−∞
xbajas[k, l ]g[− n + 2k ,−m + 2l ] + xaltas[k ,l ]h[− n + 2k,− m + 2l ]
(3.14)
en donde, xbajas y xaltas
son los coeficientes de aproximaciones y detalles,
respectivamente, obtenidos por el proceso de filtrado.
73
x[k , l] es la señal discreta a procesar.
u[k,l] es la reconstrucción en cada nivel de la descomposición.
Las wavelets biortogonales tienen una perfecta reconstrucción [4], para la
descomposición así como para la construcción de la señal original a procesar, por
consiguiente son las más eficientes para un proceso de compresión, y en particular,
aquellas con pocos coeficientes, ya que el costo de obtención de los coeficientes se
incrementa con su número.
Un ejemplo gráfico son las figuras 3.7 y 3.8, de la descomposición Wavelet Discreta de
una imagen trasladada a colores sepia para una mayor identificación de los contornos.
La figura 3.8 representa 2 descomposiciones Wavelet. En donde; 1v (verticales),
1 h(horizontales), 1d(diagonales), representa la primera descomposición Wavelet de la
figura 4.7. Y 2a (aproximaciones), 2v(verticales), 2 h(horizontales) y 2d (diagonales)
representan la segunda descomposición Wavelet.
Figura 3.7.- Imagen Original.
Figura 3 .8 .- Imagen descompuesta en dos
niveles de descomposición.
3.6.-Conclusiones.
En este capítulo se observaron las propiedades de la Transformada Wavelet
Discreta (TWD) para su aplicación en la descomposición de imágenes.
Al aplicar una descomposición wavelet en una imagen se obtienen cuatro sub
matrices, las cuales poseen ciertos valores representativos en frecuencia de dicha
imagen. En estos casos las sub matrices de detalles diagonales, verticales y horizontales
sus valores son aproximadamente cero. La TWD es aplicable también en la compresión
de audio, la cual es una parte fundamental en la composición de un Archivo de Video.
Al momento de elegir una wavelet debemos tomar en cuenta las siguientes
características: deben ser ortogonales, biortogonales, para mayor practicidad deben
74
poseer un número reducido de coeficientes para que el procesamiento sea mucho más
rápido, así como tomar en cuenta el análisis multirresolución que brinda al tratar con
imágenes o con algún otro tipo de archivo. Debido a todas estas características, al
momento de elegir las wavelets con las que son más factibles de trabajar se eligieron la
wavelet Haar y la dauB4 las cuales cumplen con ser ortogonales, bi-ortoganales, soporte
compacto y conservación de energía.
3.7.-Referencias.
[1] FélixMartínezGiménez,AlfredoPerisManguillot,FranciscoRódenasEscribá.Tratamieto de señales digitales mediante wavelets y su uso con MATLAB. Editorial Club
Universitario, San Vicente (Alicante), 2004.
[2] Mallat, S., “A theory for multiresolution signal decomposition: The wavelet
representation”, IEEE Transactions on Pattern Analysis and Machine Intelligence
(PAMI), Vol. 11, No. 7, pp. 674 – 693, julio 1989.
[3] Ramesh (Neelsh) Neelamani, R. Quiroz, Zhigang Fan, Sanjeb Dash, and Richard
G. Baraniuk, JPEG Compression history estimation for color images, IEEE
Transactions on Image Processing 15, No. 6 (2006) 1365-1378.
[4] Arthur A. Petrosian, François G. Meyers., “Wavele ts in Signal and Image
Analysis”, ed. Kluwer Academic Plubishers. Vol. 19, 2002
[5]
Martin Vetterli, Jelena Kocevic, Wavelets and Subband Coding. Ed. PrenticeHall, 1995
[6]
Walker S. James, A Primer on Wavelets and their Scientific Applications,
Cha pman & Hall/CRC, 2003
[7] Lokenath Debnath,”Wavelets and Signal Processing”, Birkhauser, 2002, pp. 106.
[8] Nicholas G. Roland. “Fourier and Wavelet Representations of Functions” , Furman
University. Electronic Journal of Undergraduate Mathematics, Vol. 6, pp.1-12, 2000.
[9] Blanca Esther Carvajal Gámez, M.A. Acevedo Mosqueda, S. Luz Gómez
Coronel.”Ocultamiento de Video sobre Video mediante la Transformada Wavelet
Discreta”. Primer Encuentro de Estudiantes en Ciencias de la Computación. Centro de
Investigación en Cómputo IPN. Mayo 2007.
75
CAPITULO IV
DESARROLLO DEL ALGORITMO
PROPUESTO PARA APLICAR LA
ESTEGANOGRAFIA.
Introducción.
Se muestra el algoritmo para ocultar un archivo de Video con sus
correspondientes Audio y Video.
Un archivo de Video puede descomponerse en: Video sin Audio y su Audio. El
Video sin Audio, para manipularlo de una manera más sencilla, se tiene que
descomponer en cuadros y éstos a su vez se tendrán que almacenar para generar
finalmente el Video con la información oculta en ella. Al Video en donde se va a ocultar
la información lo llamaremos Video Base, y al Video que se desea ocultar se llamará
Video a Ocultar. Se establece el criterio del umbral, así como la manera de recuperar la
información oculta en el Video Base.
4.1.- Metodología para el desarrollo del algoritmo
esteganográfico.
Al diseñar un algoritmo para alguna aplicación es necesario no perder de vista
ciertos aspectos como planteamiento del problema, variables de entrada, objetiv o,
pruebas y resultados. Definidos estos puntos, y no teniendo dudas sobre el objetivo
podemos hacer el planteamiento de solución de nuestro problema de manera gráfica y
eso se logra con los Diagramas de flujo.
Metodología de Solución:
Objetivo
Variables de
Método de
Entrada.
Solución.
Separación del Audio
Proponer
un Video
algoritmo
Base(donde se va de cada uno de los
Videos.
esteganográfico
a ocultar).
que oculte un
Vide o con su Video a Ocultar Descomposición de
Videos
en
Audio, dentro de (video que se los
Imágenes.
otro archivo de desea ocultar).
Video.
Variables de Salida.
Video
Modificado(Video
Base
con
la
información del Video
a Ocultar).
Video
Recuperado(Video
a
Descomposición
wavelet para cada Ocultar extraído del
Video. Ocultamiento Video Modificado)
del Video.
76
Descomposición
Wavelet del audio del
respectivo Video a
Ocultar.
Se muestra un Diagrama de Flujo, figura 4.1, de manera sencilla para su fácil
entendimiento:
Figura 4.1.-Diagrama de Flujo del Algoritmo Esteganográfico.
77
4.2.-Descomposición del Video Base y del Video a
Ocultar.
Es necesario descomponer los respectivos Videos en cuadros [1], se eligieron los
videos con una calidad y fidelidad HIGH MOTION indicado anteriormente (ver
capítulo III). En donde, un Video High Motion posee una tasa de Transmisión de 24
cuadros por segundo. Los videos tienen una duración de 2 hrs., en dos horas se tiene
7200 segundos, por 24 cuadros que posee cada segundo da un valor de 172 800 cuadros
reproducidos en una película .
La descomposición se realiza de la sig uiente manera, se toma un fragmento del
Video Base y del Video a Ocultar y se inicia la descomposición cuadro por cuadro,
figura 4.2, a cada cuadro se le va asignando un nombre con la extensión de archivo de
imagen que mejor convenga, se eligió el JPEG por las cuestiones ya mencionadas [1],
[2].
Figura 4.2.- Descomposición del Video en Cuadros.
Un cuadro de imagen posee dos dimensiones que se definen como: el alto y el
ancho de dicha imagen. Por ejemplo, si se consulta las propiedades de una imagen sus
dimensiones pueden ser: 240*480 o 640*320, etc., en otras palabras, tiene 240
renglones por 480 columnas. ¿Qué define esto? : El número de píxeles que tiene en total
dicha imagen. Otro concepto necesario de entender: es que un píxel es una dirección de
la imagen que posee un valor que hace referencia al color de dicha imagen. En una
imagen de escala de grises tiene una resolución de 8 bits, es decir, solo podrá tener 28
combinaciones, en otras palabras, tiene una escala de grises de 0 a 255.
En una imagen RGB que proviene del inglés Red, Green, Blue, representa una
matriz en sus tonos de rojos, otra en tonos verdes y por consiguiente otra en azul, cada
una tiene una resolución de imagen, lo que conlleva una mayor cantidad de
combinaciones de colores y hasta una mejor fidelidad en detalles de dicha imagen, cada
matriz tiene una resolución de 8 bits por 3 que es la composición de la imagen, tenemos
una imagen de 24 bits. Que da una gama de colores de 16, 777, 216 lo cual es una gran
78
cantidad de información para la imagen. Cada píxel puede tener un valor muy parecido
al contiguo, por lo tanto se puede alterar sin afectar visualmente la imagen.
El video High Motion posee gran fidelidad y calidad en la resolución de las
imágenes al momento de descomponerla en cuadros. Dichas imágenes están en RGB,
por consiguiente, una imagen tiene matrices características como se muestra en la figura
4.3 [1], [2].
Figura 4.3.- Descomposición de una imagen en sus componentes matriciales RGB.
Un video en el transcurso de su manipulación sufre cambios, y sus valores
también, un Video junto con su Audio y su composición de cuadros varía en cada
retransmisión [1].
4.3.- Parámetros estadísticos.
Existen algunas herramientas en la estadística que nos ayudan a modelar o a
estudiar variables no determinísticas, es decir, no predecibles en un instante de tiempo.
Es necesario conocer que el archivo de video que se eligió junto con su
respectivo audio, tendrá valores no conocidos a priori, ya que se le pudo haber agregado
ruido, o haber sufrido alguna alteración de su estado original [3], por lo tanto, es
necesario tener ciertos parámetros para conocer hasta qué grado se lle gó a modificar.
Se exponen algunas herramientas utilizadas en la descripción del video:
Desviación estándar :
Es una medida de dispersión (significa el grado
de distanciamiento de un conjunto de valores respecto a su valor medio) usada en
estadística, y nos dice cuánto tienden a alejarse los valores puntuales del promedio en
una distribución (en este caso la distribución es nuestro video).
79
La ecuación que define a la desviación estándar está dada por:
σ =
(4.1)
m
∑ ( xl − x) 2 / m ,
l =1
en donde xl es el valor de cada coeficiente tomado del renglón o columna de la matriz
característica correspondiente, m es el número total de coeficientes del renglón o
columna y x es el valor de la media [1] que se obtiene a partir de:
(4.2)
m
x = ∑ xl / m
l =1
Covarianza :
Es una medida de dispersión entre dos variables aleatorias, en donde
su valor indica la relación existente. Un valor cero indica que no se tiene relac ión alguna entre
ellas, y un valor diferente de cero indica su medida de relación.
Para obtener la covarianza de la matriz imagen, debemos obtener la covarianza de cada uno de
los componentes de la matriz, la fórmula para obtener la covarianza es dada a continuación:
C x, y =
1 m
∑
n i =1
∑ (x
n
i, j
)(
− x y i, j − y
j =1
)
(4.3)
en donde,
xi , j e yi , j son cada uno de los elementos que conformanlas sub − matrices de la imagen .
y x e y es la media de las matrices.
4.4.- Criterio del umbral.
Para insertar la información y cumplir con el objetivo de la esteganografía de
que el mensaje oculto llegue a buenas manos y no se note dicho mensaje , el método de
inserción no debe tener un comportamiento claro, si no todo lo contrario, debe
comportarse lo más caótico posible [1]. Esto se logra con la desviación estándar, ya que
para cada imagen y audio dicha desviación es totalmente diferente. La desviación
estándar sirve para conocer los lugares seguros, sobre el Video Base, para ocultar la
información del Video a Ocultar.
Al determinar la desviación estándar de la imagen, se realiza el recorrido de cada
uno de los pixeles que la conforman, al compa rar el valor del píxel extraído con el valor
de la desviación estándar debe de cumplir la siguiente condición dada la matriz de la
imagen x [r,c,k] :
x r, c, k  ≤σ
(4.4)
80
en donde r, c, y k es la posición en la columna, el renglón y la matriz deseada,
respectivamente. Esta condición se utiliza para elegir las zonas en donde se van a
ocultar el Video y el Audio dentro del Video Base.
Si el valor del píxel cumple con la condición de 4.4, se aplica la covarianza del
píxel en el que se este posicionado en ese momento, a continuación se vuelve a realizar
el recorrido con cada de las las sub-matrices obtenidas de la descomposición Wavelet de
los componentes RGB de la imagen. Si no existe una fuerte covarianza entre ellas se
puede ocultar la información.
Se aplica un doble mecanismo de seguridad para mantener la característica de
robustez del algoritmo, ya que cada vez que se transmita el Video la desviación estándar
como la covarianza serán diferentes, por consiguiente no tendrá un patrón definido a
seguir y será difícil extraer la información insertada.
Como es un objetivo insertar el audio y el video dentro de una sub imagen que
se obtiene de la descomposición del video, se necesita compactar el video junto con el
audio para insertar la información, la herramienta para la compactación es la
Transformada Wavelet Discreta (TWD) que se eligió por las característic as
mencionadas en el capítulo III.
Así se introduce con la información para cada una de las componentes en RGB ,
esto se realiza ya que el tamaño de l Video a Ocultar así como del audio puede ser mayor
que el Video Base.
De manera paralela se construye una tabla. Dicha tabla contiene “1” para
indicar que en esa posición se inserto la información o un “0” para indicar que no hay
información insertada. Esta medida de seguridad se debe a que como el video se
transmitirá a través de un medio de transmisión no ideal, nos asegura que no se extraiga
información que haya sido afectada por el ruido durante la transmisión.
4.5.- Aplicación de la Transformada Wavelet
Discreta para los flujos de audio y video para el
Video Base y el Video a Ocultar.
Originalmente se tiene un Video Base y un Video a Ocultar, separados de su
Audio cada uno, y además fragmentados en los cuadros que los componen, se aplica el
siguiente algoritmo.
Video Base: Se le aplica solamente una vez la TWD Haar arrojando las cuatro sub
matrices: aproximaciones (a[m,n]) , detalles horizontales (h[m,n]), detalles verticales
(v[m,n]) y detalles diagonales (d[m,n]) [3],[4] anteriormente mencionadas y descritas,
en la figura 4.4.
81
Figura 4 .4.- Bloque de descomposición wavelet para una imagen
Nota: El Audio se almacena de manera aparte y no sufre alteración alguna
Su descomposición vista en imágenes en la figura 4.5.
Figura 4.5.- Descomposición en sub imágenes del Video Base.
82
Video a Ocultar: Debido al tamaño que puede ir variando para cada muestra de
Video se debe de aplicar la compactación del archivo ya que no es posible que quepa
todo dentro de la descomposición Wavelet del Video Base así que se opto por aplicarle
dos veces la TWD, figura 4.6 [10].
Figura 4 .6.- Bloque de descomposición wavelet para una imagen.
Solo se le aplica a la matriz de Aproximaciones, se obtiene la siguiente descomposición,
figura 4.7:
A)
Figura 4.7.-Doble descomposición de la imagen del Video a Ocultar.
83
Nótese que la matriz de Aproximaciones A) se descompuso nuevamente en sus
sub matrices características arrojando las descomposiciones Ab (Detalles Horizontales),
Ac (Detalles Verticales) y Ad (Detalles Diagonales), respectivamente [1],[4],[5].
Todas las demás sub-matrices obtenidas son almacenadas de manera
independiente , y así empezar aplicar el Criterio del Umbral, las sub matrices que se
eligen es la sub- matriz de Aproximaciones y de Detalles Horizontales del Video a
Ocultar dentro de la sub-matriz de Aproximaciones y de Detalles Horizontales del
Video Base.
A continuación, de manera paralela se va manipulando el audio, un archivo de
audio es un vector renglón que tiene como longitud el número de muestras extraídas
durante el tiempo de grabación, dicho vector es obtenido en la separación del Video a
Ocultar junto con el Video sin Audio. Dicho audio se almacena en un archivo con
extensión wav que fue elegido como estándar ya que es el más comúnmente utilizado
en el Sistema Operativo Windows. Para las primeras investigaciones se toma solamente
una muestra de 3 minutos de Audio arrojando un vector con más de un millón de
muestras, figura 4.8, del Video a Ocultar, se le aplica la descomposición Wavelet dos
vece s debido al costo de procesamiento así que se comprimió el archivo original de
audio a una cuarta parte del vector original, ahorrando espacio de almacenamiento, así
como reducir el tiempo de procesamiento, figura 4.9, del Video del Video Base en la sub
matriz de Detalles Verticales [1]. De la descomposición Wavelet aplicada solamente se
conserva el vector obtenido de la descomposición con el filtro Pasa Bajas ya que como
se menciono en el capítulo II al ocultar información en dicho sub vector de
aproximaciones el oído humano lo va interpretar como ruido de fondo, también es
debido a que como se menciono en el capítulo IV dicho filtro devuelve el vector de
aproximaciones el cual contiene la mayor parte de información de la señal original.
Audio Original.
1
Amplitud de muestra.
0.5
0
-0.5
-1
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
4
Figura 4.8 .- Audio del Video a Ocultar.
Figura 4.9.- Descomposición del Audio.
El lugar indicado para ocultar dichas muestras es dado por el Criterio del
Umbra l. Se utiliza de manera conjunta un vector con una longitud igual al del vector de
audio comprimido con la Transformada Wavelet Discreta, en dicho vector estará
almacenando las posiciones de la sub matriz de Verticales en donde se ocultando el
audio. Esto es para que el momento de recuperar no se extraiga algún elemento que no
le corresponda de manera original a dicha sub matriz, también agiliza el proceso de
localización de dichos elementos. Al video resultante se le nombra Video Modificado,
84
porque le insertada la información no perteneciente al Video Base Original, es decir, le
agregamos ruido a la imagen [1], [2].
4.6.-Recuperación de la Información.
La manera de recuperar la información es la siguiente:
Creado el Video Modificado el cual contiene la información se aplica el mismo criterio
que el mencionado para ocultar. Todos los valores que cumplan con la condición 4.4,
que su valor de dependencia no sea elevado y que en la tabla de dirección se despliegue
un “1” la cual es la posición correcta en donde se inserto la información del Video a
Ocultar. Así se genera una nueva matriz que contiene la sub matriz de aproximaciones y
verticales oculta en cada una de los componentes RGB de la imagen del Video
Modificado.
El problema que radica en la reconstrucción de la imagen consiste en que si se
elige un valor que no corresponde o si la matriz en ge neral se rellena de ceros la imagen
se desplegará en tonos rojos, azules o verdes, dependiendo de la matriz predominante en
la reconstrucción.
Obtenidas las cuatros sub matrices, que devuelve la descomposición Wavelet, se
le debe de aplicar la Transformada Wavelet Discreta Inversa (TWDI).
4.7.-Transformada Wavelet Discreta Inversa.
Al igual que cualquier otra Transformada, la Transformada Wavelet es
reversible , figura 4.10, es decir, a partir de los coeficientes obtenidos en la
descomposición de la wavelet que son de aproximación, de detalles , verticales y
horizontales, es posible reconstruir la señal de entrada original mediante operaciones de
filtrado [1],[4],[5],[9]. Esto es cierto si la wavelet satisface la propiedad de
reconstrucción perfecta, condición que impone ciertas restricciones a los coeficientes de
los filtros paso alto y paso bajo (ortogonalidad y biortogonalidad, anteriormente
mencionado en el Capítulo III) [4], [5], [9].
85
Figura 4.10.-Transformada Wavelet Discreta Inversa.
En for ma más gene ral, la señal puede reconstruirse a partir de los coeficientes
obtenidos de la descomposición Wavelet de la siguiente manera :
u [k ,l ] =
∞
∞
∑∑
k =−∞ l =−∞
xbajas[k, l ]g [− n + 2 k ,−m + 2l ] + xaltas[k ,l ]h [− n + 2 k,− m + 2 l ]
(4.9)
donde xbajas y xaltas son los coeficientes de los filtros de reconstrucción paso bajo y paso
alto, respectivamente. La figura 4.10 ilustra la correspondiente transformada wavelet
inversa. Puede notarse que en la T ransformada Wavelet Discreta I nversa(TWDI) , previo
al proceso de filtrado, se hace necesario insertar ceros en los coeficientes de detalles y
de aproximación (dicha operación es denotada con el símbolo 2). Esto permite que el
número de coeficientes a la entrada de cada filtro se duplique, obteniéndose a la salida
una señal del doble del tamaño de la señal de entrada.
Esta manera de recuperar la información se aplica tanto para el Video como para
el Audio. Para recuperar la información del Video Oculto debemos de aplicar la TWDI
de igual manera el mismo número de veces que se aplico la TWD.
Para recuperar el audio se aplica una vez la TWDI en la sub matriz de verticales
de la descomposición Wavelet del Video Base.
86
El siguiente paso que debe de importar es conocer el nivel de ruido introducido
para que no sea perceptible al ojo humano.
Existen herramientas matemáticas utilizadas con frecuencia en el Procesamiento
Digital de Imágenes para medir dichas características, entre ellas están: Error Medio
Cuadrático (MSE), Relación Señal a Ruido Pico (PSNR), la Correlación, la Energía de
las imágenes [6], [7].
Tales mediciones las aplicaremos tanto en el Video Base como en el Video
Modificado , así como en el Video Recuperado.
Error Cuadrático Medio (MSE):
Representa la diferencia
entre los puntos originales y los nuevos puntos calculados en el proceso de
transformación. La escala de transformación indica en qué medida se puede escalar el
mapa de bits de dicha imagen que se está digitalizando hasta igualarse con las
coordenadas de la imagen real [5],[6],[7], es decir, a una aproximación entre el valor
original y el nuevo valor que se modificó en la imagen, y está representada por la
siguiente expresión:
MSE =
1 m −1 n−1 2
2
∑∑ ∑ I (i, j , k ) − K (i, j, k )
3mn i = 0 j =0 k = 0
(4.10)
en donde I representa la imagen original y K la nueva imagen modificada, así como (i, j,
k) representan las coordenadas actuales de los píxeles que se están observando en dicha
matriz.
i es la posición actual del renglón.
j es la posición actual de la columna.
k es la posición de la matriz que se está observando. Recordando que son imágenes
RGB, es decir, tridimensionales.
Relación Señal A Ruido Pico (PSNR):
Es un término muy
utilizado para medir el máximo valor posible de un píxel que contiene información de la
imagen y el valor del ruido que se agregó al momento de realizar dichas manipulaciones
que afectan la fide lidad de la imagen recuperada, esta relación está dada en decibeles.
Los valores comprendidos para una imagen de 24 bits RGB se encuentran entre los 30
y 50 dB, medida dada por la siguiente expresión [5],[6],[7]:
 MAX 2I 
 MAX I 
PSNR = 10 log10 
 = 20 log10  MSE 
MSE




(4.11)
2
donde, MAX I es el máximo valor tomado de un píxel de la imagen original.
87
MSE está dado por el Error Cuadrático Medio.
Correlación : En el procesamiento digital de señales, la correlación cruzada
es una medida de semejanza de dos señales, de uso general para encontrar
características en una señal desconocida comparándola con una que ya es conocida por
nosotros, tiene usos en el reconocimiento de patrones y el criptoanálisis [6],[7],[8]. En
probabilidad y estadística, la correlación indica la fuerza y la dirección de una relación
lineal entre dos variables aleatorias. La correlación nos va a indicar qué tan parecidas
son las imágenes que hemos estado manipulando. Devuelve un valor entre 0 y 1 que
indica el porcentaje de parentesco entre dichas imágenes, en donde 0 ni dica que no
existe ningún patrón que se comporte de manera semejante a la imagen original y uno
indica el máximo parentesco posible en dichas imágenes. Tal herramienta está dada por
la siguiente fórmula [7]:
N −1
rxy [k ] = ∑ x[n] • y[n − k ] k = 0,± 1,±2 K
(4.12)
n =0
Ya oculto el audio y el video en el Video Base, y aplicando el Algoritmo de
Ocultamiento, se realiza la recuperación de la información mediante la Transformada
Wavelet Discreta Inversa para recuperar tanto la información para obtener el Video
Recuperado y el Video Modificado. P ara recuperar el audio oculto se utiliza la misma
herramienta mencionada.
4.8.- Conclusiones.
En general el desarrollo del algoritmo consta de las siguientes etapas
primordiales para la aplicación del algoritmo esteganográfico, que constan de:
Separar el Audio del Video. Se descompone el Video Base y el Video a Ocultar
en cuadros de imagen.
Aplicar la descomposición Wavelet, una vez para el Video Base y dos para el
Video a Ocultar.
Compactar el archivo de Audio con el fin de que pueda ser introducido en su
totalidad dentro de la sub matriz de verticales del Video Base.
Definir e l criterio del umbral para esta investigación.
Definir la forma de recuperación de la información.
88
4.9.-Referencias.
[1] Blanca Esther Carvajal Gámez, M.A. Acevedo Mos queda, S. Luz Gómez
Coronel.”Ocultamiento de Video sobre Video mediante la Transformada Wavelet
Discreta”. Primer Encuentro de Estudiantes en Ciencias de la Computación. Centro de
Investigación en Cómputo IPN. Mayo 2007.
[2] Flores Pichardo A., Hernández Treviño Rodolfo, Vargas Hernández Miguel Ángel
“Introducción, Conceptos Básicos, Ocultamiento de Datos, Implementación, Pruebas,
Resultados y Conclusiones de: Ocultamiento de Video”. Tesis. 2005. ESIME-Zac.-IPN
[3] Cvejic, Nedeljko, “Algorithms for audio watermarking and steganography”,
Department of Electrical and Information Engineering, Information Processing
Laboratory, University of Oulu, P.O.Box 4500, FIN-90014 University of Oulu, Finland
2004.
[4] Martin Vetterli, Jelena Kocevic, Wavelets and Subband Coding. Ed. Prentice-Hall,
1995
[5] Lokenath Debnath,”Wavelets and Signal Processing”, Birkhauser, 2002, pp. 106.
[6] Sanjit K. Mitra”Digital Processing a computer based approach”, ed. McGraw-Hill
International, 2a ed., 2003.
[7] AshokAmbardar. “Procesamiento de Señales analógicas y digitales”. Thomson
Learning ,2003.
[8] Vyacheslav P. Tuzlukov, Signal Processing Noise, Ed. CRC Press, 2002
[9] Walker S. James, A Primer on Wavelets and their Scientific Applications, Chapman
& Hall/CRC, 2003.
89
CAPITULO V.
ATAQUES.
Introducción.
Una vez aplicada la esteganografía a cualquier tipo de archivo, éste puede sufrir
ciertas variaciones en la información original, el cual es conocido como ataques, los
cuales pueden ser intencionados y no intencionados. Los ataques intencionados
pretenden obtener la información oculta en el archivo. Pero si la técnica de ocultar
cumple con ser robusto y seguro, será difícil que se llegue a perder la información.
Los ataques no intencionados son aquellos que se pre sentan de manera
accidental afectando el canal de transmisión.
En este capítulo se presentan algunos ataques con diferentes tipos de ruido para
demostrar si las imágenes se distorsionan o se ven degradadas.
Ataques no intencionados:
Generalmente este tipo de ataques
pueden estar presentes en las siguientes facetas :
•
•
En el propio proceso de recuperación de la imagen con la información oculta,
como se mencionó anteriormente, se rellenan ciertos puntos de la matriz
descriptiva de la imagen con información que no es la original.
La naturaleza del propio medio de Transmisión, ya que no es el ideal, hace que
se le adicione ruido a nuestra imagen.
Ataques intencionados:
Existen diferentes tipos de ataques al
momento de transmitir un archivo, los tipos de ataques más representativos son:
compresión, ruido y aplicación de combinaciones de herramientas estocásticas con el fin
de encontrar la manera de recuperar la información.
5.1.-Compresión.
Cuando se desea mandar el archivo a través de un medio de Transmisión es
posible que se le desee aplicar algún método de compresión. Se debe recordar que si
aplicamos un método de compresión a la información a ocultar, si se comprime una y
otra vez puede ser que toda la información no sea recuperada. Se muestran algunos
ejemplos de compresiones y cómo afectan en el mapa de bits de las imágenes. Como
aclaración, para agilizar más el procesamiento del histograma se trasladó la imagen
obtenida en la descomposición del Video que se encuentra en RGB a escala de grises.
En la figura 5.1 se muestra la imagen con compresión utilizando la daub4, en la
figura 5.2 el histograma correspondiente. En la figura 5.3 se muestra la imagen con
compresión Haar, la figura 5.4 muestra el correspondiente histograma de la figura 5.3.
90
Tabla 5.1.- Ejemplos de Compresión en el manejo de Imágenes que integran un Video.
Histograma del Video Base.
2500
Numero de elementos.
2000
1500
1000
500
0
Tonos de gris.
0
Figura 5 .1.- Octopuss con la TWD dB4.
50
100
150
200
250
Figura 5 .2.- Histograma Octopuss con la TWD
dB4.
Histograma del Video Base con la TWD Haar.
2500
Numero de elementos.
2000
1500
1000
500
0
Tonos de gris.
0
Figura 5 .3.- Octopuss con la TWD Haar.
50
100
150
200
250
Figura 5 .4.- Histograma Octopuss con la TWD
Haar.
5.2.-Tipos de Ruido.
Existen diferentes tipos de ruido que se pueden añadir a la imagen, al audio, al
video o al texto, según sea el caso. Cuando la señal es recibida después de una
transmisión a cualquier distancia, está es contaminada por ruido. El término ruido se
refiere a cualquier cambio no deseado que puede alterar los valores originales de
nuestra señal. El modelo más simple es el ruido aditivo [1].
Ruido aditivo:
Este ruido suele agregarse a cualesquiera de los valores
originales. Si es el caso de una imagen, se le añade un valor al original de un píxel de
información la cual tiene la siguiente forma [1]:
f =s+n
(5.1)
donde f es la señal contaminada, s representa la señal original y n el ruido adicio nado
en el transcurso de cualquier transmisión. En la figura 5.4 se presenta la imagen
Octopuss original sin adición de ruido, así como su respectivo histograma trasladado a
91
escala de grises. La figura 5.5 exhibe la imagen del Octopus con ruido aditivo, as í como
la figura 5.7 representa su histograma en escala de grises.
Numero de elemento que contienen esatonalidad de gris
Imagen Octopuss
2500
2000
1500
1000
500
0
Tonalidades de gris
0
Figura 5 .5.- Octopuss.
50
100
150
200
250
Figura 5.6.- Histograma del Octopus sin ninguna
adición de ruido.
Numero de elemento que contienen esatonalidad de gris
Imagen Octopuss
2500
2000
1500
1000
500
0
Tonalidades de gris
0
Figura 5 .7.- Octopuss afectado por ruido aditivo.
50
100
150
200
250
Figura 5 .8.- Histograma del Octopuss afectado
por ruido aditivo.
Ruido impulsivo:
Es uno de los más agresivos en nuestras imágenes,
video o audio, ya que este se suma a algunos valores contenidos en nuestros vectores, ya
sea en un píxel de una imagen o en un punto de nuestro vector si es audio. La cantidad
de información afectada está dada por la densidad del ruido y está expresada por la
ecuación 5.2:
senal con ruido = s + numel( f )
(5.2)
en donde s es la densidad del ruido dada y numel (f) es el número de posiciones de la
señal f. Este ruido es uno de los más notorios al momento de recuperar la señal. Se
muestra en la figura 5.9 la imagen de Alizee sin adición de algún tipo de ruido, así como
la figura 5.10 representa el histograma de dicha imagen trasladado a su escala de grises.
Las figuras 5.11 y 5.13 muestran la imagen de Alizee con ruido impulsivo adicionado
con distinta distribución de densidad, así como sus respectivos histogramas figura 5.12
y 5.14.
92
Numero de elemento que contienen esatonalidad de gris
Imagen Octopuss
4500
4000
3500
3000
2500
2000
1500
1000
500
0
Tonalidades de gris
0
Figura 5.9.- Alizee.
50
100
150
200
250
Figura 5 .10 .-Histograma de la imagen Alizee
resultado de la descomposición del Video.
Numero de elemento que contienen esatonalidad de gris
Imagen Octopuss
4500
4000
3500
3000
2500
2000
1500
1000
500
0
Tonalidades de gris
0
Figura 5 .11.- Alizee afectado por ruido impulsivo
con una densidad 0.01.
50
100
150
200
250
Figura 5.12.-Histograma de la imagen de Alizee
adicionado con ruido impulsivo.
Numero de elemento que contienen esatonalidad de gris
Imagen Octopuss
4500
4000
3500
3000
2500
2000
1500
1000
500
0
Tonalidades de gris
0
Figura 5 .13.- Alizee afectada por ruido impulsivo
con una densidad de 0.03.
50
100
150
200
250
Figura 5.14.-Histograma de la imagen de Alizee
adicionado con ruido impulsivo.
En las figuras 5.9, 5.11 y 5.13 se le agrego ruido impulsivo con diferentes niveles de
densidad, dichos valores aun no son tan graves para afectar a la imagen al grado de no
poder extraer la información que se insertó. En las figuras 5.10, 5.12 y 5.14 se muestran
los histogramas correspondientes a cada imagen afectada por el ruido, dicho histograma
muestra visualmente que los niveles de energía no han sido afectados drásticamente.
93
Ruido Gaussiano :
En las siguientes figuras se presenta n imágenes
obtenidas en la descomposición del Video Base. La Figura 5.15 muestra la imagen de
los Simpson sin ninguna alteración debido al ruido, la Figura 5.16 exhibe el histograma
en escala de grises de dicha imagen. Las figuras 5.17 y 5.19 expresan las imágenes de
los Simpson con diferente varianza del ruido Gaussiano adicionado y con un valor de
media de 0.
Numero de elemento que contienen esatonalidad de gris
Imagen Octopuss
2500
2000
1500
1000
500
0
Tonalidades de gris
0
Figura 5.15.- Los Simpson.
50
100
150
200
250
Figura 5 .16.-Histograma de la imagen de los
Simpson sin ruido adicionado.
Numero de elemento que contienen esatonalidad de gris
Imagen Octopuss
4500
4000
3500
3000
2500
2000
1500
1000
500
0
Tonalidades de gris
0
Figura 5.17 .- Los Simpson con ruido gaussiano.
con varianza 0.01 y media 0.
50
100
150
200
250
Figura 5 .18.-Histograma de la imagen de los
Simpson sin ruido adicionado.
Numero de elemento que contienen esatonalidad de gris
Imagen Octopuss
5000
4000
3000
2000
1000
0
Tonalidades de gris
0
Figura 5 .19 .- Los Simpson con ruido gaussiano
con varianza 0.03 y media 0.
50
100
150
200
250
Figura 5 .20.-Histograma de la imagen de los
Simpson sin ruido adicionado.
94
De las figuras anteriores se puede visualizar que el histograma fue tomando forma de
una dis tribución gaussiana, después de verse afectada con el ruido gaussiano.
Los modelos anteriores de distribución de ruido se consideran ruido en el
dominio espacial. Los valores del ruido espacial son números aleatorios en la entrada de
la función, caracterizados por la función de densidad de probabilidad (FDP), o bien, por
la correspondiente función de distribución acumulativa (FDA). Los números aleatorios
generados por los tipos de distribuciones siguen algunas reglas simples de la Teoría de
Probabilidad [2].
La tabla 5.2 muestra las ecuaciones generadoras de números aleatorios.
T abla 5.2.- Generación de variables Aleatorias.
FDP
Gaussiano
2
2
1
PZ ( z ) =
e − (z − a ) / 2 b
2πb
Media y varianza
FDA
m=a
σ 2 = b2
σ 2 = (a − m) Pa + (b − m) Pb
x
z<a
0

Pz (z ) =  Pa
a <= z < b
P + P
b <= z
b
 a
Entrada Aleatoria.
Fz (z ) =
∫ p (v)dv
z
−∞
Generador
Impulsivo
 Pa z = a

Pz (z ) =  Pb z = b
0
en otro caso

b>a
m = aPa + bPb
Entrada Aleatoria.
2
2
5.3.-Conclusión.
Se aplico distintos ruidos a cada imagen obtenidas de la descomposición del
Video Base así como del Video a Ocultar, dichas pruebas con el ruido simula ser
ataques que se pue den presentar al momento de enviar información a través de un canal
de transmisión no ideal. Se pueden visualizar de manera gráfica los resultados
obtenidos, así como poder realizar una comparación de valores, volviendo así a nuestro
algoritmo capaz de soportar diferentes circunstancias de ataques por las que se puede
ver afectado en su transmisión.
5.4.-Referencias.
[1] Sanjit K. Mitra “Digital Signal Processing a computer based approach”, Ed. Mc
Graw-Hill International, 2a ed., pp. 88-94.
[2] Izlian Yolanda Orea Flores, “Marcas de Agua Robustas en Imágenes Digitales con
formato BMP”, Tesis. SEPI-ESIME-IPN, 2006.
95
CAPITULO VI.
PRUEBAS E IMPLEMENTACION
DEL ALGORITMO
ESTEGANOGRAFICO.
Introducción.
En este capítulo se realiza la implementación del algoritmo esteganográfico, así
como pruebas de ataques con los ruidos más comunes en un canal de transmisión, estos
ruidos son: ruido gaussiano, ruido multiplicativo y ruido impulsivo.
Se visualiza gráficamente los histogramas de cada matriz que componen una
imagen RGB, se hará para confirmar que el Ancho de Banda ocupado por el Video Base
no es alterado aún con la inserción del ruido y la información.
6.1.-Inserción de la información.
Para ocultar la información en la imagen se obtiene la desviación estándar (σ),
con este resultado se puede definir el valor de umbral. Como se mencionó
anteriormente, los lugares donde se puede ocultar información en una imagen, son
aquellos lugares donde el valor del píxel está por debajo del valor del umbral. Este valor
del umbral se elige como 3σ. Si se cumple con este criterio podemos asegurar que la
zona de la imagen a la que pertenece el píxel modificado no presenta ninguna
modificación en forma visual.
En la Tabla 6.1 muestra la manera en que se realiza el ocultamiento de la
información.
96
Tabla 7.1.- Visualización gráfica de ocultamiento de información (Audio y Video).
Video Base.
Video a Ocultar.
a)
b)
σ = 41.77
99
99
99
99
99
99
99
99
c)
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
umbral = σ * 3
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
246
246
246
246
246
246
246
246
243
243
243
243
243
243
243
243
244
244
244
244
244
244
244
244
246
246
246
246
246
246
246
246
244
244
244
244
244
244
244
244
239
239
239
239
239
239
239
239
246
246
246
246
246
246
246
246
d)
97
243
243
243
243
243
243
243
243
e)
99
99
99
99
99
99
99
99
f)
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
99
246
99
99
99
99
99
99
99
g)
246
246
246
246
246
246
246
246
243
243
243
243
243
243
243
243
244
244
244
244
244
244
244
244
246
246
246
246
246
246
246
246
244
244
244
244
244
244
244
244
239
239
239
239
239
239
239
239
246
246
246
246
246
246
246
246
h)
En la Tabla 6.1 figura a) se presenta una imagen obtenida en la descomposición del
Video Base con la TWD Haar, esta imagen tiene por separado su flujo de audio. En la
misma Tabla figura b) se muestra la imagen obtenida en la doble descomposición del
Video a Ocultar con la TWD daub4. La imagen c) muestra una zona de la imagen
(señalada por una flecha) donde el valor de sus pixeles cumple con el valor del umbral,
así mismo, se presenta una tabla con estos valores. En la imagen d) se muestra una zona
del video a ocultar y los valores de los pixeles respectivos. En la tabla en g) se muestra
como uno de los valores de la tabla h) que representa los valores de los pixeles de la
imagen a ocultar se inserta en la tabla g) de los valores de los pixeles de la imagen
perteneciente al Video Base. Las imágenes en f) y e) muestran en donde se insertó la
imagen sobre el Video Base.
Aplicando la TDW:
La Transformada Wavelet Discreta se aplica directamente a la descomposición
del video en las sub imágenes, así como también a cada plano de la composición de una
imagen RGB. Al momento de aplicar dicha Transformada se obtiene 4 sub imágenes de
M/2 x N/2, obtenidas en la descomposición .Cada descomposición es la representación
gráfica de la imagen de sus frecuencias, es decir, bajas, medias bajas, medias altas y
altas. Se sigue el mismo criterio para cada imagen que conforma el Video Base y el
Video a Ocultar. El proceso de inserción es el mismo que el propuesto en el capítulo IV.
98
243
243
243
243
243
243
243
243
6.2.- Capacidad de inserción con la TWD.
Se muestra las pruebas que se realizaron con diferentes videos y sus respectivos
flujos de audio. Cabe resaltar que se indican las abreviaturas que se utilizan para cada
prueba:
Tabla 6.2.- Características a considerar en la inserción de la información.
Medidas de la imagen
Máxima Información Insertada
Energía en la Imagen Original
Energía de la Imagen con Información
Índice de Correlación
Cantidad de Infor mación Insertada.
MI
MII
EIO
EII
IC
CII
En seguida se expone la Tabla 6.3 que indica la imagen original del Video Base
y la imagen con información del Video Modificado. En el histograma correspondiente
al Video Modificado se puede observar como no existe n variaciones en lo s niveles de
energía en cada uno de sus componentes de los niveles de colores. Así se garantiza que
la información agregada no sea de fácil percepción.
Tabla 6.3.- Visualización gráfica del Histograma del Video Base y del Video Modificado.
Video Base.
Histograma.
Histograma del Video Base
Numero de elementos de tonos de gris
4500
4000
3500
3000
2500
2000
1500
1000
500
0
Tonos de gris
0
Video Modificado.
50
100
150
200
250
200
250
Histograma.
Histograma del Video Modificado
4500
4000
Numero de elementos.
3500
3000
2500
2000
1500
1000
500
0
Tonos de gris.
0
50
100
150
99
Se exhibe cada una de las imágenes de los distintos videos muestras mencionando su
capacidad de inserción de información de acuerdo con el criterio del umbral, así como
algunas características indicada s en la Tabla 6.2.
Tabla 6 .4.- Capacidad de Inserción de Información en el Video Base.
Video Base
Capacidad de Inserción.
Dimensiones de la imagen.
Video Base
MI=388.8Kb MII=23.520Kb
720*540.
Capacidad de Inserción.
Dimensiones de la imagen.
MI=110.6Kb MII=12.75Kb
384*288.
100
Video Base
Capacidad de Inserción.
Dimensiones de la imagen.
Video Base
MI=172.8Kb MII=29.020Kb
480*360
Capacidad de Inserción.
Dimensiones de la imagen.
MI=203Kb MII=26.743Kb
632*332
6.3.-Agregando ruido a la imagen.
Un ataque común en las transmisiones de archivos a través de los canales es el
Ruido, que se suma a la información y en muchas ocasiones la información original no
llega completamente o llega incorrecta. Es por eso que para conocer qué tan robusto es
el método de ocultamiento, se realizan pruebas con los tipos de ruido anteriormente
mencionados.
6.3.1.-Ruido multiplicativo adicionado a cada
imagen que conforma el video.
Como se observó en el capítulo IV, el ruido puede distorsionar las imágenes, el
cambio en ellas puede ser notorio o en algunas ocasiones el ruido no afecta visualmente
a la imagen. En cada una de las siguientes tablas expuestas se muestra el histograma del
Video Base con ruido adicionado y del Video Modificado obtenido.
101
Tabla 6.5.- Imagen con ruido multiplicativo con varianza 0.01.
IMAGEN PERTENECIENTE AL VIDEO
BASE CON INFORMACIÓN OCULTA.
Histograma R Video Base.
Histograma R Video Modificado.
Histograma del Video Modificado R
Histograma del Video Base con Ruido Multiplicativo en R.
4500
4000
4000
3500
3500
Numero de elementos.
Numero de elementos.
5000
4500
3000
2500
2000
1500
1000
3000
2500
2000
1500
1000
500
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
Histograma G Video Base.
50
Histograma del Video Base con Ruido Multiplicativo en G.
200
250
Histograma del Video Modificado G
4000
4000
3500
3500
Numero de elementos.
4500
3000
2500
2000
1500
1000
3000
2500
2000
1500
1000
500
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
Histograma B en Video Base.
50
100
150
200
250
Histograma B Video Modificado.
Histograma del Video Base en B.
Histograma del Video Modificado en B.
4500
4500
4000
4000
3500
3500
Numero de elementos.
Numero de elementos.
150
Histograma G Video Modificado.
4500
Numero de elementos.
100
3000
2500
2000
1500
1000
3000
2500
2000
1500
1000
500
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
50
100
150
200
250
102
Gráfica del Audio Original.
Gráfica del Audio recuperado.
Audio Original.
Audio recuperado.
1
1
0.5
Amplitud de muestra.
Amplitud de muestra.
0.5
0
-0.5
0
-0.5
-1
-1.5
0
-1
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
-1.5
0
4
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
4
x 10
Ruido Multiplicativo.
Índice de Correlación.
Varianza = 0.01
0.9902
PSNR.
Energía.
Capacidad de ocultamiento.
40.0663Db
EIO=3.441e10 EII=3.44 e10
18,600Kb.
Tabla 6 .6.- Imagen del Video Base con Ruido Multiplicativo con varianza 0.001.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base .
Histograma R del Video Modificado.
Histograma del Video Modificado R.
4000
4000
3500
3500
3000
3000
Numero de elementos.
Numero de elementos.
Histograma del Video Base R con Ruido Multiplicativo.
2500
2000
1500
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
50
100
150
200
250
103
Histograma G del Video Base .
Histograma G del Video Modificado.
Histograma del Video Modificado G
Histograma del Video Base con Ruido Multiplicativo en G.
4500
4500
4000
4000
3500
Numero de elementos.
Numero de elementos.
3500
3000
2500
2000
1500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Histograma B del Video Base .
50
100
Histograma del Video Base con Ruido Multiplicativo en B.
250
Histograma del Video Modificado B
5000
4500
4500
4000
4000
3500
Numero de elementos.
Numero de elementos.
200
Histograma B del Video Modificado.
5000
3000
2500
2000
1500
1000
3500
3000
2500
2000
1500
1000
500
500
0
0
Tonos de gris.
0
50
100
150
200
Tonos de gris.
250
0
Gráfica del Audio Original.
50
100
200
250
Audio recuperado.
1
0.5
0.5
Amplitud de muestra.
1
0
-0.5
0
-0.5
-1
-1
-1.5
150
Gráfica del Audio Recuperado.
Audio Original.
Amplitud de muestra.
150
-1.5
0
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
Ruido Multiplicativo.
Indice de Correlación.
PSNR .
Energía.
Capacidad de ocultamiento.
4.5
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4
4.5
4
x 10
x 10
Varianza = 0.001
0.9981
46.5899dB
EIO=4.04e10 EII=3.5 e10
19,923Kb
104
En la tabla 6.5 y 6.6 se presentan la imagen del Video Base así como su respectivo
histograma correspondiente a las sub matrices RGB que lo integran, para dicho video se le
adiciona ruido multiplicativo con una varianza 0.01 y 0.001 respectivamente. Como la
densidad del ruido no es muy grave, las imágenes no son afectadas al grado de no poder
visualizarlas correctamente. Esto se puede comprobar con los histogramas
correspondientes. Como se puede observar con cada uno de sus componentes ya que no
sobre pasa el valor máximo tomado para cada sub matriz.
Como se puede observar en las tablas 6.5 y 6.6 el PSNR ha cambiado. El PSNR es
una medida que indica la calidad de la imagen, como se menciono en el capítulo V, lo ideal
es tener un PSNR de 50 dB este valor es el dado para una imagen digital de alta calidad.
Así que al tener un valor menor de varianza se tendrá un PSNR mayor, indicando
que la imagen afectada no ha perdido en su totalidad su calidad digital. Esto se debe de
aplicar en cada prueba expuesta en este capítulo.
Tabla 6.7.-Imagen del Vide o Base con Ruido Multiplicativo con varianza de 0.005.
IMAGEN PERTENECIENTE AL VIDEO
BASE CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Base con Ruido Multiplicativo en R.
Histograma del Video Modificado R
4500
4000
4000
3500
3500
Numero de elementos.
Numero de elementos.
4500
3000
2500
2000
1500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
250
0
50
100
150
200
250
105
Histograma G del Video Base.
Histograma G del Video Modificado.
Histograma del Video Base con Ruido Multiplicativo en G.
Histograma del Video Modificado G
4500
4500
4000
4000
3500
Numero de elementos.
Numero de elementos.
3500
3000
2500
2000
1500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
0
50
100
Tonos de gris.
150
200
250
0
Histograma B del Video Base.
50
150
200
250
Histograma B del Video Modificado.
Histograma del Video Base con Ruido Multiplicativo en B.
Histograma del Video Modificado B
5000
5000
4500
4500
4000
4000
3500
Numero de elementos.
Numero de elementos.
100
3000
2500
2000
1500
1000
3500
3000
2500
2000
1500
1000
500
500
0
0
Tonos de gris.
0
50
100
150
200
Tonos de gris.
250
0
Gráfica del Audio Original.
50
100
200
250
Gráfica del Audio Recuperado.
Audio Original.
Audio recuperado.
1
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
150
0
-0.5
0
-0.5
-1
-1
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
4
x 10
Ruido Multiplicativo.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
4
x 10
Varianza = 0.005
0.9955
42.0198dB
EIO=20.69e10 EII=20.68 e10
21,359Kb.
106
Tabla 6 .8.-Imagen del Video Base con Ruido Multiplicativo con varianza 0.12.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Base R modificado.
10000
10000
8000
8000
Numero de elementos.
Numero de elementos.
Histograma del Video Base R con ruido Multiplicativo.
6000
4000
6000
4000
2000
2000
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
0
200
50
Histograma G del Video Base.
150
200
250
Histograma G del Video Modificado.
Histograma del Video Base G con ruido Multiplicativo.
Histograma del Video Base G modificado.
9000
9000
8000
8000
7000
7000
Numero de elementos.
Numero de elementos.
100
250
6000
5000
4000
3000
6000
5000
4000
3000
2000
2000
1000
1000
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
50
100
150
200
107
250
Histograma B del Video Base.
Histograma B del Video Modificado.
Histograma del Video Base b modificado.
9000
9000
8000
8000
7000
7000
Numero de elementos.
Numero de elementos.
Histograma del Video Base B con ruido Multiplicativo.
6000
5000
4000
3000
6000
5000
4000
3000
2000
2000
1000
1000
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Gráfica del Audio Original.
50
100
Audio Original.
250
Audio recuperado.
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
200
Gráfica del Audio Recuperado.
1
0
-0.5
0
-0.5
-1
-1
-1.5
-1.5
150
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
4
4
x 10
Ruido Multiplicativo.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
Varianza = 0.12
0.911
40 dB.
EIO=6.07e09 EII=6.35e09
17,064Kb
En la tabla 6.7 y 6.8 la imagen del Video Base se le agrego ruido multiplicativo con
una varianza de 0.005 y 0.12 respectivamente. Para la imagen con ruido multiplicativo de
varianza 0.005 el ruido no afecto visualmente a la imagen y se corrobora con los
histogramas correspondiente s a las sub matrices RGB que lo integran. A diferencia de la
imagen con ruido multiplicativo de varianza de 0.12, esta imagen empieza a tener defectos
que son perceptibles para la vista. Para este último caso los de energía ya son afectados y
los histogramas lo corroboran ya que las magnitudes de cada muestra han cambiado
considerablemente. Sin embargo, aún con el cambio de magnitud podemos extraer la
información insertada.
108
Tabla 6 .9.-Imagen del Video Base con Ruido Multiplicativo con varianza 0.15.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Base R con ruido Multiplicativo.
Histograma del Video Base R modificado.
10000
8000
Numero de elementos.
Numero de elementos.
10000
6000
4000
8000
6000
4000
2000
2000
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Histograma G del Video Base.
50
150
200
250
Histograma G del Video Modificado.
Histograma del Video Base G con ruido Multiplicativo.
Histograma del Video Base G modificado.
9000
9000
8000
8000
7000
7000
Numero de elementos.
Numero de elementos.
100
6000
5000
4000
3000
6000
5000
4000
3000
2000
2000
1000
1000
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
250
0
50
100
150
200
250
109
Histograma B del Video Base .
Histograma B del Video Modificado.
Histograma del Video Base b modificado.
10000
9000
9000
8000
8000
7000
7000
Numero de elementos.
Numero de elementos.
Histograma del Video Base B con ruido Multiplicativo.
10000
6000
5000
4000
3000
6000
5000
4000
3000
2000
2000
1000
1000
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Gráfica del Audio Original.
50
100
200
250
Gráfica del Audio Recuperado.
Audio Original.
Audio recuperado.
1
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
150
0
-0.5
0
-0.5
-1
-1
-1.5
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
4
x 10
4
x 10
Ruido Multiplicativo.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
Varianza = 0.15
0.8773
39 dB
EIO=5.96e09 EII= 6.29e09
17,064Kb
En la tabla 6.9 la imagen del Video Base se le agrego ruido multiplicativo con una
varianza de 0.15. A diferencia de la imagen con ruido multiplicativo de la tabla 6.8 de
varianza de 0.12, la imagen de la tabla 6.9 empieza a tener defectos que son perceptibles
para la vista. Para este último caso los niveles de energía ya son afectados y los
histogramas lo corroboran ya que las magnitudes de cada muestra han cambiado
considerablemente. Sin embargo, aún con el cambio de magnitud podemos extraer la
información insertada.
110
6.3.2.-Ruido impulsivo adicionado a cada imagen
que conforma el video.
El ruido impulsivo suma valores aleatorios a cada píxel que conforma una imagen
original, dichas alteraciones pueden ser en ocasiones evidentes. Se muestra de manera gráfica
los resultados obtenidos al agregarle ruido impulsivo con diferentes tipos de varianzas a
nuestras imágenes del video Base.
Tabla 6 .10 Imagen del Video Base con Ruido Impulsivo con varianza 0.01.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Modificado R
4000
4000
3500
3500
3000
3000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Impulsivo en R.
2500
2000
1500
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
Histograma G del Video Base .
50
150
200
250
Histograma G del Video Modificado.
Histograma del Video Modificado G
Histograma del Video Base con Ruido Impulsivo en G.
4000
4000
3500
3500
Numero de elementos.
Numero de elementos.
100
3000
2500
2000
1500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
250
0
50
100
150
200
250
111
Histograma B del Video Base.
Histograma B del Video Modificado.
Histograma del Video Modificado B
5000
4500
4000
4000
3500
3500
Numero de elementos.
4500
3000
2500
2000
1500
1000
3000
2500
2000
1500
1000
500
500
0
0
Tonos de gris.
0
50
100
150
200
Tonos de gris.
250
0
Gráfica del Audio Original.
50
100
150
200
250
Gráfica del Audio Recupe rado.
Audio recuperado.
Audio Original.
1
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
Numero de elementos.
Histograma del Video Base con Ruido Impulsivo en B.
0
-0.5
0
-0.5
-1
-1
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
4
x 10
Ruido Impulsivo.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
4
x 10
Densidad = 0.01
0.966
44dB
EIO=11.08e09 EII=11.08 e09
14,372Kb
112
Tabla 6.11 Imagen del Video Base con Ruido Impulsivo con varianza 0.001 .
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Modificado R
4000
4000
3500
3500
3000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Impulsivo en R.
2500
2000
1500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Histograma G del Video Base.
50
150
200
250
Histograma G del Video Modificado.
Histograma del Video Modificado G
Histograma del Video Base con Ruido Impulsivo en G.
4000
4000
3500
3500
Numero de elementos.
Numero de elementos.
100
3000
2500
2000
1500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
50
100
150
200
113
250
Histograma B del Video Base.
Histograma B del Video Modificado.
Histograma del Video Modificado B
4500
4500
4000
4000
3500
3500
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Impulsivo en B.
3000
2500
2000
1500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Gráfica del Audio Original.
50
100
150
200
250
Gráfica del Audio Recuperado.
Audio recuperado.
1
Audio Original.
1
0.5
Amplitud de muestra.
Amplitud de muestra.
0.5
0
-0.5
0
-0.5
-1
-1
-1.5
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
Ruido Impulsivo.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
4.5
x 10
4
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
Densidad = 0.001
0.9968
47.86dB
EIO=11e09 EII=11 e09
14,172Kb.
En la tabla 6.10 y 6.11 la imagen del Video Base se le agrego ruido impulsivo con
una densidad de 0.01 y 0.001. Aunque como se menciono con anterioridad es uno de los
ruidos más agresivos aún no afecta en gran medida las componentes de baja frecuencia de
la imagen. Así que visualmente no se ve afectada por cambios bruscos. Lo podemos
observar en los histogramas correspondientes, ya que sus niveles de energía son muy
parecidos a los niveles de energía presentados por la imagen original.
114
4
Tabla 6.12- Imagen del Video Base con Ruido Impulsivo con varianza 0.005 .
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base .
Histograma R del Video Modificado.
Histograma del Video Modificado R
Histograma del Video Base con Ruido Impulsivo en R.
4000
3500
3500
3000
3000
Numero de elementos.
Numero de elementos.
4000
2500
2000
1500
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
0
50
100
Tonos de gris.
150
200
250
0
Histograma G del Video Base .
50
3500
3500
Numero de elementos.
Numero de elementos.
4000
3000
2500
2000
1500
2500
2000
1500
1000
500
500
0
0
Tonos de gris.
150
250
3000
1000
100
200
Histograma del Video Modificado G
4000
50
150
Histograma G del Video Modificado.
Histograma del Video Base con Ruido Impulsivo en G.
0
100
Tonos de gris.
200
250
0
50
100
150
200
115
250
Histograma B del Video Base .
Histograma B del Video Modificado.
Histograma del Video Modificado B
4500
4500
4000
4000
3500
3500
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Impulsivo en B.
3000
2500
2000
1500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
50
Gráfica del Audio Original.
150
200
250
Gráfica del Audio Recuperado.
Audio recuperado.
Audio Original.
1
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
100
0
-0.5
0
-0.5
-1
-1
-1.5
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
Ruido Impulsivo.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
4.5
4
x 10
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
Densidad = 0.005
0.9843
42.80dB
EIO=11.03e09 EII=11.03 e09
15,609Kb.
116
4
Tabla 6.13- Imagen del Video Base con Ruido Impulsivo con varianza 0.009 .
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Modificado R
4000
4000
3500
3500
3000
3000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Impulsivo en R.
2500
2000
1500
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
250
0
Histograma G del Video Base.
50
150
200
250
Histograma G del Video Modificado.
Histograma del Video Modificado G
Histograma del Video Base con Ruido Impulsivo en G.
4000
4000
3500
3500
Numero de elementos.
Numero de elementos.
100
3000
2500
2000
1500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
250
0
50
100
150
200
117
250
Histograma B del Video Base.
Histograma B del Video Modificado.
Histograma del Video Modificado B
Histograma del Video Base con Ruido Impulsivo en B.
4500
4500
4000
Numero de elementos.
Numero de elementos.
4000
3500
3000
2500
2000
1500
3500
3000
2500
2000
1500
1000
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Gráfica del Audio Original.
100
150
200
250
Gráfica del Audio Recuperado.
Audio recuperado.
Audio Original.
1
1
0.5
Amplitud de muestra.
0.5
Amplitud de muestra.
50
0
-0.5
0
-0.5
-1
-1
-1.5
-1.5
0
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
Ruido Impulsivo.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
4
4.5
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
4
4
x 10
Densidad = 0.009
0.9699
40.91dB
EIO=11.07e09 EII=11.05 e09
13,058Kb
En la tabla 6.12 y 6.13 la imagen del Video Base se le agrego ruido impulsivo con una
densidad de 0.005 y 0.009 respectivamente. Aunque se observo en las últimas todavía en
estas densidades no afecta en gran medida las componentes de baja frecuencia de la
imagen. Así que visualmente no se ve afectada por cambios bruscos. Lo podemos observar
en los histogramas correspondientes, ya que sus niveles de energía son muy parecidos a los
niveles de energía presentados por la imagen original.
118
Tabla 6 .14- Imagen del Video Base con Ruido Impulsivo con varianza 0.01.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base .
Histograma R del Video Modificado.
Histograma del Video Modificado en R.
Histograma del Video Base con Ruido Impulsivo en R.
2000
Numero de elementos.
Numero de elementos.
2000
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
Histograma G del Video Base .
50
150
200
250
Histograma G del Video Modificado.
Histograma del Video Modificado en G.
Histograma del Video Base con Ruido Impulsivo en G.
3000
3000
2500
Numero de elementos.
2500
Numero de elementos.
100
2000
1500
1000
2000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
0
200
50
100
150
200
250
250
119
Histograma B del Video Base .
Histograma B del Video Modificado.
Histograma del Video Modificado en B.
Histograma del Video Base con Ruido Impulsivo en B.
2000
Numero de elementos.
Numero de elementos.
2000
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
250
0
Gráfica del Audio Original.
100
150
200
250
Gráfica del Audio Recuperado.
Audio recuperado.
Audio Original.
1
1
0.5
Amplitud de muestra.
0.5
Amplitud de muestra.
50
0
-0.5
0
-0.5
-1
-1
-1.5
-1.5
0
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
Ruido Impulsivo.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
4
4.5
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
4
4
x 10
Densidad = 0.1
0.72
37.6dB
EIO=3.73e09 EII=3.90e09
52,462Kb
En la tabla 6.14 podemos observar que a este nivel de densidad tanto la imagen como los
histogramas ya se ven afectadas por el ruido impulsivo. Los niveles de energía cambiaron
aunque no considerablemente, pero al ir incrementando el valor de densidad del ruido
impulsivo no se podrá obtener correctamente la información insertada.
6.3.3- Agregando ruido Gaussiano a la imagen
que conforma el video.
El ruido gaussiano es un ruido que comúnmente se presenta en los canales de
transmisión que modifica algunas componentes de manera uniforme la imagen original.
En las tablas a continuación se presentan las imágenes del Video Base
agregándoles ruido Gaussiano con diferente varianza.
120
Tabla 6.15- Imagen del Video Base con Ruido Gaussiano con varianza 0.001.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base .
Histograma R del Video Modificado.
Histograma del Video Modificado R
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Gaussiano en R.
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Histograma G del Video Base .
50
150
200
250
Histograma G del Video Modificado.
Histograma del Video Modificado G
Histograma del Video Base con Ruido Gaussiano en G.
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
100
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
250
0
50
100
150
200
250
121
Histograma B del Video Base .
Histograma B del Video Modificado.
Histograma del Video Modificado B
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Gaussiano en B.
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Gráfica del Audio Original.
150
200
250
Audio recuperado.
Audio Original.
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
100
Gráfica del Audio Recuperado.
1
0
-0.5
-1
-1.5
0
50
0
-0.5
-1
0.5
1
1.5
2
2.5
Muestra.
3
3.5
Ruido Gaussiano.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
4
4.5
x 10
4
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
Varianza = 0.001
0.8749
32.7831dB
EIO=5.57e09 EII=5.57 e09
20,702Kb
122
4
Tabla 6.16- Imagen del Video Base con Ruido Gaussiano con varianza 0.003.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Modificado R
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Gaussiano en R.
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Histograma G del Video Base.
50
200
250
Histograma del Video Modificado G
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
150
Histograma G del Video Modificado.
Histograma del Video Base con Ruido Gaussiano en G.
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
100
50
100
150
200
250
0
50
100
150
200
250
123
Histograma B del Video Base.
Histograma B del Video Modificado.
Histograma del Video Modificado B
Histograma del Video Base con Ruido Gaussiano en B.
2500
Numero de elementos.
Numero de elementos.
2500
2000
1500
1000
2000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Gráfica del Audio Original.
150
200
250
Audio recuperado.
Audio Original.
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
100
Gráfica del Audio Recuperado.
1
0
-0.5
0
-0.5
-1
-1
-1.5
50
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
Ruido Gaussiano.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
4
4.5
4
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
x 10
Varianza = 0.003
0.8296
32.7828 dB
EIO=5.6e09 EII=5.6 e09
20,644Kb
En la tabla 6.15 y 6.16 la imagen del Video Base se le agrego ruido gaussiano con una
varianza de 0.001 y 0.003 respectivamente. Con estos niveles de varianza las imágenes que
conforman al Video Base no son afectadas visualmente. Los histogramas siguen
conservando en esencia el valor de la energía de la imagen original. Así que en estos
niveles de varianza el ruido no afecta a la imagen al grado de no ser una buena imagen para
insertar así como para extraer la información deseada.
124
4
Tabla 6.17- Imagen del Video Base con Ruido Gaussiano con varianza 0.006.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base .
Histograma R del Video Modificado.
Histograma del Video Modificado R
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Gaussiano en R.
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Histograma G del Video Base .
50
150
200
250
Histograma G del Video Modificado.
Histograma del Video Modificado G
Histograma del Video Base con Ruido Gaussiano en G.
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
100
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
250
0
50
100
150
200
125
250
Histograma B del Video Base .
Hist ograma B del Video Modificado.
Histograma del Video Modificado B
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Gaussiano en B.
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Gráfica del Audio Original.
100
150
200
250
Gráfica del Audio Recuperado.
Audio recuperado.
Audio Original.
1
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
50
0
-0.5
0
-0.5
-1
-1
-1.5
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
Ruido Gaussiano.
Indice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
4.5
x 10
4
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
4
x 10
Varianza = 0.006
0.7893
32.7724dB
EIO=5.68e09 EII=5.67 e09
20,583Kb
126
Tabla 6.18- Imagen del Video Base con Ruido Gaussiano con varianza 0.009.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Modificado R
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Gaussiano en R.
1500
1000
500
1500
1000
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
Histograma G del Video Base .
50
150
200
250
Histograma G del Video Modificado.
Histograma del Video Modificado G
Histograma del Video Base con Ruido Gaussiano en G.
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
100
1500
1000
500
1500
1000
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
50
100
150
200
250
127
Histograma B del Video Base.
Histograma B del Video Modificado.
Histograma del Video Modificado B
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Gaussiano en B.
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Gráfica del Audio Original.
150
200
250
Audio recuperado.
Audio Original.
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
100
Gráfica de Audio Recuperado.
1
0
-0.5
-1
-1.5
0
50
0
-0.5
-1
0.5
1
1.5
2
2.5
Muestra.
3
3.5
Ruido Gaussiano.
Índice de Correlación.
PSNR.
Ene rgía.
Capacidad de ocultamiento.
4
4.5
x 10
4
-1.5
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
x 10
4
Varianza = 0.009
0.7535
32.7552Db
EIO=5.79e09 EII=5.78 e09
20,622Kb
En la tabla 6.17 y 6.18 la imagen del Video Base se le agrego ruido gaussiano con una
varianza de 0.006 y 0.009 respectivamente. Con estos niveles de varianza las imágenes que
conforman al Video Base son afectadas visualmente. Esto se debe a que la imagen original
no tiene variaciones de colores tan bruscos, o en su defecto no posee variaciones notorias
en sus contornos que lo integran, este tipo de imágenes son conocidas como imágenes
planas. Ya que sus colores y relieves son uniformes. Así que al ir integrando el ruido se
empieza a generar cambios bruscos en sus colores y relieves. Los cuales visualmente se
interpretan como ruido.
128
Tabla 6.19.- Imagen del Video Base con Ruido Gaussiano con varianza 0.1.
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Modificado R
Histograma del Video Base con Ruido Gaussiano en R.
3000
3000
Numero de elementos.
Numero de elementos.
2500
2000
1500
1000
2500
2000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
0
200
50
150
200
250
250
Histograma G del Video Base .
Histograma G del Video Modificado.
Histograma del Video Modificado G
Histograma del Video Base con Ruido Gaussiano en G.
3000
3000
2500
2500
Numero de elementos.
Numero de elementos.
100
2000
1500
1000
500
2000
1500
1000
500
0
0
Tonos de gris.
0
50
100
150
Tonos de gris.
200
250
0
50
100
150
200
250
129
Histograma B del Video Base.
Histograma B del Video Modificado.
Histograma del Video Modificado B
3000
3000
2500
2500
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Gaussiano en B.
2000
1500
1000
2000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
0
250
Gráfica del Audio Original.
50
100
250
Audio recuperado.
Audio Original.
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
200
Gráfica de Audio Recuperado.
1
0
-0.5
0
-0.5
-1
-1
-1.5
0
150
-1.5
0.5
1
1.5
2
2.5
Muestra.
3
3.5
Ruido Gaussiano.
Índice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
4
4.5
x 10
4
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
4
x 10
varianza = 0.1
0.6784
30.2776 dB
EIO= 5.63e0 9 EII= 5.69e0 9
19 ,416Kb
130
Tabla 6.20.- Imagen del Video Base con Ruido Gaussiano con varianza 0.12 .
IMAGEN PERTENECIENTE AL VIDEO BASE
CON INFORMACIÓN OCULTA.
Histograma R del Video Base.
Histograma R del Video Modificado.
Histograma del Video Modificado en R.
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
Histograma del Video Base con Ruido Gaussiano en R.
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
0
50
100
150
200
Tonos de gris.
250
0
Histograma G del Video Base .
50
150
200
250
Histograma G del Video Modificado.
Histograma del Video Modificado en G.
Histograma del Video Base con Ruido Gaussiano en G.
2500
2500
2000
2000
Numero de elementos.
Numero de elementos.
100
1500
1000
1500
1000
500
500
0
0
Tonos de gris.
Tonos de gris.
0
50
100
150
200
250
0
50
100
150
200
250
131
Histograma B del Video Base.
Histograma B del Video Modificado.
Histograma del Video Modificado en B.
Histograma del Video Base con Ruido Gaussiano en B.
2500
2500
Numero de elementos.
Numero de elementos.
2000
1500
1000
2000
1500
1000
500
500
0
0
Tonos de gris.
0
50
100
150
200
Tonos de gris.
250
0
Gráfica del Audio Original.
150
200
250
Audio recuperado.
Audio Original.
1
0.5
0.5
Amplitud de muestra.
Amplitud de muestra.
100
Gráfica de Audio Recuperado.
1
0
-0.5
0
-0.5
-1
-1
-1.5
0
50
-1.5
0.5
1
1.5
2
2.5
Muestra.
3
3.5
Ruido Gaussiano.
Índice de Correlación.
PSNR.
Energía.
Capacidad de ocultamiento.
4
4.5
x 10
4
0
0.5
1
1.5
2
2.5
Muestra.
3
3.5
4
4.5
4
x 10
varianza = 0.12
0.6789
29.6298 dB
EIO= 5.91e0 9 EII= 5.98e0 9
19,314Kb
En las tablas 6.19 y 6.20 la imagen del Video Base se le agrego ruido gaussiano con una
varianza de 0.1 y 0.12 respectivamente. Con estos niveles de varianza las imágene s que
conforman al Video Base son afectadas más notoriamente. Los histogramas
correspondientes a cada imagen ya empiezan a tener alteración en sus niveles de
frecuencia. Podemos observar en los histogramas que tenemos información en donde en un
principio no tenía nada de información. A estos niveles de ruido para este tipo de imágenes
con colores uniformes no es óptimo que el medio de transmisión se vea afectado por ruido,
ya que probablemente no se extraerá la información completa y correctamente.
132
6.4.- Discusión de Resultados.
De las tablas mostradas de la 6.5 hasta la 6.20 en este capítulo se observa en cada uno
de los histogramas obtenidos como resultados de las distintas pruebas de aplicación de
ruido, el Video Modificado conserva la gama de frecuencia de colores mostrado en el
histograma del Video Base.
En cada una de las pruebas se fue variando las varianzas tanto para el ruido gaussiano y
el ruido multiplicativo hasta un valor de 0.15, y posteriormente para el ruido impulsivo
se fue cambiando la densidad del ruido en la imagen hasta un valor del 0.1.
Así al conservar la frecuencia de colores en cada una de las matrices que componen una
imagen en RGB, no se altera su Ancho de Banda, siendo ya incorporada la información
deseada.
Para el caso de la transmisión de televisión por cable, el cual utiliza el cable coaxial de
banda ancha con un Ancho de Banda de 450 Mhz, se concluye que se respeta el Ancho
de Banda establecido de 6 Mhz, finalmente el algoritmo esteganográfico se puede
aplicar a la transmisión de video.
De manera general se observa que imágenes con pocos relieves, la inserción de
información esta más limitada, ya que la distorsión es más evidente que en otros casos.
6.5.- Conclusiones.
Se observa en los histogramas obtenidos tanto del Video Base, del Video Base
con Ruido y del Video Modificado que su frecuencia de colores no es alterada
drásticamente, por lo que se concluye que a ciertos niveles de varianza de ruido
agregado a las simulaciones del algoritmo Esteganográfico soporto diversas pruebas
con diferentes varianzas de ruido, y en todos los casos se ha recuperado con éxito la
información insertada.
Así que el algoritmo a ataques de ruido es robusto. Al conservar la frecuencia de
colores al insertar la información del Video a Ocultar dentro del Video Base no se
altera el Ancho de Banda ocupado por el Video Base.
133
CONCLUSIONES GENERALES:
Queda demostrada la forma de inserción para ocultar, se muestran como parámetros
extras la seguridad, y robustez del algoritmo con la herramienta matemática TWD.
•
•
•
•
•
•
•
•
•
•
•
•
•
Se garantiza el ocultamiento de al menos dos archivos digitales (audio y video)
dentro de otro vide o, separando su flujo de audio y realizando el ocultamiento
sin él.
Se garantiza la recuperación de información oculta, aún siendo afectado el canal
para el caso del ruido gaussiano y el ruido multiplicativo la varianza se manejo
hasta 0.15 y para el ruido impulsivo se realizaron las pruebas hasta con una
densidad del 0.1.
Se puede observar que a medida que se incrementa la varianza del ruido,
disminuye la capacidad de ocultamiento.
Para ocultar la información no es necesario que el tamaño de las imágenes de la
secuencia de video sean iguales.
Se provee una seguridad en transmisión y en derechos de autor; en donde el
usuario puede definir los distintos niveles de accesibilidad de la información a
transmitir.
Se puede preveer una copia de la información de manera autorizada y
controlada.
Se puede n controlar dispositivos permitiendo la sincronización de trasmisión o
recepción con diferentes contenidos de in formación, por el usuario final.
Se puede considerar dar un valor adicional de los servicios de seguridad
multimedia en transferencia de datos, al igual como con el máximo
aprovechamiento del Ancho de Banda de un canal de transmisión a los
encargados de br indar datos multimedia.
El método de esteganográfico es segura porque se realizaron pruebas con
distintos formas de ataques y se logra recuperar la información insertada, así
como la información del video base.
No existe un mecanismo que siga un patrón determinado para detectar la
posición exacta de la información oculta, ya que por la misma naturaleza del
medio de Transmisión cada vez que se transmite el mismo video éste cambia, ya
que puede agregársele distintas formas de ruido como se mencionó en el
capítulo IV. Ya que en la actualidad la mayoría de los algoritmos
estaganográficos que se implementan en imágenes y video alteran la paleta de
colores mostrando así los lugares en donde se oculto información.
El principal requisito para aplicar la TWD al cuadro de video que se desea
insertar, es que la wavelet a usar sea ortogonal y/o bi-ortogonal.
Se demostró que el algoritmo aquí expuesto puede llegar a ocultarse más de dos
archivos de cualquier índole, siempre y cuando se manejen las condiciones que
se mencionaron en el transcurso de esta investigación en un archivo de video, así
que también indirectamente se garantiza manejar más eficientemente el uso y
manejo de nuestro canal de Transmisión, sin ningún costo alguno.
De las referencias consultadas los métodos expuestos brindan un PSNR de hasta
27 dB, los cuales son inferiores en 20dB comparado con el algoritmo
esteganográfico planteado en esta investigación.
134
•
•
Si se agrega el audio obtenido en la separación del Video a Ocultar, en la
descomposición Wavelet de la sub matriz de detalles verticales , como resultado
se obtiene un PSNR mayor a los 27dB.
Finalmente, si se compara la capacidad de información de cada cuadro
presentado podemos concluir que el algoritmo propuesto es capaz de agregar
más de dos archivos a un solo archivo de video, siendo esto un factor muy
importante para las telecomunicaciones puesto que para muchas aplicaciones de
hoy en día se puede ahorrar dinero y tiempo en las transmisiones de cualquier
índole.
Trabajos futuros:
1. Aplicar el algoritmo en un DSP.
2. Utilizar el método integrando un acelerador de video.
3. Utilizar alguna otra wavelet para poder tener mayor compresión de los archivos
y así poder introducir más de dos archivos como en el caso de esta investigación.
4. Realizar el algoritmo esteganográfico sin la separación del flujo del audio.
5. Realizar la prueba en la transmisión en un medio guiado por el cable coaxial.
135
ANEXO 1. “ARTICULOS PUBLICADOS O POR
PUBLICAR”
1.- Coding of information into video file,
Blanca E. Carvajal-Gámez, M. Acevedo M., J. López-Bonilla,
International Journal of Engineering Modelling vol. 20, No. 1-2 (2007) in press.
2.- Energy conservation in the concealment of information in a video by means of
discrete wavelet transform,
Blanca E. Carvajal-Gámez, M. Acevedo M., J. López-Bonilla,
International e-Journal of Engineering Mathematics: Theory and Applications
(IeJEMTA), vol 4 (2008).
136
Coding of information into video file
B. E. Carvajal-Gámez, M. A. Acevedo-Mosqueda, J. López-Bonilla.
SEPI-Telecomunicaciones ESIME-IPN, Unidad Profesional Adolfo López Mateos. Col. Lindavista, 07738, México, DF
E-mail: [email protected] , [email protected]
Abstract – In this work we propose an algorithm
for hidding information in an avi file. The avi file
is splitted into its audio and video components.
The audio is saved in a file an its parameters are
not changed. In addition, the video is splitted into
frames. The frame contains 24 images which it is
transformed with Discrete Wavelet Transform
(DWT). By appliying the DWT we obtain four sub
images each one with different band width. Once
we have the frequencies splitted, places are chosen
for hidding information. In this work the
concealment is made inside another avi file.
However, the procedure can be applied in any
kind of information. The file to be hidding is
splitted into audio and video. Both are concealed
independently in the sub images from the original
video. The video to be hidden is separated into its
frequency components and only the lower are
save, while the others are deleted. The compressed
version of the image to be concealed is inserted in
the video’s sub images. Once the concealment has
been done the Inverse Discrete Wavelet
Transform (IDWT) is applied and the video is
reconstructed again. For getting the hidden
information the same insertion process is made
and in the recovered file apply the IDWT.
Key words – Wavelets, Video, Hidding.
I.
INTRODUCTION.
The concealment of information in digitals
formats, is a subject which is very common
nowadays, because of the necessity of espionage
in several communications media. A very
adequate alternative for protecting the
information is through the steganography,
which it is capable for the concealment of
information without that can be perceived its
existence. In this research an avi file is hidden
inside another with the same format. The form
to hide the information must provide the
security that a non-authorized person can extract
it. The video files are decomposed into audio
and images. The audio components from both
files are manipulated separately and are
preserved without alteration. However, the
video is broken into its 24 frames in which the
DWT is applied for getting its different sub
images. The process for the original and the
video to hide is different as will be shown
down.
The propossed method is able to hide the
information from a video (Video to hide) inside
another one (Base Video). The first part is
focused to describing the composittion of the
images via the DWT. Next the process for
descomposing the video into frames is described
with the proposed algorithm which takes into
account the places for doing the concealment.
Then this paper makes references to the
recuperation
process
for
the
inserted
information. Finally, several results are shown
with the tests applied to the modified images
and the recovered ones.
II.
S PLITING THE VIDEO IN FRAMES .
There are three steps in this research. The
first one is based in the procedure made in the
Base Video which is the file where the
information will be hidden. The second step
shows the manipulations for the video to be
conceal, where the modified Video is gotten
with the Base Video and the Video to Conceal.
Finally, the third step shows the process for
descomposing the Modified Video for reaching
the recovered one. These steps are shown in
figure 1.
137
Figures 3a, 3b, 3c, 3d show the decomposition
of the Video to Conceal. The sub matrices are
sized
n/4xm/4
because
of
the
two
decompositions. The sub matrices to be hidden
are Approximation (3a) and Horizontal Details
(3b), into the sub matrices of Approximations
(2a) and Horizontal Details (2b).
Figure 1 Method for hidding and recovering the video.
As was mentioned, the first step is to obtain
the audio components and frames from the avi
files. The audio component from the Base
Video is not altered and is kept apart from the
process, while the audio component of the
Video to Conceal is not processed and is hidden
in the sub images of the Base Video.
The first step is refered with the getting of the
24 frames per second of the Base Video. Each
frame is splitted in its RGB components; the
size of each matrix being nxm. In each RGB
component the DWT is applied for getting the
four
characteristic
sub
matrices:
Approximations, Vertical Details, Horizontal
Details and Diagonal Details, as is shown in
figures 2a, 2b, 2c y 2d, respectively.
Figure2 Components RGB in sub matrices for Base Video.
Each sub matrix is sized n/2xm/2 because
only one decomposition was done. The
procedure is performed to the 24 frames in the
Base Video.
Figure 3 Components RGB in sub matrices for Video to
Conceal.
In the concealment step, certain places in the
sub images of Approximations and Horizontal
Details of the Base Video are identified, in
which the sub images of the Video to Conceal
willl be hidden. The sub matrices of Vertical
and Diagonal Details of the Base Video will not
altered. In other way the sub matrices of
Vertical and Diagonal Details of the Video to
Conceal will be rejected. Once the sub matrices
were concealed, the IDWT is performed for
getting the Modified Video.
In the Modified Video we add the Audio
Component for getting the avi file. This new file
can be transmitted and/or saved. In the
transmission case the Modified Video needs the
same band width than the Base Video if it were
to be transmitted.
The last step is the recovering of the
information. We perform to the Modified Video
the same procedure than the Base Video for
getting the four sub matrices with the wavelet
splitting.
With the sub matrices of
Approximations and Horizontal Details the
information is obtained for reaching the sub
matrix of Approximations and Horizontal
Details, as shown in figure 4. It can be seen that
to obtain the Recovered Video, just the sub
matrices above mentioned are needed, while the
anothers have their values in zero.
In the second step the same procedure is
performed in the Video to Conceal, with the
difference that the image is decomposed twice.
138
Figure 4 Components RGB once sub matrices for
Recovering Video.
The process with this algorithm is perform to
each frame of the 24 per second, which
compose the video file.
Figure 6 Base Video splitting in frames.
In the concealment and recovering process,
we handle the images in their RGB components.
However, to reconstruct the avi format all of the
images are stored in their original jpeg
format[6].
II.2. – S PLITTING T HE VIDEO IN FRAMES.
From the Base Video and the Video to Conceal
all their frames are taken. First the frames are
splitted in its RGB components. Each one of the
frames is in .jpeg format [6]. You can think then
x[n,m] as a tridimensional matrix which
contains the RGB components, figure 5:
Figure 7 Video to Conceal Splitting into frames.
II.2.1 S PLITTING THE FRAMES WITH DWT.
With the frames splitted from the video, each
one is splitted in its RGB components, for each
one the DWT is applied for reaching the sub
matrices of Approximations, Horizontal Details,
Vertical Details and Diagonal Details, figure 8:
Figure 5 RGB components
Once the RGB matrices are gotten, the
information is managed from each píxel, which
compose each frame. In figures 6 and 7 is
shown the splitting in frames of the Base Video
and Video to Conceal, respectively.
Figure 8 Wavelet Transform of the image x[n,m].
It can be notice that the Approximations sub
matrix a[n/2,m/2] contains the lower frequency
components, and has the half size of the original
image. The Horizontal Details sub matrix
139
h[n/2,m/2] contains the medium lower
frequencies of the image. Finally, the Vertical
Details and the Diagonals
v[n/2,m/2]
d[n/2,m/2] , have the medium higher and higher
frequency components, respectively[2,3].
One important aspect in the DWT is the energy
compactness in the Approximation sub matrix .
In function of the DWT used, the compactness
reached can be higher.
The process is carried out for the frames of the
Base Video, and twice for the Video to Conceal.
In both cases a different DWT is selected. In
the case of the Video to Conceal, just the
Approximations
and
Horizontal
Details
a[n/4,m/4], h[n/4,m/4] sub matrices are needed,
respectively. It must be notice that the sub
matrix size is the half of that of the Base Video.
II.2.2 D EFINING THE THRESHOLD C RITERION.
For being able to hide the sub matrices of the
Video to Conceal in the sub matrices of the
Base Video, a threshold criterion must be
established for selecting those pixels that could
be modified. The sampling values to be
modified should be less or equal than the
selected threshold. In this work the employed
threshold consists in the standard deviation of
the matrix; for each RGB component in the
Base Video, the standard deviation is calculated.
m
x = ∑ xl / m
(2)
l =1
Lets the gotten vectors
n
n
l =1
l =1
σ R (l ), σ G (l )
and
n
σ B (l ) be composed with n standard deviations
l =1
values whose number is equal to that of the
rows or columns of the sub matrices xR [n,m],
xG [n,m] and xB[n,m], from which the maximun
value in each vector will be considered as the
threshold for such color component, and from
which the boundary of the samples is defined
for being modified or remained unchanged.
III.
Application of the Discrete
Wavelet Transformation.
The input signal is the image represented by
x[n,m]. This discrete signal is passed through a
series of filters, and is splitted in four sub
images[1]. In figure 9, it can be shown the
procedure performed to the matrix xR [n,m],
which is the Red component of the matrix
x[n,m,1].
A valu e of the standard deviation is gotten
for each row and column of x R[n,m],
xG [n,m] and x B[n,m], from which a vector is
set up with the number of standard
deviations which is the number of rows or
columns stored in the matrix .
The equation that define the standard
deviation [9] of a series of values is given
by
σ =
Figure 9 Getting four sub images of the R component of the
image x[n,m].
m
∑ ( x − x)
2
l
/ m. (1)
l =1
where xl is the value of each
coefficient taken from the row or the
column in the selected matrix, m is
the total number of coefficients for
the row or column and x is the
average value [9] obtained from
a[n,m] is obtained first by filtering the lower
frequencies to the columns xR [n,m], and to the
resulting matrix xa[n,m] the same row filtering
is performed, resulting in this sub image a
compression of the original, and contains the
lower frequencies of the image.
h[n,m] is reached by filtering first the lower
frequencies to the columns xR [n,m], and to the
resulting matrix xa[n,m] the higher frequencies
are filtered from the rows, remaining in this sub
image the Horizontal Details of the original
140
one, contained the lower medium frequencies of
the image.
v[n,m] is obtained by filtering first the
higher frequencies to the columns xR [n,m], and
the resulting matrix xb[n,m] the lower
frequencies are filtered from the rows, resulting
in this sub image the Vertical Details of the
original one, and contained the higher medium
frequencies of the image.
Finally, d[n,m] is set up by filtering first the
higher frequencies to the columns xR [n,m], and
to the resulting matrix xb[n,m] the same
filtering is performed to the rows, getting in this
sub image the Diagonal Details, and remaining
the higher frequencies of the image.
The procedure is made for the components
xR [n,m], x G [n,m] and x B[n,m] of the Base Video
and the Video to Conceal. After the first
splitting of the Video to Conceal, just the matrix
a[n,m] is used in the RGB components. This
matrix is splitted again in its four sub images
and only the two matrices of lower frequencies
are taken, as shown in figure 4. The two
matrices of lower frequencies of the Video to
Conceal (Approximations and Horizontal
Details) have a size of N/4 rows and M/4
columns. Such matrix are inserted in the matrix
of Approximations and Horizontal Details of the
Base Video, which have a size of N/2 rows and
M/2 columns.
IV.
METHOD OF S ELECTING THE RIGTH
PLACE FOR CONCEALING THE VIDEO.
Taking into acount the established threshold
criterion, we procede to hide the information:
i)
By using threshold criterion the matrices
a[n,m] and h[n,m] from the RGB
components of the Base Video are analyzed
for finding the places more chaotics in the
images. Once such places are found , the
samples of the matrices a[n,m] and h[n,m]
of the Base Video are replaced by the
samples a[n,m] and h[n,m] from the Video
to Conceal. According with the threshold
value, the amplitude of the samples of the
Video to Conceal a[n,m] and h[n,m] must
be changed for not affecting the RGB
components of the Base Video[5].
ii) This pseudo random form for inserting the
information in the Base Video should
produce certain security for the Video to
Conceal not to be gotten .
iii) Once all of the samples of the matrices
a[n,m] and h[n,m] of the Video to Conceal
have been inserted, the IDWT is performed
to the matrices a[n,m], h[n,m], v[n,m] and
d[n,m] of the Base Video for getting the
Modified Video.
iv) With the Base Video and Modif ied Video, a
comparison is made for verifying the
similarity between them.
v) For reaching the Recovering Video we
procede to split the Modified Video by
using the DWT. The threshold criterion is
performed to the matrices a[n,m] and
h[n,m] for each of the RGB components of
the Modified Video, and then the matrix
elements samples a[n,m] and h[n,m]are
identified.
vi) With the matrices a[n,m] and h[n,m] ( all
the simples of v[n,m] and d[n,m] have the
value of zero) we applied the IDWT twice
for getting the Recovered Video.
vii) Finally, a comparison between the
Recovered Video and the Video to Conceal
is made for knowing how much information
has been lost or modified.
V.
METHOD FOR TESTING THE
PROPOSED ALGORITHM .
To determine the similarity between the
recovered images and the original ones we
calculate the cross correlation.
We apply first the cross correlation between
x[n,m,k], which is the matrix of the original
image, and y[n,m,k] , which is the matrix of the
modified image from the Modified Video. Table
1 shows t he cross correlation of the 50 frames of
the Base Video and the Modified Video, in their
color components.
As can be noticed in table 1, the cross
correlation in the 50 frames of both videos is
almost one, which suggests that the Modified
Video is so similar to the Base Video. While
forming the avi file it is not possible to
appreciate any difference between them.
The cross correlation is made to the original
image of the Video to Conceal and the matrix of
the modified image of the Recovered Video, the
results are shown in table 2, thus can be
apreciated that the cross correlation between the
frames of the Blue component is almost the
unity. For the Red and Green components the
cross correlation is less than 98% of similarity.
Such results shows the lost of the information
that must be rejected in the Vertical and the
Diagonal Details in the first reconstruction. In
the second one, we have that three of four
141
matrices become zero( Horizontal Details,
Vertical Details, and Diagonal Details).
TABLE 1 . VIDEO BASE CORRELATION Vs VIDEO
MODIFIED.
FRAME
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
R
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
1
0.9999
0.9999
0.9999
0.9999
1
0.9999
0.9999
1
0.9999
G
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
1
0.9999
0.9999
0.9999
B
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
TABLE 1. VIDEO CONCEALED CORRELATION Vs
RECOVERED VIDEO.
.
FRAME
R
G
B
1
0.9744
0.9720 0.99999
2
0.9739
0.9717 0.99999
3
0.9737
0.9716 0.99999
4
0.9735
0.9713 0.99999
5
0.9740
0.9721 0.99999
6
0.9744
0.9720 0.99999
7
0.9739
0.9717 0.99999
8
0.9737
0.9716 0.99999
9
0.9735
0.9713 0.99999
10
0.9740
0.9721 0.99999
11
0.9744
0.9720 0.99999
12
0.9739
0.9717 0.99999
13
0.9737
0.9716 0.99999
14
0.9735
0.9713 0.99999
15
0.9740
0.9721 0.99999
16
0.9744
0.9720 0.99999
17
0.9739
0.9717 0.99999
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
0.97 37
0.9735
0.9740
0.9744
0.9739
0.9737
0.9735
0.9740
0.9744
0.9739
0.9737
0.9735
0.9740
0.9744
0.9739
0.9737
0.9735
0.9740
0.9744
0.9739
0.9737
0.9735
0.9740
0.9744
0.9739
0.9737
0.9735
0.9740
0.9744
0.9739
0.9737
0.9735
0.9740
0.9716
0.9713
0.9721
0.9720
0.9717
0.9716
0.9713
0.9721
0.9720
0.9717
0.9716
0.9713
0.9721
0.9720
0.9717
0.9716
0.9713
0.9721
0.9720
0.9717
0.9716
0.9713
0.9721
0.9720
0.9717
0.9716
0.9713
0.9721
0.9720
0.9717
0.9716
0.9713
0.9721
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99999
0.99 999
0.99999
0.99999
0.99999
The cross correlation between the Base Video
and the Modified Video is 99.68% while for the
Video to Conceal and the modified the images of the
Recovered Video is 98.33%. Despite the cross
correlation is greater than 98 % of similarity, once we
obtained the Recovered Video it is not possible to
apreciate any difference with the Video to Conceal.
VI. PICTURE QUALITY.
The treatment of pictures like compression and
its inverse treatment can happen that original
pictures be affected, this is, pictures can loss its
characteristics of each pixel. But sometimes this
loss can not be really important because if we
take a look at the picture we can not recognize
defects when it was regenerated. It can be called
“compression loss”[4].
For calculating “compression loss” between
many pictures we can use: Mean Square Error
(MSE) and Peak Signal Noise Relationship
(PSNR)[4]. MSE is the square accumulated
error between the original picture and
compressed picture, this given as follow:
MSE =
1 m −1 n − 1
∑∑ I (i, j ) − K (i, j )
mn i = 0 j = 0
2
This formula is given just for 8 bit pictures or in
scale of grays. In this application for RGB
pictures, we use next formula:
142
1
MSE =
3mn
m −1 n −1
2
∑∑∑ I (i , j , k ) − K (i , j , k )
i= 0 j =0 k =0
2
(4)
where I and K are two pictures given, the first
one is the original and second was modified, m
and n are the rows and columns conforming
picture matrix.
PSNR is the relation between the maximum
value possible and the power of noise. This tool
shows the fidelity of compressed picture vs
original picture. PSNR is usually expressed in
dB, given by next formula:
 MAX 2I
PSNR = 10log1 0
 MSE

 MAX I 
 = 20log1 0


 MSE 
(5)
2
where, MAX I is the maximum value taken by
one pixel from the picture frame.
Typical PSNR values for high resolution
pictures are between 30 dB and 40dB.
In this research for video concealed and video
recovered we find a PSNR value of: 28.445dB.
VII.
C ONCLUSION .
The method proposed in this research allow
us to hide a great amount of information in a
Video File, and its samples are not altered
greatly. In the other hand, the way for inserting
data in the original file is so secure, because
depending of the image
characteristic we
choose the place where the information will be
hidden. This pseudo random form for the
conceal information produces a great security,
because the most adequates places in the
original image for inserting information are
found. In addition, just by changing the
threshold value, the places in the original image
where the information will be hidden, change
too. After performing the tests we can notice
that in the Base Video a great amount of
information can be hidden, and the quality of
the Modified Video remains without changes.
In addition we set that the Video to Conceal
should be splitted twice and just the matrix of
Approximations and Horizontal Details are
needed for the reconstruction. Althought in this
work only the tests for hidding information were
done in this two matrices, the Vertical and
Horizontal Details can be added for growing the
cross correlation between the Video to Conceal
and the Recovered Video. However, it increase
the processing time and hence the posibility of
implementing in real time applications.
REFERENCES .
[1] Walker S. James, A Primer on Wavelets and their
Scientific Applications, Chapman &Hall/CRC, 2003
[2] Martin Vetterli, Jelena Kocevic, Wavelets and Subband
Coding. Ed. Prentice-Hall, 1995
[3] David F. Walmut, An Intoduction to Wavelet Analysis,
Ed. Birkhäuser. 2004
[4] Vyacheslav P. Tuzlukov, Signal Processing Noise, Ed.
CRC Press, 2002
[5] I. Orea Flores, M.Acevedo and J. López-Bonilla,
Wavelet and Discrete Transform for Inserting Information
into BMP Image, Anziam J. 48, No.1 (2006) 23-35
[6] Ramesh (Neelsh) Neelamani, R. Quiroz, Zhigang Fan,
Sanjeb Dash, and Richard G. Baraniuk, JPEG Compression
history estimation for color images, IEEE Transactions on
Image Processing 15, No. 6 (2006) 1365-1378.
[7] George C. Canavos, Probabilidad y Estadística:
Aplicaciones y Métodos, McGraw Hill, 1993
143
Energy conservation in the concealment of information in a video by means o f
Discrete Wavelet Transform.
B. E. Carvajal - Gámez, M.A Acevedo- Mosqueda, J.L.López-Bonilla.
SEPI-Telecommunications ESIME IPN, Unidad Profesional Adolfo López Mateos. Col. Lindavista, 07738, México, D.F. email: [email protected]; [email protected];
Abstract – In this work an algorithm is
proposed to hide information, in an .avi video file.
Such file is separated into audio and video. The
video breaks down in its frames, in which we
apply a discrete wavelet transform . Once the
image has been separated in frequencies, zones are
chosen where the information can be hidden. In
this work the source of information is an image.
Nevertheless, the procedure can be applied to any
type of information. The information to hide also
breaks down in their frequencies components, and
only are conserved those low est frequency while
the others are rejected. The compressed image to
be hidden is inserted into the video’s sub im ages.
Once the concealment is carried out it is changed
with a discreet inverse wavelet transform and the
video is reconstructed again. To recover the
hidden information the same insertion procedure
is applied with the inverse transform . Several
tests are carried out to select the indicated wavelet
for the fit video decomposition and for the
information to hide.
of the proposed algorithm, by considering the
adequate places in which the process of
concealment should be apply. The next section
refers the way of recovering of the inserted
information. Finally, several tables with the
results of the different tests applied to the
modified images are shown, to determine
through the Correlation what so seemed are
they .
II.
SPLITTING THE VIDEO IN
FRAMES .
There are main phases inside this paper: the
first one refers to the prosecution that is carried
in the Base Video, which is the video in which
another video is hidden. The second phase
shows the prosecution to introduce the
information in the Base Video and finally the
third one exhibits the process to get the Video
Recovered, as is shown in the fig 1.
Key Words – Wavelets, Video.
I.
INTRODUC TION.
The concealment of information in digital
formats is a theme that is presented like a need
owed espionage in different communication
media. A very adequate alternative able to do
such work is by means of the science called
steganography, which refers with the capacity to
hide information for the purpose that by itself
we don’t perceive its existence. In this research
the information to hide is an image, employing a
video with avi format. One of the challenges
presented here is that not only the information
should be hidden, but also it should be protected
in such way that it will be almost impossible to
extract it without authorization. Several tools
exist that permit the information concealment.
One of these is the Discrete Wavelet Transform
(DWT). Such a tool can be employed with text,
voice, images and video.In this article a capable
method to hide information is presented in such
way a video can be conceal security inside a
base video . The first part is focused in describe
the images composition, the DWT , and how to
measure the affectation suffered by the
information through the energy calculation.
Subsequently , the process of splitting the video
in frames is described, as well as the application
Fig. 1 Process of splitting and concealment of data.
The first phase refers to the splitting of the
two videos in frames (Base Video and Video to
Hide) and the separation of each frames in its
RGB components. For each RGB matrix of the
Base Video the DWT is applied to obtain the
four sub characteristic matrix of the splitting of
the DWT:
Approximations, Horizontal,
Vertical and Diagonals.
All these were
submitted and each one of the pictures
pertaining to the videos.
Subsequently the lines of the flow diagram
into the Phase of Concealment, here through the
144
proposed algorithm all the matrix obtained in
their splitting of the Hidden Video are added to
the matrix of the Base Video and, finally the
matrix with the added hidden information will
pass to the following block, which has the task
of reconstruct all of these, in the frames that
subsequently will compose the modified video.
To carry out the process with this algorithm,
we take one of the 24 frames by second that
compose a movie. Figures 2 and 3 shows only
some frames that compose the Base Video on
which the Video to hide is going to be
concealed.
Once a frame of the Base Video with the
information from the Hidden Video has been
obtained, we should carry out the conversion to
JPEG format [8]. By doing this we can obtain
easily a high-quality image, with 8 bits deep, as
is shown in the figure 2 and also at the same
time to include its map of characteristic colors
for each image.
For working with a video we should take it
frame by frame from all the parts that compose
the video in order to carry out a better
prosecution for the image and to go breaking
down in its RGB matrix [8], for obtaining the
information of the values for each pixel that
composes each frame of the video in question.
Fig.3 Splitting of the Frame to a *.jpeg file.
Once we obtained the frames from the video we
proceed
to
characteristic
matrix:
Approximations, Details, Horiz ontal and
Vertical (A, D, H and V), where its observed
that the matrix of Approximations is the one
that at the moment to be broken down, the low
frequencies were stored, interpreting it in other
words, the greater quantity of compacted energy
is located here. One must recall that one of the
main object ives of a two dimensions DWT is
the compaction of the energy in each
characteristic matrix, therefo re in the other
matrix remains a percentage less than the total
energy. The DWT is carried out for the frames
of the Base Video where the information is
going to be hide the information and applied
two times the DWT for the Video to Hide. This
is in order to have greater capacity of
concealment for each frame of the videos in
question.
Now we establish a threshold criterion which, as
has been mentioned in our theoretical
background, is the standard deviation of all the
images. Consequently the established criterion
is: "All the values less than this threshold can
be affected by external information originated in
the pictures that are going to be hidden". Then
the following condition can be established:
1
n m
− 2 2
 1



threshold ≤ 
* ∑∑  xij + x   (1)
 
 nm i =1 j =1 
Fig. 2 Splitting of the Base Video.
Since the video has been hidden, we can apply
the Inverse DWT for recovering the matrices A,
D, H and V, and in this way to add successfully
the image with its characteristic RGB matrix.
145
III.
APPLICATION OF THE DWT.
The input sample is the image which is
represented by x [n]. This discr et e sample
passes through a series of filters [9]. The
resultant discret e output of each filter passes
through the process of decimated with a factor
of 2.
T he resolution of the sample is a measure of the
detailed quantity of information inside the
sample. This is modified by the action of
filtering and the scale is modified by the
operation of decimated.
Such operation
represents the reduction of the sampling
velocity, or to the elimination of some of the
samples. T his process of filtering and successive
decimated is known as codification in subbands, as is shown in the figure 4.
This procedure can be expressed by the
convolution of the input samples by the filters
[1]:
yhigh[k , j ] = ∑ ∑ x [n, m] ⋅ g [(k − n ), ( j − m )] (2)
nm
ylow[k , j ] = ∑ ∑ x [n, m ]⋅ h [(k − n ), ( j − m) ] (3)
nm
where yhigh[k] y ylow[k] are the outputs of the
high -pass and low-pass filters, respectively after
decimating by 2.
The DWT analyzes the samples in different
bands of frequency with different resolutions by
splitting the discrete signal into components of
greater and smaller energy. The splitting is
gotten by filtering successively the discrete
signal.
In the domain of the time, as is shown in the
figure.4, the original sequence x [n] is passed
through a filter high-pass g [n] and a low -pass
h[n]. In this particular case the most interesting
matrix is that of approximations (low
frequencies), since it cont ains the greater
quantity of two dimensional DWT information
[2], [3].
A discrete image x is an array of M rows and N
columns of real numbers .
The two-dimensional DWT is obtained with the
same formulae than for the one dimensional
DWT, carrying out the two following steps:
1
Applying the DWT to each row of the
matrix of the image x, which will
produce a new matrix.
2
For this new matrix, the DWT is
applied again but for each column.
Remaining thus four sub images of M/2 rows
and N/2 columns:
 h1

f →
 1
a
d1 


1
v 
a1 is calculated with the average of the rows
followed by the average of the columns, gett ing
in this sub -image a compression of the original
one, harboring the low frequencies.
h1 is calculated with the average of the rows
and the difference among the columns, where
the horizontal details of the image are
conserved, which contain the lower-middle
frequencies.
v 1 is similar to h1, except that the roles of
vertical and horizontal are swept. This subimage contains the vertical details, conserving
the upper-middle frequencies.
Finally , d 1 contains the diagonals details,
which are obtained with the difference of rows
and columns and preserve the high frequencies .
IV.
METHOD OF SELECTING THE
CORRECT PLACE TO HIDETHE VIDEO .
We consider the following criterion for hiding
the information:
Fig. 4 Filtering and Decimated for sign al x[n]
iii) We analyze in detail the image to determine
in which point it is more chaotic. After that
146
the hide of information should not affect the
image where the information its going to be
hidden.
iv) By applying the criterion of thr eshold, we
take the RGB matrix of the image that is
desired to be hidden and begin to introduce
the information in a pseudo-random form.
viii) Subsequently we take the image of the
Modified Video where the information was
stored and we make the inverse process in
order to recover Video to Hide via DWT.
V.
METHOD FO R TESTING OUR
ALGORITHM.
To determine the similarity between the
recovered and the original frames [6] we apply a
cross correlation process.
rxy [i , j ] =
( [ ] )(y[m , n] − y )
((∑m ∑n ( x[m, n] − x )2 )(∑m ∑n (y[m, n] − y )2 )) (4)
∑m ∑n x m, n − x
where x is the matrix of the original image, y
is the matrix of the recovered image , n , m is
the number of matrix elements, and l is the
displacement of the images.
In addition it is verified the similarity between
the images with the correlation index, which
offers greater security with values oscillating
between 0 and 1; where 1 represents the
maximum similarity and 0 the minimum.
The results obtained are shown in the following
tables.
TABLE 1. CORRELATED MATRIX R WITH THE ORIGINAL
MATRIX R .
Correlation
Frame
0
1
2
3
4
5
6
7
8
9
1
0.9744
0.9744
0.9744
0.9744
0.9744
0.9744
0.9744
0.9744
0.9744
0.9744
2
0.9739
0.9739
0.9739
0.9739
0.9739
0.9739
0.9739
0.9739
0.9739
0.9739
3
0.9737
0.9737
0.9737
0.9737
0.9737
0.9737
0.9737
0.9737
0.9737
0.9737
4
0.9735
0.9735
0.9735
0.9735
0.9735
0.9735
0.9735
0.9735
0.9735
0.9735
5
0.9740
0.9740
0.9740
0.9740
0.9740
0.9740
0.9740
0.9740
0.9740
0.9740
3
4
5
0.9720
0.9720
0.9720
0.9717
0.9717
0.9717
0.9716
0.9716
0.9716
0.9713
0.9713
0.9713
0.9720
0.9720
0.9720
0.9721
0.9721
0.9721
6
7
8
9
0.9720
0.9720
0.9720
0.9720
0.9717
0.9717
0.9717
0.9717
0.9716
0.9716
0.9716
0.9716
0.9713
0.9713
0.9713
0.9713
0.9720
0.9720
0.9720
0.9720
0.9721
0.9721
0.9721
0.9721
THE TOTAL AVERAGE OF THE CORRELATION IS:
0.98414 *100 = 98.4%
TABLE 3. CORRELATED MATRIX B WITH THE ORIGINAL
MATRIX B.
Correlation
Frame
1
2
3
4
5
0
0.9999 0.9999
0.9999
0.9999
0.9999
1
2
3
4
5
6
7
8
9
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
0.9999
THE TOTAL AVERAGE OF CORRELATION IS:
0.98338 *100=98.3% % .
VI. VERIFICATION OF THE
ALGORITHM BY THE LOSS O R
GAINING OF ENERGY IN AN IMAGE.
Another form to verify the algorithm is by
calculating the total energy in each matrix
generated by the DWT .
E = ∑ ∑ x [n, m ]
2
n
(5)
m
The total amount of energy represents a mean
for knowing the affectation of the image to be
modified [4], [5]. By saying modified we refer
to the additional information that has been
aggregated.
The results obtained are:
THE TOTAL AVERAGE OF THE CORRELAT ION IS:
0.98315 *100 = 98.3%
TABLE 2. CORRELATED MATRIX G WITH THE ORIGINAL
MATRIX G.
Correlation
Frame
1
2
3
4
5
6
0
0.9720
0.9717
0.9716
0.9713
0.9720
0.9721
1
2
0.9720
0.9720
0.9717
0.9717
0.9716
0.9716
0.9713
0.9713
0.9720
0.9720
0.97 21
0.9721
147
B ASE VIDEO:
ORIGINAL
VIDEO
ENERGY
RECOVERED
VIDEO
ENERGY
R
G
B
3.7405e+010
3.2700e+010
2.2927e+010
R
G
B
3.7653e+010
3.2957e+010
3.2700e+010
VII.
O RIGINAL
VIDEO
ENERGY
RECOVERED
VIDEO
ENERGY
R
G
B
5.4686e+010
4.5262e+010
4.1730e+010
R
G
B
5.4686e+010
4.5262e+010
4.1730e+010
HIDDEN VIDEO :
CONCLUSION
The results deduced with our algorithm were
presented in the base of the DWT. Through this
algorithm we have shown the effectiveness for
hiding a video, inside another one. The results
show a correlation greater than the 90% of
similarity between the original and the
recovered frames .
Also the results for the conservation of the
energy in the modified and recovered videos are
presented for each characteristic matrix of an
image: R, G and B.
For obtain ing these results was necessary to
hide the information in the low frequencies of
the specific splitted matrix.
REFERENCES .
[1] Walker S. James, A Primer on Wavelets and their
Scientific Applications, Chapman & Hall/CRC. 2003
[2] Martin Vetterli, Jelena Kocevic, Wavelets and Subband
Coding. Ed. Prentice-Hall.1995
[3]
David F. Walmut.. An Introduction to Wavelet
Analyses. Ed. Birkhäuser. 2004
[4] Vyacheslav P. Tuzlukov.Signal Processing Noise. Ed.
CRC Press. 2002
[5] M.A.Acevedo,J.López-.Bonill a, R. Linares y Miranda,
Método robusto de marca de agua para audio con
transformada Haar, Computación y Sistemas - CIC-IPN vol
8, No. 3 (2005) pags. 218-230.
[6] I. Orea Flores, M.Acevedo and J. López-Bonilla Wavelet
and Discrete Transform for Inserting Information into BMP
Images.Anziam J. 48, No.1 (2006) pags.23 -35
[7] Ramesh (Neelsh) Neelamani, R. Quiroz, Zhigang Fan,
Sanjeb Dash, and Richard G. Baraniuk, JPEG Compression
history estimation for color images, IEEE Transactions on
Image Processing vol. 15, No. 6 (2006), pags. 1365-1378.
[8] Sanjit K. Mitra “Digital Signal Processing: a computer
based approach”, Ed. McGraw-Hill , pp. 88-94. 2001.
148
ANEXO 2:”Participación en Congresos ”
1.- 9º CONGRESO NACIONAL DE INGENIERÍA ELECTROMECÁNICA Y DE
SISTEMAS. Ocultamiento de Información en Video Utilizando Wavelets
M. A. Acevedo, B. E. Carvajal Gámez, S. L. Gómez Coronel SEPI-Telecomunicaciones
ESIME IPN. Noviembre 13-17, 2006; México, D.F.
2.-Decimoséptima Reunión de Otoño de Comunicaciones, Computación, Electrónica y
Exposición Industrial. ROC&C’06. “Transmisión de información oculta en un video
mediante la Transformada Wavelet Discreta.” M. A. Acevedo, B. E. Carvajal
Gámez, S. L. Gómez Coronel.SEPI-Telecomunicaciones ESIME IPN, Unidad
Profesional Adolfo López Mateos.
3.- Primer Encuentro de Estudiantes de Ciencias en la Computación.2007.
Ocultamiento de Video sobre Video mediante la Transformada de Wavelet
Discreta. Centro de Investigación en Cómputo (CIC).
B. E. Carvajal Gámez, M. A. Acevedo Mosqueda, S. L. Gómez Coronel
ESIME-IPN. SEPI-Telecomunicaciones ESIME IPN, Unidad Profesional Adolfo López
Mateos. Primer Lugar Obtenido como mejor ponencia.
149
GLOSARIO:
Esteganografía: Método para ocultar información.
Dominio Espacial: Uso directo de los bits
de cada píxel que conforma un
video.
Dominio Frecuencial: Uso de alguna Transformación para el análisis de una
imagen en frecuencia.
Ancho de Banda: cantidad de información o de datos que se puede enviar a
través de una conexión en un período de tiempo dado.
Hz: unidad de muestras por segundo en la transmisión de datos.
Cable Coaxial: Medio guiado aplicado como ejemplo para el Ancho de Banda.
Cabecera o headers: Parte inicial de un archivo de audio o de video que define
características propias del archivo.
Transformada Wavelet Discreta(TWD): transformada del dominio
frecuencial capaz de analizar un archivo en el dominio de la frecuencia así como en el
dominio del tiempo.
daub4: Daubechies 4. Nombrada así por su autora y 4 por que contiene 4 valores de
respue sta al impulso que caracterizan a los filtros pasa altas y pasa bajas.
Haar: nombrada así en honor a su descubridor. Transformada con más fácil y sencilla
aplicación.
Aproximaciones: Sub vector obtenido por la transformada Wavelet. Dicho vector
contiene los valores a baja frecuencia del archivo original.
Detalles: Sub vector obtenido por la transformada Wavelet. Dicho vector contiene
los valores a alta frecuencia del archivo original.
Detalles Horizontales(h): Sub vector obtenido por la transformada Wavelet
en dos dimensiones. Dicho vector contiene los valores a bajas y altas frecuencias del
archivo original.
Detalles Verticales(v): Sub vector obtenido por la transformada Wavelet en
dos dimensiones. Dicho vector contiene los valores a altas y bajas frecuencias del
archivo original.
Detalles Diagonales(d): Sub vector obtenido por la transformada Wavelet en
dos dimensiones. Dicho vector contiene los valores a altas frecuencias del archivo
original.
f: función recuperada.
PSNR: Relación Señal a Ruido Pico.
MSE: Error Cuadrático Medio.
Ruido: Señal no deseada adiciona ha algún archivo.
150

Documentos relacionados