Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERÍA MARCAS DE AGUA EN IMÁGENES DIGITALES UTILIZANDO LA TRANSFORMADA DE HERMITE T E S I S QUE PARA OBTENER EL TÍTULO DE INGENIERO EN COMPUTACIÓN P R E S E N T A N JUAN MANUEL CRUZ ALVARADO ISAAC VARGAS MEJÍA DIRECTOR DE TESIS: DR. BORIS ESCALANTE RAMÍREZ México, D. F. 2007 Neevia docConverter 5.1 UNAM – Dirección General de Bibliotecas Tesis Digitales Restricciones de uso DERECHOS RESERVADOS © PROHIBIDA SU REPRODUCCIÓN TOTAL O PARCIAL Todo el material contenido en esta tesis esta protegido por la Ley Federal del Derecho de Autor (LFDA) de los Estados Unidos Mexicanos (México). El uso de imágenes, fragmentos de videos, y demás material que sea objeto de protección de los derechos de autor, será exclusivamente para fines educativos e informativos y deberá citar la fuente donde la obtuvo mencionando el autor o autores. Cualquier uso distinto como el lucro, reproducción, edición o modificación, será perseguido y sancionado por el respectivo titular de los Derechos de Autor. ii Agradecimientos A mis padres, gracias por su cariño, comprensión y el sacrificio hecho durante estos años. Son mi inspiración. A mis hermanos, mi motivación. Sigan por el camino de la educación. A mis familiares y amigos, son parte importante en mi vida, sé que cuento con ustedes. Agradezco especialmente al Dr. Boris Escalante, sin su ayuda la elaboración de esta tesis no hubiera sido posible. A la Universidad Nacional Autónoma de México y a la Facultad de Ingeniería, es un orgullo haber pertenecido a estas instituciones. A mis compañeros durante la carrera, por todos los momentos de alegría y arduo trabajo que compartimos. Juan Manuel Cruz Alvarado Neevia docConverter 5.1 iii Agradecimientos A mis padres, por su incondicional apoyo, cariño, dedicación, perseverancia y paciencia que me han brindado a lo largo de mi vida. Siempre les estaré agradecido por todo lo que me han dado, este logro mío también es de ustedes y la oportunidad de obtenerlo sin duda es el mejor legado que pudiera recibir. A mis hermanos, porque sin ellos habría sido imposible llegar a donde estoy ahora. Espero que logren lo mismo que yo y más. A mis abuelos, por el cariño que me han brindado y por ser parte fundamental en mi vida. Lo que soy lo debo en gran medida a ustedes, muchas gracias por todo. A mis tíos, tías y primos, porque siempre han estado conmigo en los momentos gratos y en los difíciles. Gracias por confiar en mí. En especial a la Universidad Nacional Autónoma de México y a la Facultad de Ingeniería, porque es ahí donde tuve mi formación como profesionista y como persona. A lo largo de estos años han sido y seguirán siendo mi segunda casa. Al Dr. Boris Escalante, por el apoyo que nos brindó en la realización de esta tesis, por permitirnos trabajar en el laboratorio de Procesamiento Digital de Imágenes, así como por la beca proporcionada. Su ayuda fue esencial en todo momento. A mis amigos que siempre han estado conmigo, gracias por su apoyo. A mis compañeros del laboratorio de Procesamiento Digital de Imágenes, por su agradable compañía en todo este tiempo. Isaac Vargas Mejía Neevia docConverter 5.1 iv CONTENIDO Agradecimientos ...................................................................................................................ii CONTENIDO ...................................................................................................................... iv 1. INTRODUCCIÓN........................................................................................................ 1 1.1. Propiedad intelectual y la era digital. ..................................................................... 1 1.1.1. Protección de derechos de autor. ........................................................................ 2 1.1.2 Autentificación de imágenes e integridad de datos. ........................................... 4 1.1.3 Ocultamiento de datos. ....................................................................................... 5 1.1.4 Watermarking (Marcas de Agua). ...................................................................... 6 1.2 Objetivo de la tesis. ................................................................................................ 7 1.3 Justificación del proyecto de tesis. ......................................................................... 7 2. LA TECNOLOGÍA DE WATERMARKING. ..................... ..................................... 9 2.1 El proceso de watermarking. .................................................................................. 9 2.1.1 Incrustación de la marca. .................................................................................. 10 2.1.2 Distribución. ..................................................................................................... 12 2.1.3 Extracción o detección...................................................................................... 13 2.1.4 Decisión. ........................................................................................................... 14 2.2 Aspectos y requerimientos para la aplicación. .....................................................16 2.3 El problema robustez – invisibilidad.................................................................... 17 2.4 Relación con la criptografía.................................................................................. 18 2.5 Operando en el dominio de la transformada.........................................................19 2.5.1 Espectro disperso.............................................................................................. 20 2.5.2 La Transformada Wavelet. ............................................................................... 21 Neevia docConverter 5.1 v 2.5.3 La Transformada de Hermite............................................................................ 33 2.6 El sistema de visión humano. ............................................................................... 46 2.6.1 Sensibilidad al contraste. .................................................................................. 49 2.6.2 Sensibilidad a la frecuencia espacial. ............................................................... 50 2.6.3 Enmascaramiento.............................................................................................. 52 3. IMPLEMENTACIÓN DEL ALGORITMO DE WATERMARKING....... .......... 53 3.1 Explotando las características del sistema de visión humano. ............................. 53 3.2 Utilizando la transformada Wavelet. .................................................................... 55 3.2.1 Enmascaramiento.............................................................................................. 56 3.2.2 Selección del valor de umbral. ......................................................................... 59 3.3 Utilizando la transformada de Hermite. ............................................................... 62 3.3.1 Enmascaramiento.............................................................................................. 64 3.3.2 Selección del valor de umbral. ......................................................................... 66 4. ATAQUES................................................................................................................... 68 4.1 Clasificación de los ataques.................................................................................. 68 4.2 Contrarrestar ataques. ........................................................................................... 71 5. RESULTADOS. ..........................................................................................................74 5.1 Fuerza de la marca incrustada. ............................................................................. 74 5.2 Umbral de detección............................................................................................. 87 5.3 Compresión de la imagen. ................................................................................... 92 5.4 Procesamiento de la imagen. ................................................................................ 97 5.5 Transformaciones geométricas. .......................................................................... 107 Neevia docConverter 5.1 vi 6. CONCLUSIONES. ................................................................................................... 115 6.1 Conclusiones generales....................................................................................... 115 6.2 Futuras investigaciones. ..................................................................................... 119 ANEXO A. IMÁGENES UTILIZADAS. ....................................................................... 120 ANEXO B. CÓDIGO FUENTE ...................................................................................... 125 REFERENCIAS ............................................................................................................... 130 Neevia docConverter 5.1 1 1. INTRODUCCIÓN. 1.1. Propiedad intelectual y la era digital. En la actualidad, el contenido multimedia, que consta de imágenes, archivos de audio y vídeo, puede ser reproducido y distribuido vía World Wide Web sin pérdida de calidad y, en muchos casos, sin costo alguno. Estos documentos digitales adquieren cada vez mayor importancia, al mismo tiempo de que surgen nuevos retos dado que es muy sencillo duplicar y manipular el contenido multimedia. Los autores y los proveedores de este tipo de contenido deben ser capaces de demostrar la propiedad intelectual, delimitar el uso del contenido, así como evitar la distribución de copias ilegales a terceros. La tecnología de marcado de agua digital (digital watermarking, en inglés) juega un papel muy importante en este contexto, ya que permite colocar una marca en el contenido multimedia (imágenes, audio o vídeo). Los objetivos que se pretenden alcanzar con esta tecnología son: a) Protección de la propiedad intelectual. En este caso, se pretende identificar al autor legítimo del documento digital y, en su caso, a los usuarios autorizados del mismo, con el fin de evitar la distribución de copias ilegales a terceros. b) Autentificación del contenido e integridad de los datos. En este caso, el marcado de agua digital se utiliza para detectar modificaciones significativas al contenido multimedia. En otras palabras, se pretende verificar la autenticidad del contenido. Es decir, con el marcado de agua digital se pretende proteger los derechos de autor para contenido multimedia, o bien garantizar la autenticidad del mismo. Se trata de un campo en el que se ha hecho bastante investigación a lo largo de la última década, por lo cual, se busca aplicar con éxito en problemas reales. También se ha hecho investigación en lo que se conoce como fingerprinting (ocultamiento de secuencias o un conjunto de características con el fin de distinguir un objeto de otros objetos similares) y en Neevia docConverter 5.1 2 esteganografía (ocultamiento de un mensaje secreto dentro de otra fuente de información para así cubrir su existencia), aunque estos dos campos no forman parte del objetivo de la presente tesis. La tecnología denominada digital watermarking es, relativamente, una disciplina joven. Durante los primeros años de la década de los noventa, se publicaban alrededor de 5 a 10 documentos por año, hasta que en 1995 se incrementó en gran medida el interés por esta área. 1.1.1. Protección de derechos de autor. El objetivo del watermarking para protección de derechos de autor es introducir una marca dentro del contenido multimedia, la cual es útil para identificar al autor del documento digital (por ejemplo, una imagen o bien un archivo de audio o vídeo). Además de identificar al autor del contenido, tal vez sea de interés introducir una marca (o huella digital) para identificar al comprador del contenido en cuestión. La marca de agua puede ser un número registrado, un mensaje o un logotipo. La expresión “marca de agua” proviene del arte antiguo de colocar logotipos en el papel. Consideremos el caracter especial ‘©’ que se refiere a derechos de autor. Su aplicación al material protegido no impide que se cometan infracciones a la propiedad intelectual, sino que sólo es una herramienta que es utilizada en un marco legal muy amplio. Lo mismo ocurre con una marca de agua digital, la cual por sí misma no impide violaciones a los derechos de autor, sino que es un medio que puede utilizarse en una arquitectura de manejo de derechos por propiedad intelectual [4]. Las marcas de agua digitales pueden ser perceptibles o imperceptibles. Las marcas de agua perceptibles, para el caso de imágenes digitales, usualmente consisten de un logotipo, el cual es fácilmente incrustado en la imagen de interés, pero es difícil de remover Neevia docConverter 5.1 3 (figura 1.1). No obstante, muchas aplicaciones requieren que la marca de agua sea imperceptible (invisible). Véanse las figuras 1.2 y 1.3. Figura 1.1. Imagen con marca de agua visible. Figura 1.2. Imagen original (izquierda) y marca de agua a insertar (derecha). Neevia docConverter 5.1 4 Figura 1.3. Imagen marcada (izquierda) y diferencia entre la imagen original y la marcada (derecha). En este caso, se trata de una marca de agua invisible. Además, en el caso de imágenes digitales, la marca de agua debe ser robusta contra procesamientos comunes, tales como compresión JPEG o filtrado. Asimismo, los esquemas de watermarking deben ser seguros contra ataques malintencionados; es aquí donde las técnicas criptográficas y las propiedades estadísticas de secuencias de números pseudoaleatorios juegan un papel importante. La robustez es una propiedad indispensable para garantizar la protección de derechos de autor. En esta tesis nos enfocamos en marcas de agua invisibles para imágenes digitales. 1.1.2 Autentificación de imágenes e integridad de d atos. Otra aplicación del watermarking es la autentificación de imágenes. En este caso, las técnicas de watermarking permiten detectar modificaciones significativas a la imagen de interés (figura 1.4). Dado que las imágenes digitales son susceptibles a alteraciones debidas a diversos procesamientos, las marcas de agua son útiles para verificar la autenticidad de una imagen. Las marcas de agua utilizadas para este fin, deben ser frágiles, esto quiere Neevia docConverter 5.1 5 decir que cualquier modificación a la imagen destruirá (o al menos alterará) la marca de agua. Los algoritmos de watermarking para autentificación de imágenes deben tolerar distorsiones tales como conversión de formato de archivo, compresión o transmisión progresiva. Figura 1.4. Integridad de imágenes. La imagen del lado derecho fue manipulada. 1.1.3 Ocultamiento de datos. El ocultamiento de datos (steganography en inglés) consiste en incrustar la mayor cantidad de datos dentro de una señal (por ejemplo, una imagen). Esto permite establecer comunicación utilizando mensajes cifrados sin atraer la atención de terceros. Para propósitos de esteganografía, son pocos los requerimientos de robustez; en cambio, la invisibilidad y la capacidad (máxima cantidad de datos que se pueden introducir) son de suma importancia. Neevia docConverter 5.1 6 Es conveniente hacer notar la diferencia entre la técnica de marcado de agua digital (digital watermarking) y la esteganografía. Ambos camposde estudio pertenecen al área del ocultamiento de la información, pero sus objetivos son distintos: • La esteganografía es la técnica donde cierto medio es usado para cubrir la transmisión de un mensaje imperceptible, donde la presencia del mensaje se debe mantener en secreto. Por lo general, el mensaje no tiene relación alguna con el medio que lo cubre, y cualquier alteración que se haga al medio que cubre al mensaje, traerá como consecuencia que el mensaje no podrá ser leído [4]. • La técnica de digital watermarking no requiere que la presencia del mensaje se mantenga en secreto, no obstante, dicho mensaje debe ser robusto a alteraciones que se hagan al medio que lo contiene. 1.1.4 Watermarking (Marcas de Agua). El concepto de marcas de agua está relacionado con la invención del papel. Veamos las siguientes definiciones de marca de agua: • Logotipo translúcido creado en la fabricación de papel, cuando éste se encuentra formado por agua en un 90%. • Una marca de agua es un diseño realzado en un papel, utilizado para identificar a dicho papel y a su fabricante. La marca de agua puede ser vista cuando el papel es colocado a contraluz. Así, podemos decir que la existencia de las marcas de agua, en conjunto con la era digital, ha llevado a establecer el término marcas de agua digitales, o bien digital watermarks. La tecnología de watermarking es derivada de la criptografía y de la esteganografía. La criptografía consiste en codificar un mensaje con el fin de proteger su contenido, Neevia docConverter 5.1 7 mientras que la esteganografía, como ya se dijo, consiste en el ocultamiento de un mensaje secreto dentro de otra fuente de información para así cubrir su existencia. En la actualidad, existen técnicas de watermarking para prácticamente cualquier tipo de medio digital, tales como documentos de texto, imágenes (la mayor parte de la investigación de watermarking se centra en este tipo de contenido), vídeo, audio, modelos de polígonos en 3D y software. Algunas aplicaciones que requieren de watermarking en imágenes son: distribución de imágenes por Internet, cámaras digitales, imágenes médicas, bases de datos de imágenes y vídeo, etc. 1.2 Objetivo de la tesis. A partir de la definición de watermarking, podemos establecer el objetivo del proyecto de la presente tesis: Implementar un algoritmo de watermarking para imágenes digitales, utilizando la transformada de Hermite, con el objetivo de proteger los derechos de autor. Dado que en esta tesis nos enfocamos en la protección de los derechos de autor, se utilizarán marcas de agua invisibles. Además, se pretende investigar si la transformada de Hermite provee ventajas significativas sobre la transformada Wavelet en lo que se refiere a watermarking en imágenes digitales, en términos de robustez e invisibilidad. 1.3 Justificación del proyecto de tesis. Para la implementación del algoritmo de watermarking, nos basamos en un algoritmo propuesto por Mauro Barni, Franco Bartolini y Alessandro Piva [1] descrito en el capítulo 3. Decidimos tomar como referencia dicho algoritmo, ya que en la literatura referente a watermarking, varios autores hacen referencia al documento citado. Además, Neevia docConverter 5.1 8 dicho algoritmo propone una solución óptima para el problema robustez-invisibilidad, el cual es explicado en el capítulo siguiente. Por otra parte, elegimos al watermarking como tema central de esta tesis, ya que es un campo sobre el cual se ha hecho bastante investigación, y pretendemos aportar a dicha investigación con nuestros resultados, para de esta forma saber si la transformada de Hermite es de utilidad en el campo de marcado de agua en imágenes digitales. Neevia docConverter 5.1 9 2. LA TECNOLOGÍA DE WATERMARKING. 2.1 El proceso de watermarking. El marcado de agua en imágenes digitales introduce datos en la imagen a marcar. El proceso general de marcado de imágenes se presenta en la figura 2.1. La imagen original es modificada usando la marca de agua para así crear la imagen marcada. En este proceso, algunos errores por distorsión son introducidos. Para asegurar la transparencia de los datos embebidos, la cantidad de distorsión en la imagen debida al proceso de incrustación de la marca tiene que ser pequeña. La imagen marcada es posteriormente distribuida y puede circular de usuarios legítimos a ilegítimos. De este modo, la imagen está sujeta a varios tipos de distorsión. La distorsión puede ser el resultado de la compresión de la imagen con pérdidas, re-muestreo o de un ataque específico sobre los datos incrustados. El proceso de extracción puede o no, dependiendo de la naturaleza de la aplicación, requerir de la imagen original para estimar los datos incrustados en la imagen distorsionada. La marca de agua (o simplemente marca) es recuperada con la ayuda de la imagen original cuando ésta se encuentra disponible para la aplicación. Es deseable que la diferencia entre los datos extraídos y los incrustados sea lo más pequeña posible. Para poder observar los diferentes aspectos del problema del marcado de agua, dependiendo de la aplicación particular y los requerimientos de la aplicación, tenemos que precisar el modelo general de watermarking (figura 2.1) y observar a profundidad las etapas sucesivas de este proceso. Estas etapas comprenden: • La etapa de incrustación • La etapa de extracción o detección • La etapa de distribución • La etapa de decisión Neevia docConverter 5.1 10 Figura 2.1. Visión general del modelo de marcado de imágenes. 2.1.1 Incrustación de la marca. Con excepción de algunos esquemas muy prematuros, todos los algoritmos robustos de watermarking operan en el dominio de alguna transformada que ofrezca acceso a los componentes frecuenciales de la imagen original. Omitiendo el paso de transformación y efectuando el paso de incrustación en el dominio espacial, se puede diseñar un algoritmo de watermarking simple y computacionalmente eficiente. Sin embargo, estos enfoques fallan en alcanzar una buena robustez en contra de ataques por compresión. En esta primera etapa del modelo de watermarking, la imagen original es, por lo tanto, inicialmente transformada a un dominio que facilite la incrustación de la marca de agua. La marca (también llamada mensaje) puede ser un conjunto de datos binarios, una pequeña imagen o un valor inicial para producir una secuencia de números pseudo aleatorios con cierta distribución (por ejemplo, gaussiana o uniforme). La marca puede ser Imagen original Marca Incrustación Llave Distorsión (ruido, ataques) Imagen distorsionada (Atacada) Imagen original Extracción Imagen marcada Marca Extraída Decisión (Comparación, correlación) Neevia docConverter 5.1 11 encriptada para de-correlacionar la información y sujetarla a un esquema de corrección de errores. Posteriormente los coeficientes (en el dominio de la transformada) son modificados con los datos de la firma (la marca). Opcionalmente, podemos emplear un modelo de percepción humana para ponderar la fuerza con que se realizan las modificaciones al incrustar. Escogiendo una transformada conveniente y seleccionando sólo ciertos coeficientes, muchos de los modelos del sistema de visión humano pueden hacerse implícitos. Mientras la transformación de la imagen se aproxime más a las propiedades del sistema de visión humano, será más fácil poner más energía en la señal a incrustar sin causar distorsión perceptible. Finalmente, la transformación inversa es aplicada en los coeficientes modificados para producir la imagen marcada. Figura 2.2. Modelo de la etapa de incrustación de la marca. Imagen original Marca Transformación (DWT, etc.) Llave Imagen marcada Incrustaciónde datos Coeficientes transformados Modelo adaptable (HVS) Transformación inversa Preparación de datos (encriptación) Neevia docConverter 5.1 12 2.1.2 Distribución. La imagen marcada es posteriormente distribuida (por ejemplo, publicada en un sitio Web). Hoy en día, la distribución de contenido digital a menudo incluye compresión previa a la transmisión. Durante la transmisión y distribución de la imagen marcada, no sólo la compresión añade distorsión, también lo hacen los errores de transmisión y las tareas comunes de procesamiento tales como mejoramiento del contraste, re-muestreo y corrección de brillo. Especialmente manipulaciones geométricas de la imagen como escalamiento, rotación o recortes resultan muy dañinas a la marca incrustada. Todas las manipulaciones de la imagen marcada deben ser vistas como ataques sobre la información incrustada. Las modificaciones que ocurren durante el procesamiento normal de la imagen se conocen como ataques casuales o no intencionales, mientras que los ataques cuyo objetivo es debilitar, remover o alterar la marca son llamados hostiles o intencionales. Figura 2.3. Modelo de distribución de la imagen marcada. Compresión con pérdidas Llave pública Imagen marcada Ruido por transmisión, procesamiento de la imagen Dispositivo de detección público Ataques hostiles JPEG JPEG2000 Transmisión progresiva Mejoras a la imagen, recorte, rotación Conocimiento del algoritmo Imagen marcada similar Imagen distorsionada (Atacada) Neevia docConverter 5.1 13 2.1.3 Extracción o detección. Eventualmente, después de que la imagen marcada ha sufrido severas distorsiones, se deseará extraer la marca de agua o bien detectar su presencia. Esto puede ser realizado por quien haya marcado la imagen, el usuario que recibió la imagen o por un tercero. En el primer caso, la llave secreta usada para incrustar la marca así como la imagen original pueden estar disponibles. Esto facilita enormemente el sistema de watermarking y hace que la extracción o detección de la marca sea en forma directa. Estos sistemas que tienen acceso tanto a la llave secreta como a la imagen original son llamados no ciegos o sistemas de watermarking privados. El otro extremo es el caso en que ni la llave privada ni la imagen original estén disponibles durante el proceso de extracción. En este caso, se dice que el sistema es de llave pública. De cualquier manera, no se conoce algún sistema de watermarking de llave pública que sea seguro. Recientemente, esquemas de watermarking asimétricos han sido propuestos, estos utilizan diferentes llaves para incrustar y para detectar la marca. La relación entre watermarking y criptografía de llave pública se explica más adelante. Un esquema de watermarking que permite extraer la marca sin utilizar la imagen original es llamado ciego. También existen métodos de detección o extracción que dependen de algunos datos o características derivadas de la imagen original. Estos esquemas son llamados semi-ciegos. Para resumir estas importantes diferencias basadas en la disponibilidad de la imagen original, existen algoritmos de watermarking: • Ciegos • Semi-ciegos • No ciegos Neevia docConverter 5.1 14 Respecto a la necesidad de tener disponible la llave para la extracción podemos distinguir algoritmos de watermarking: • De llave privada • De llave pública • Asimétricos Figura 2.4. Modelo de la etapa de extracción de la marca. 2.1.4 Decisión. En la etapa de decisión, el sistema de watermarking analiza los datos extraídos o detectados. Dependiendo del tipo de la aplicación y la naturaleza de la marca, la etapa de decisión puede producir diferente número de salidas. En aplicaciones para la protección de copias de la imagen, la salida del sistema de watermarking puede ir de una respuesta simple hasta varias respuestas complicadas. En el Imagen original Marca extraída Transformación (DWT, etc.) Llave Imagen distorsionada (Atacada) Coeficientes transformados (Originales) Modelo adaptable (HVS) Extracción de datos Recuperación de datos (desencriptación) Coeficientes transformados (Distorsionados) Transformación (DWT, etc.) Neevia docConverter 5.1 15 caso más sencillo, el resultado es un simple sí o no, indicando si la marca del propietario ha sido encontrada en la imagen recibida. Sistemas más complejos regresan el logotipo o la información textual sobre los derechos de autor que fueron incrustados en la imagen original. Una medida de similitud ampliamente usada entre la marca incrustada W, y la marca extraída, W*, es la correlación normalizada para secuencias pseudo aleatorias * * W W W W δ ⋅= ⋅ (2.1) o la distancia de Hamming para mensajes binarios, { }1,1−∈iw , * N i iN w wδ = − ⋅∑ (2.2) La respuesta sí/no puede ser derivada de la medida de similitud δ con un umbral apropiado τ ; por ejemplo, si τδ ≥ entonces la marca es detectada, en otro caso se concluye que la marca no puede ser encontrada en la imagen. Figura 2.5. Modelo de la etapa de decisión. Las aplicaciones de ocultamiento de datos y etiquetado de la imagen típicamente tratarán de regresar el mensaje incrustado originalmente. Debido a que la degradación del mensaje no puede ser tolerada, el uso de códigos de corrección de errores es obligatorio para este tipo de aplicaciones. Imagen Marca Original Decisión (correlación, comparación) Umbral Marca extraída Neevia docConverter 5.1 16 Los esquemas de watermarking para autentificación de imágenes y verificación de integridad de datos regresarán ya sea una respuesta sí/no para indicar si la imagen ha sido falsificada, la identidad de la fuente legítima o bien tratarán de identificar las regiones de la imagen que han sido manipuladas. 2.2 Aspectos y requerimientos para la aplicación. Para la autentificación de imágenes, la marca incrustada tiene que ser invisible para un observador humano y debe ser alterada por cualquier modificación intencional sobre la imagen. Además, debe ser difícil insertar una marca falsa y el esquema de watermarking debe poder indicar las regiones donde las alteraciones han sido realizadas. Varios escenarios para la protección de derechos de autor son posibles. Primero, el propietario de una imagen puede incrustar una marca invisible, robusta e inmediatamente extraíble para identificar copias no autorizadas. Segundo, demostrar la propiedad de una imagen requiere, además de robustez, que el esquema de watermarking sea ciego, privado y no invertible (esto es, no debería ser posible extraer una marca de agua de una imagen que no haya sido marcada). Por otra parte, la velocidad y la facilidad de extracción o detección no son de gran relevancia. Finalmente, el propietario de la imagen (el vendedor) puede adicionalmente querer conocer cuáles usuarios permitieron hacer una copia no autorizada de la imagen. Aquí, las técnicas de fingerprinting (huellas digitales) y de seguimiento de circulación entran en juego para identificar no sólo al vendedor sino también al comprador de una imagen. Para cubrir este objetivo, algunos requerimientos adicionales son necesarios. Por ejemplo, debe ser posible generar un gran número de marcas diferentes y la inserción de múltiples marcas debe ser manejada adecuadamente. Para el ocultamiento de datos o propósitos del etiquetado de la imagen, la capacidad máxima de incrustación del mensaje es primordial. Las técnicas de etiquetado de imágenes requieren en gran medida de información sobre la localización de la marca incrustada. Neevia docConverter 5.1 17 Como la criptografía, los métodos de watermarking obedecen al principio de Kerckhoff [23] el cual se refiere a que la seguridad y robustez requieren ser tomadasen consideración debido a que los algoritmos de incrustación y extracción son conocidos a detalle. A pesar de esto, los esquemas más avanzados de watermarking hoy en día no revelan los detalles de implementación para reproducir los resultados. Además, muy poca investigación se ha dedicado a analizar la seguridad de los esquemas de watermarking [2]. 2.3 El problema robustez – invisibilidad. Muchos algoritmos de watermarking han sido propuestos recientemente. La mayoría señala que la marca debe ser incrustada en las partes perceptivamente significativas de la imagen para obtener una marca robusta. Para la mayoría de las imágenes estas partes corresponden a las componentes de baja frecuencia. Sin embargo, si la marca es incrustada arbitrariamente en las bajas frecuencias sin adaptarse a las características locales de la imagen, la calidad de ésta podría degradarse visualmente. Incrustar la marca en las componentes de alta frecuencia permite que la calidad visual de la imagen no se altere, sin embargo esto hace que la marca sea vulnerable a ataques como compresión y filtrado. Para mejorar el rendimiento de un esquema de watermarking se pueden explotar las características del sistema de visión humano. Para esto se compensa la falta de robustez en los componentes de alta frecuencia incrementando la fuerza de la marca al máximo mientras se mantiene la invisibilidad usando una máscara visual. Estos esquemas están diseñados para aprovechar la información perceptiva en el proceso de marcado. Estas marcas son conocidas como marcas de agua perceptivas [10]. Neevia docConverter 5.1 18 2.4 Relación con la criptografía. La criptografía en imágenes es considerada como una técnica de codificación para la transmisión de datos a través de canales de comunicación bajo la condición de que los datos no puedan ser leídos o interpretados por un tercero. Sin embargo, los datos transmitidos, especialmente los codificados, pueden atraer la atención e impulsar la imposición de la ley por parte de las autoridades para echar un vistazo más profundo. La criptografía se ha convertido en una de las principales herramientas para la privacidad, control de acceso, autentificación, firmas digitales y envío de mensajes seguros. La esteganografía introduce un mensaje secreto en forma de datos encubiertos, típicamente en imágenes digitales o en videos el mensaje es oculto como “ruido”. Sin la llave correcta, es virtualmente imposible extraer el mensaje oculto o inclusive detectar su presencia. Esto implica una carga adicional para el criptoanalista quien debe examinar inclusive datos no sospechosos en busca de mensajes esteganográficos incrustados. La relación entre criptografía y watermarking proviene de la semántica compartida de llave pública y privada en los sistemas de criptografía y en los sistemas de watermarking. En los sistemas de criptografía de llave privada, la misma llave es usada para encriptar y desencriptar un mensaje (llave simétrica), mientras que en los sistemas criptográficos de llave pública, las llaves para encriptar y desencriptar son diferentes (llave asimétrica) [2]. En un sistema de watermarking de llave pública, un objeto digital es marcado con la llave privada pero la presencia de una marca de agua puede ser verificada usando una llave pública. Desde luego, el cálculo de la llave privada es irrealizable, a pesar de la disponibilidad de la llave pública y el algoritmo del sistema de watermarking. La llave pública sólo permite leer la marca, no puede ser usada para remover o falsificar una marca. El watermarking de llave pública asume que la imagen original sin marca no es requerida en el proceso de extracción o detección (recuperación ciega). Neevia docConverter 5.1 19 Los sistemas tradicionales de watermarking que usan llaves privadas casi siempre permiten remover o insertar marcas falsas. Los esquemas de llave pública tienen que permitir la verificación segura de la marca por terceras personas. Sin embargo, no es conocido ningún esquema de watermarking de llave pública. Las técnicas de watermarking asimétrico no utilizan la imagen original y emplean diferentes parámetros que los utilizados en el proceso de incrustación. Los términos watermarking de llave pública y watermarking asimétrico son a menudo usados en el mismo contexto. Si los términos son tomados literalmente se puede diferenciar entre watermarking asimétrico (las llaves utilizadas para la detección de la marca son diferentes de las llaves necesarias para incrustar la marca) y watermarking de llave pública (las llaves necesarias para la detección de la marca son públicamente conocidas), lo cual permite a cualquiera -incluyendo atacantes potenciales- detectar e incrustar una marca. 2.5 Operando en el dominio de la transformada. Las técnicas de watermarking que trabajan en el dominio de la transformada, aplican alguna transformada invertible a la imagen antes de introducir la marca de agua. Posteriormente, a fin de incrustar la marca, los coeficientes del dominio de la transformada son modificados y, finalmente, se aplica la transformación inversa para así obtener la imagen marcada. Algunos ejemplos de transformadas utilizadas para propósitos de watermarking, son la Transformada Coseno Discreta (DCT) o la Transformada Wavelet Discreta (DWT). [22] Los algoritmos de watermarking que trabajan en el dominio de alguna transformada, poseen la propiedad de que es más difícil leer o modificar la marca de agua, dado que dichos algoritmos tienen acceso a los componentes frecuenciales de la imagen de interés. La representación en frecuencia de una imagen permite elegir sólo ciertas bandas de la señal original (la imagen) para propósitos de watermarking. Además, se ha observado que el sistema de visión humano (HVS, Human Visual System) procesa ciertas bandas de Neevia docConverter 5.1 20 frecuencia de manera individual, lo que ha conducido al desarrollo de modelos visuales que intentan capturar estas características. 2.5.1 Espectro disperso. En las técnicas de espectro disperso, una señal de banda estrecha, que representa el mensaje a ser transmitido, es modulada por una señal portadora de banda ancha, que dispersa el espectro de la señal de banda estrecha. De ahí surge el término espectro disperso. [22] El espectro disperso cuenta con las siguientes propiedades: • Antibloqueo (anti-jamming). Esta propiedad resulta del hecho de que un atacante no conoce la información que poseen tanto el emisor como el receptor autorizado. Como resultado de ello, lo que debe hacer el atacante es interferir en todo el espectro de la señal de banda ancha. En términos de watermarking, esto significa que, para interferir con la marca de agua, el atacante debe distorsionar severamente la imagen marcada, de tal forma que la imagen atacada ya no cuente con una calidad aceptable o bien, que ya no tenga valor comercial. • Pseudo-ruido. La portadora es una señal de pseudo-ruido. Esto quiere decir que tiene propiedades estadísticas similares a las que tiene una señal aleatoria. Por ejemplo, la portadora puede ser la salida de un generador de números aleatorios que se ha inicializado con un valor de semilla particular, el cual es conocido solamente por el propietario. En términos de watermarking, esta propiedad es importante, ya que para un atacante es difícil estimar la marca de agua a partir del medio marcado. Por otra parte, la principal desventaja de las técnicas de watermarking, que trabajan en el dominio de la frecuencia, es adaptar la fuerza de la marca de agua a la actividad local en la imagen, haciendo más difícil la posibilidad de aprovechar ciertas características del sistema de visión humano. Sin embargo, este problema puede ser resuelto si se utiliza una Neevia docConverter 5.1 21 transformadaque proporcione información en frecuencia y espacial acerca de la imagen de interés. Tal es el caso de la transformada wavelet y de la transformada de Hermite. 2.5.2 La Transformada Wavelet. La transformada wavelet es eficiente para el análisis local de señales; mapea la señal de interés en una representación de tiempo-escala [13], o bien, en una representación de espacio-escala para el caso de imágenes. Las wavelets son funciones matemáticas que separan los datos en diferentes componentes frecuenciales, y luego estudian cada componente con una resolución adecuada a su escala [12]. Las wavelets son generadas a partir de una función wavelet básica, mediante traslaciones y dilataciones. Además, estas funciones permiten reconstruir la señal original a través de la transformada wavelet inversa. Veremos que la transformada wavelet no es solamente local en el tiempo, sino también en frecuencia. Cuando se utiliza la transformada de Fourier, no hay información frecuencial disponible en el dominio temporal, y tampoco hay información temporal disponible en el dominio de la frecuencia. Cuando se necesita conocer la localización en el tiempo de las componentes espectrales, se necesita una transformada que proporcione una representación tiempo-frecuencia de la señal. En términos generales, la transformada wavelet funciona de la siguiente manera: la señal se hace pasar a través de una serie de filtros paso-bajas y paso-altas, con lo que se obtienen porciones de baja frecuencia y de alta frecuencia de la señal. A su vez, la porción de baja frecuencia puede ser dividida en partes de baja y alta frecuencia. A este proceso se le denomina descomposición. Es posible analizar la señal mediante un método denominado análisis multiresolución. El análisis multiresolución, como su nombre lo indica, analiza la señal a Neevia docConverter 5.1 22 diferentes frecuencias con diferentes resoluciones [12]. Este tipo de análisis es muy útil dado que a altas frecuencias proporciona buena resolución en el tiempo y baja resolución en frecuencia, mientras que a bajas frecuencias brinda buena resolución en frecuencia y baja resolución en el tiempo. La transformada wavelet permite realizar análisis multiresolución de señales. En el análisis wavelet, la señal se multiplica por una función (que en este caso es una wavelet), con lo cual la transformada se calcula de manera separada para diferentes segmentos de la señal en el dominio temporal. La Transformada Wavelet Continua (CWT) de una función x(t) es la descomposición de x(t) en un conjunto de funciones )(, ts τψ , que forman una base y son llamadas “wavelets”. Esta transformada se define como: *1( , ) ( , ) ( )x x t CWT s s x t dt ss ψ ψ ττ τ ψ ∞ −∞ − = Ψ = ∫ (2.3) La señal transformada es función de las variables τ y s, que son los parámetros de traslación y escala, respectivamente. La función )(tψ se conoce como wavelet madre. Esta wavelet madre es un prototipo a partir del cual se obtienen las demás funciones ventana. En otras palabras, las funciones que se usan en el proceso de transformación se derivan de la función wavelet madre. La traslación se relaciona con la localización temporal de la ventana de análisis, conforme la ventana se desplaza por la señal. Por su parte, la escala se define como la inversa de la frecuencia. Las bajas frecuencias (o escalas grandes) se corresponden con la información global de la señal, que normalmente se extiende durante toda su duración, mientras que las altas frecuencias (o escalas pequeñas) se corresponden a información detallada de la señal, que por lo regular dura un tiempo relativamente pequeño. Neevia docConverter 5.1 23 Tomemos en cuenta la ecuación (2.3). Sea x(t) la señal a analizar. Se elige una wavelet madre que servirá como prototipo para las ventanas utilizadas durante el proceso. Todas las funciones ventana usadas son versiones escaladas (comprimidas o expandidas) y desplazadas de la wavelet madre. Se calcula la transformada para todos los valores de s. Dado que en la mayoría de las aplicaciones prácticas, las señales están limitadas en banda, bastará calcular la transformada para un número limitado de intervalos de escalas. La wavelet se sitúa al principio de la señal, en el punto correspondiente al instante de tiempo t = 0. La señal se multiplica por la función wavelet a escala s = 1 y después se integra desde menos infinito hasta infinito (figura 2.6). El resultado final es el valor de la transformada en el punto τ = 0, s = 1 del plano tiempo-escala [12]. Figura 2.6. Proceso de la transformada wavelet. La wavelet a escala s se sitúa al inicio de la señal y se calcula el valor de la transformada para el punto τ,s correspondiente. Después, la wavelet a escala s = 1 se desplaza una cantidad τ hasta el punto t = τ, y se calcula el valor de la transformada en el punto τ = 1, s = 1 del plano tiempo-escala (véase la figura 2.7). Este proceso se repite hasta que se alcanza el final de la señal. De esta manera se completa una fila de puntos en el plano tiempo-escala para la escala s = 1. Figura 2.7. La wavelet a escala s se desplaza una cantidad τ y se calcula el valor de la transformada para el punto τ,s correspondiente. Neevia docConverter 5.1 24 Posteriormente, se incrementa s por un valor pequeño. El procedimiento se repite para cada valor de s (figura 2.8). Cada cálculo para un valor dado de s completa la fila correspondiente del plano tiempo-escala. Una vez finalizado el proceso para todos los desplazamientos y valores de s deseados, se habrá calculado la transformada wavelet continua (CWT) de la señal. Figura 2.8. Se sitúa la wavelet al principio de la señal, ahora a una escala distinta, para calcular el valor de la transformada para el punto τ,s correspondiente. Escribiendo de otra forma la ecuación (2.3), la CWT se interpreta como el producto interno de la señal bajo análisis con las funciones base )(, tsτψ : * ,( , ) ( , ) ( ) ( )x x sCWT s s x t t dt ψ ψ ττ τ ψ= Ψ = ⋅∫ (2.4) , 1 s t ss τ τψ ψ − = (2.5) El análisis wavelet es una medida de la similitud entre las funciones wavelet y la señal de interés. La similitud se refiere a un contenido frecuencial similar. El valor del coeficiente CWT calculado hace referencia al parecido de la señal y la wavelet a la escala actual. Por otra parte, la señal reconstruida se obtiene mediante la siguiente expresión: 2 2 1 1 ( ) ( , )x s t t x t s d ds c s s ψ ψ ττ ψ τ− = Ψ ∫ ∫ (2.6) Neevia docConverter 5.1 25 donde ψc es una constante que depende de la wavelet usada, y se le llama constante de admisibilidad. En el caso discreto, la Transformada Wavelet Discreta (DWT) brinda suficiente información para el análisis y síntesis de la señal original, con una reducción significativa de tiempo de computación [12]. En este caso, se utilizan filtros con diferentes frecuencias de corte para analizar la señal a distintas escalas. Se hace pasar la señal por una serie de filtros paso-altas y paso-bajas. La resolución de la señal, la cual es una medida de la cantidad de información de detalle en la señal, se cambia mediante el filtrado, y la escala se modifica mediante el cambio de la frecuencia de muestreo. El proceso comienza cuando la señal se hace pasar a través de un filtro digital paso- bajas, cuya respuesta al impulso la denotaremos con h[n] . El filtrado de la señal corresponde a la operación de convolución. [ ] [ ] [ ] [ ]x n h n x k h n k ∞ −∞ ∗ = ⋅ −∑ (2.7) La transformada wavelet discreta analiza la señal a diferentes bandas de frecuencia con diferentes resoluciones mediante la descomposición de la señal en una aproximación y en información de detalle. La descomposición en distintas bandas de frecuencia se logra haciendo pasar laseñal a través de un filtro paso-bajas h[n] y de un filtro paso-altas g[n] . Después del filtrado, la mitad de las muestras se pueden eliminar (de acuerdo con el teorema de Nyquist). El primer nivel de descomposición de la señal se puede expresar como: [ ] [ ] [ ]2highy n x k g n k ∞ −∞ = ⋅ −∑ (2.8) [ ] [ ] [ ]2lowy n x k h n k ∞ −∞ = ⋅ −∑ (2.9) donde [ ]nyhigh es la salida del filtro paso-altas, mientras que [ ]nylow es la salida del filtro paso-bajas, ambas después de ser submuestreadas. Esta descomposición reduce a la mitad Neevia docConverter 5.1 26 la resolución en el tiempo, ya que la señal queda caracterizada por la mitad de muestras. Asimismo, se duplica la resolución en frecuencia, puesto que el ancho de banda de la señal es la mitad del ancho de banda original. El esquema de descomposición wavelet en una dimensión, de orden k, queda representado en la figura 2.9. Figura 2.9. Descomposición wavelet en una dimensión, de orden k, para la señal x[n]. Las operaciones de filtrado y submuestreo se pueden expresar como sigue: [ ] [ ] [ ]2high n y k x n g n k= ⋅ − +∑ (2.10) [ ] [ ] [ ]2low n y k x n h n k= ⋅ − +∑ (2.11) Por su parte, la reconstrucción se lleva a cabo de la siguiente manera: se aumenta al doble la frecuencia de muestreo de las señales en cada nivel de descomposición, se hacen pasar a través de filtros de síntesis g´[n] y h´[n] y al final se suman las salidas (figura 2.10). h g ↓2 ↓2 h h g g ↓2 ↓2 ↓2 ↓2 [ ]nx [ ]nd10 [ ]nd11 [ ]nd20 [ ]nd21 [ ]ndk0 [ ]ndk1 Neevia docConverter 5.1 27 Figura 2.10. Reconstrucción de la señal x[n] a partir de los coeficientes wavelet. Así, la reconstrucción de la señal viene dada por: [ ] [ ] [ ] [ ] [ ]2 2high low k x n y k g n k y k h n k ∞ =−∞ = ⋅ − + + ⋅ − + ∑ (2.12) La transformada wavelet continua puede ser extendida al caso de dos dimensiones [13]. Así, la transformada wavelet de una imagen bidimensional f(x,y) se define como: 1 ( , ; , ) ( , ) ;f x y x yx y x u y v CWT u v s s f x y dxdy s ss s ψ ψ − −= ∫∫ (2.13) Gracias a los diferentes tipos de funciones wavelets existentes, se tiene una gran cantidad de opciones para analizar una señal de interés. Es posible elegir la base de funciones cuya forma se aproxime mejor a las características de la señal que se desea analizar. Entre los tipos de funciones wavelets que existen, podemos mencionar a las wavelets de Haar, Daubechies, Coiflets, Symlets, etc. Por ejemplo, las bases wavelet de Daubechies tienen la propiedad de formar una base ortonormal, con lo que se asegura la independencia de la representación de la señal en los diferentes niveles de descomposición, es decir, no se genera información redundante de la señal. Dentro de esta clase de wavelets, se tienen DAUB4, DAUB6, DAUB8, etc., donde el número de Daubechies indica el orden. La wavelet DAUB2 es la misma que la wavelet de Haar, la cual se puede apreciar en la figura 2.11. + ↑2 h’ ↑2 ↑2 h’ h’ + + ↑2 ↑2 ↑2 g’ g‘ g‘ … [ ]ndk0 [ ]ndk1 [ ]nd20 [ ]nd21 [ ]nd10 [ ]nd11 [ ]nx Neevia docConverter 5.1 28 Figura 2.11. La wavelet de Haar es la misma que la wavelet de Daubechies de orden 2. La figura 2.12 muestra las funciones psi de la familia de wavelets de Daubechies de los órdenes 4 a 10. Figura 2.12. Funciones psi de la familia de wavelets de Daubechies, órdenes 4 a 10. Para el caso del procesamiento de imágenes, se utiliza la transformada wavelet bidimensional. Sea ),(0 yxc la matriz de datos que representa la imagen de interés, p(n) un filtro unidimensional paso-bajas y q(n) un filtro unidimensional paso-altas. La descomposición de la imagen, en términos de esta transformada, se explica a continuación [13]: 1. En cada nivel i de resolución, se calcula la correlación entre las filas de ),(1 yxci− y los filtros unidimensionales p(n) y q(n) en la dirección vertical, con lo que resultan dos imágenes compuestas, cada una por la mitad de las filas de la matriz. 2. Se calcula la correlación entre las imágenes resultantes y los filtros p(n) y q(n) en la dirección horizontal, resultando, de cada una, dos imágenes compuestas por la mitad de las columnas. Neevia docConverter 5.1 29 3. Las cuatro imágenes resultantes constituyen las tres imágenes detalle y la imagen aproximación. En la figura 2.13 se presenta la descomposición de la imagen “Lena”, ilustrando los pasos anteriores. (a) (b) (c) Figura 2.13. Descomposición de una imagen. (a) Imagen original. (b) Descomposición en dirección vertical. (c) Descomposición en dirección horizontal de las imágenes de (b). Este es el resultado final. Neevia docConverter 5.1 30 Si la imagen original tiene 2L píxeles, cada imagen ),( yxci , ),( 1 yxdi , ),( 2 yxdi y ),(3 yxdi tiene 2)2/( iL píxeles (i > 0). En una representación wavelet ortonormal, el número total de píxeles sigue siendo 2L , es decir, no se incrementa el volumen de datos. En la figura 2.14 se muestra un ejemplo de la representación de la descomposición wavelet en un nivel de descomposición, para una imagen cualquiera. Figura 2.14. Representación de la descomposición wavelet de una imagen, en un nivel de descomposición. En la figura 2.15 se muestra la representación de la descomposición wavelet, en tres niveles de descomposición. Se muestran las imágenes de detalle en los niveles de resolución 1, 2 y 3, además de la imagen aproximación en el nivel 3. 1c 1 1d 2 1d 3 1d Neevia docConverter 5.1 31 Figura 2.15. Representación de la descomposición wavelet de una imagen, en tres niveles de descomposición. Cada imagen ),( yxdi contiene una banda limitada del espectro de frecuencias originales [13]: ),(1 yxd y ),(1 yxc contienen la mitad más alta y más baja del espectro de frecuencias de la imagen original, respectivamente. Por su parte, ),(2 yxd contiene la mitad más alta del espectro de frecuencias de ),(1 yxc . A partir de ello, se tiene que: 0 1 2( , ) ( , ) ( , ) ... ( , ) ( , )p pc x y d x y d x y d x y c x y= + + + + (2.14) donde los términos ),(),...,,(),,( 21 yxdyxdyxd p son los detalles de la imagen en los diferentes niveles de resolución, y ),( yxcp es la imagen aproximación de la imagen original ),(0 yxc . En otras palabras, la transformada wavelet discreta de una imagen F(m,n) se obtiene mediante el cálculo de la DWT unidimensional, para las dimensiones m y n por separado. Gracias a este razonamiento, además de la acción de los filtros paso-bajas y paso-altas, los detalles que resultan de la descomposición wavelet se clasifican en detalles horizontales, verticales y diagonales, como se muestra en la figura 2.16. 1 2d 3c 1 3d 2 3d 3 3d 2 2d 3 2d 1 1d 2 1d 3 1d Neevia docConverter 5.1 32 Figura 2.16. Representación piramidal de la transformada wavelet discreta, para el caso de imágenes digitales, mostrando la imagen aproximación y las imágenes de detalle. En la figura 2.17 se muestra la representación de la DWT para el caso de la imagen “Lena”. Dicha figura muestra los componentes de baja frecuencia de la imagen en la banda de aproximación, la cual se localiza en la esquina superior izquierda. Por su parte, los componentes de alta frecuencia quedan representados en las bandas de detalle en diferentes resoluciones. 2HL 2HH 2LH 1HL Detalles horizontales 1LH Detalles verticales 1HH Detalles diagonales LL (Aprox.) Neevia docConverter 5.1 33 Figura 2.17. Representación de la DWT para la imagen “Lena”. 2.5.3 La Transformada de Hermite. Una imagen digital está definida por un arreglo de intensidades puntuales y para poder interpretareficientemente sus datos necesitamos hacer explícita la información importante que ésta contenga. Esto implica generalmente establecer relaciones espacio- temporales entre estas intensidades, por lo tanto se requiere algún tipo de procesamiento local sobre la información visual. La transformada de Hermite es una herramienta matemática que permite realizar este procesamiento local y está basada en las derivadas de funciones gaussianas. El hecho de realizar el procesamiento local requiere tomar dos decisiones importantes. Primero, para hacer que el procesamiento sea local, es necesario multiplicar la imagen por una función ventana. El tamaño de la ventana define el número de puntos que contribuyen para una etapa básica del procesamiento. La forma de la ventana determina el peso relativo que tiene cada punto. Para describir la imagen completamente, este Neevia docConverter 5.1 34 procesamiento local se tiene que repetir para un número suficiente de posiciones de la ventana. Segundo, para cada posición de la ventana, se deben llevar a cabo etapas específicas de procesamiento; entonces se debe definir qué patrones visuales son los más relevantes para cada caso en particular y poder elegir el tipo de procesamiento adecuado. Un parámetro importante de la función ventana es su tamaño o escala, y su elección no es un asunto trivial. Por un lado, para permitir la reducción de altos niveles de información el tamaño de la ventana tiene que ser suficientemente grande; sin embargo, la complejidad del análisis dentro de cada ventana aumenta significativamente con el tamaño de ésta. Para resolver dicho problema existen dos posibles enfoques, uno consiste en seleccionar una ventana de tamaño fijo y realizar dentro de ésta el análisis, suficientemente complejo para que incluya todos los patrones visuales de interés. La segunda opción consiste en limitar la complejidad del análisis a realizar dentro de cada ventana y después determinar el tamaño de ventana necesario para describir la imagen localmente con suficiente precisión. Considerando lo anterior, en lugar de limitar el análisis a una sola escala lo que hacemos es repetir el procesamiento con diferentes escalas y posteriormente, basándonos en las salidas obtenidas, determinar qué escala es la apropiada para cada posición. Existe evidencia de que el sistema de visión humano utiliza este principio y por lo mismo es empleado en la teoría de la transformada de Hermite. [20] El procesamiento generalmente involucra derivadas de primer y segundo orden y algún tipo de filtro paso bajas, muy similar al realizado por el ojo humano. La transformada de Hermite utiliza estos operadores, incluso se ha demostrado recientemente que las derivadas de gaussianas pueden modelar el filtrado del sistema de visión humano con la misma precisión que otro tipo de filtros, como los de Gabor [21], con la ventaja de que las funciones gaussianas involucran un menor número de parámetros. Neevia docConverter 5.1 35 La transformada polinomial es una técnica de descomposición de señales en la cual las señales son aproximadas localmente por medio de polinomios. El análisis mediante transformada polinomial requiere dos etapas. En la primera etapa la señal original L(x) es localizada multiplicándola por la función ventana V(x); para describir la señal en su totalidad es necesario repetir el proceso de localización para un número suficiente de posiciones de la ventana. Para este análisis consideraremos equidistante el espacio entre las ventanas. A partir de la función ventana V(x) podemos construir la función de ponderación mediante repetición periódica ( ) ( ) k W x V x kT= −∑ (2.15) donde T es el período. Dado que W(x) es diferente de cero para toda x, tenemos que 1 ( ) ( ) ( ) ( ) k L x L x V x kT W x = ⋅ −∑ (2.16) lo cual nos garantiza que todas las funciones localizadas )()( kTxVxL −⋅ , para todas las posiciones kT, contienen suficiente información sobre la señal original. La segunda etapa consiste en aproximar la porción de señal que se encuentra dentro de la ventana mediante un polinomio. Como funciones base para la expansión polinomial tomaremos los polinomios Gn(x) de grado n que son ortonormales con respecto a V 2(x), por ejemplo, 2( ) ( ) ( )m n mnV x G x G x dx δ +∞ −∞ =∫ (2.17) Neevia docConverter 5.1 36 Los polinomios ortonormales, para una función ventana V2(x) cualquiera, están dados por 0 1 1 2 1 1 1 2 1 1 ( ) 1 n n n n n n n n n c c c c c c G x M M c c c x x + − − − = L L M M M L L (2.18) donde el determinante Mn está definido por 1, 0, , , 1n i j i j nM c M+ −== =K (2.19) y 2( )nnc x V x dx +∞ −∞ = ∫ (2.20) es el momento de orden n. Sí V2(x) es par, podemos deducir las siguientes expresiones explícitas para los polinomios de orden 3: ( ) 0 0 1 2 2 2 2 0 2 0 0 4 2 3 2 3 2 4 2 2 6 4 ( ) 1 ( ) ( ) ( ) ( ) ( ) ( ) G x c G x x c G x c x c c c c c G x c x c x c c c c = = = − − = − − (2.21) Bajo condiciones generales para la señal original L(x), tenemos que 0 ( ) ( ) ( ) ( ) 0n n n V x kT L x L kT G x kT ∞ = − − ⋅ − = ∑ (2.22) Neevia docConverter 5.1 37 con 2( ) ( ) ( ) ( )n nL kT L x G x kT V x kT dx +∞ −∞ = ⋅ − −∫ (2.23) Para garantizar la convergencia de la expansión de las series de (2.22), para la mayoría de las funciones ventana, es suficiente con que L(x) sea analítica y finita para toda x. Entonces, al igual que con la expansiones de Taylor, el error existente entre una señal y un polinomio se puede hacer arbitrariamente pequeño haciendo el grado del polinomio suficientemente grande. Esto implica que la descripción de la señal localizada )()( kTxVxL −⋅ se puede reducir a especificar un número finito de coeficientes polinomiales Ln(kT). La energía de la señal dentro de la ventana puede ser expresada en términos de los coeficientes de la expansión, por ejemplo 2 2 2 0 ( ) ( ) ( )n n L x V x kT dx L kT ∞+∞ −∞ = − =∑∫ (2.24) que es la generalización del teorema de Parseval para polinomios ortonormales. Combinando (2.16) y (2.22), obtenemos la siguiente expansión para la señal completa 0 ( ) ( ) ( )n n n k L x L kT P x kT ∞ = = ⋅ −∑∑ (2.25) donde ( ) ( ) ( ) ( )n nP x G x V x W x= (2.26) La ecuación (2.23) quiere decir que los coeficientes Ln(kT) se obtienen de la señal L(x) convolucionando ésta con las funciones filtro Neevia docConverter 5.1 38 2( ) ( ) ( )n nD x G x V x= − − (2.27) seguida de un muestreo en múltiplos de T. Este mapeo de la señal original L(x) a los coeficientes polinomiales Ln(kT) se le conoce como transformada polinomial. La reconstrucción de la señal a partir de los coeficientes polinomiales Ln(kT) se puede realizar de acuerdo a la ecuación (2.25) y se le llama transformada polinomial inversa. Esta consiste en interpolar dichos coeficientes Ln(kT), donde Zk ∈ , con la función patrón Pn(x) y hacer la sumatoria sobre todos los órdenes n. La figura siguiente muestra en forma gráfica la transformada polinomial y la transformada inversa. Figura 2.18. Representación de la transformada polinomial y la transformada inversa. La teoría de la transformada polinomial se puede generalizar para el caso de dos dimensiones. Dada una función ventana local V(x,y), los polinomios ortonormales Gm,n-m( x,y ), donde m y n-m son los grados con respecto a x y y respectivamente, están determinados únicamente por 2 , ,( , ) ( , ) ( , )m n m j i j ni mjV x y G x y G x y dxdy δ δ ∞ ∞ − −−∞ −∞ =∫ ∫ (2.28) D0(x) ↓T L(x) L0(kT) ↑T P0(x) Σ D1(x) ↓T L1(kT) ↑T P1(x) D2(x) ↓T L2(kT) ↑T P2(x) L(x) Neevia docConverter 5.1 39 para n,i = 0,1,…,∞; m = 0,…,n y j = 0, …, i. La descomposiciónde señales en dos dimensiones en polinomios localizados queda como sigue: , , 0 0 ( , ) ( , ) ( , ) ( , ) n m n m m n m n m p q S L x y L p q P x p y q ∞ − − = = ∈ = ⋅ − −∑∑ ∑ (2.29) donde (p,q), abarca todas las coordenadas de una rejilla bidimensional de muestreo S. La única condición para esta rejilla es que la función de ponderación ( , ) ( , ) ( , ) p q S W x y V x p y q ∈ = − −∑ (2.30) sea diferente de cero para todas las coordenadas (x,y). Los coeficientes polinomiales Lm,n-m(p,q) se obtienen convolucionando la señal con las funciones filtro 2, ,( , ) ( , ) ( , )m n m m n mD x y G x y V x y− −= − − − − (2.31) seguido de un muestreo de la salida a cada Sqp ∈),( . Las funciones patrón utilizadas para interpolar los coeficientes polinomiales están definidas por , ,( , ) ( , ) ( , ) ( , )m n m m n mP x y G x y V x y W x y− −= (2.32) para n = 0,1,…, ∞ y m = 0, …, n. Ahora bien, la transformada de Hermite es un caso especial de la transformada polinomial, en la cual la función ventana local es gaussiana: 2 2 2 2 1 ( , ) exp 2 2 x y V x y πσ σ += − (2.33) Neevia docConverter 5.1 40 donde el factor de normalización es tal que V2(x) tiene energía unitaria. Los polinomios ortogonales asociados con V2(x) se conocen como polinomios de Hermite: , 1 ( , ) 2 ( )! ! n m m n m mn x y G x y H H n m m σ σ − − = − (2.34) donde Hn(x) denota el polinomio de Hermite de orden n. Las razones para la elección de ventanas gaussianas son varias, una de ellas es que la teoría matemática es más sencilla y las propiedades de dicha transformada pueden ser fácilmente deducidas y evaluadas. Otra razón es que las ventanas gaussianas, que están separadas por el doble de la desviación σ, son un buen modelo para los campos receptivos superpuestos encontrados en experimentos fisiológicos. La tercera razón es que la transformada de Hermite utiliza filtros que son derivadas de gaussianas que, como se dijo anteriormente, son utilizadas para modelar el sistema de visión humano y tienen gran aplicación en visión computacional, por lo tanto la transformada de Hermite proporciona un marco teórico más amplio para estos enfoques. Por último, las ventanas gaussianas minimizan el resultado de las incertidumbres en el dominio espacial y el de la frecuencia. La señal original L(x,y), donde (x,y) son las coordenadas de los píxeles, es multiplicada por la función ventana V(x-p, y-q), para las posiciones p,q que conforman la rejilla de muestreo S. A través de la repetición de la ventana sobre la rejilla de muestreo, la función de ponderación periódica se define como: ( , ) ( , ) ( , ) p q S W x y V x p y q ∈ = − −∑ (2.35) Esta función de ponderación debe ser diferente de cero para todas las coordenadas (x,y), por lo tanto: Neevia docConverter 5.1 41 , 1 ( , ) ( , ) ( , ) ( , ) p q S L x y L x y V x p y q W x y ∈ = − −∑ (2.36) La señal contenida dentro de cada ventana es descrita como la suma ponderada de los polinomios Gm,n-m(x, y) de grado m en x y n-m en y. En una implementación discreta, la ventana gaussiana debe ser aproximada por una ventana binomial, y en este caso, ser ortogonal a los polinomios Gm,n-m(x,y) que son conocidos como los polinomios de Krawtchouck. En cualquier caso, los coeficientes polinomiales Lm,n-m(p,q) son calculados mediante la convolución de la imagen original L(x,y) con la función filtro de la ecuación (2.31) seguido de un submuestreo en las posiciones (p,q) de la rejilla de muestreo S. , ,( , ) ( , ) ( , )m n m m n mL p q L x y D x p y q dxdy +∞ +∞ − −−∞ −∞ = − −∫ ∫ (2.37) Para el caso de la transformada de Hermite, puede ser demostrado que las funciones filtro Dm,n-m(x,y) corresponden a derivadas de gaussianas de orden m en x y n-m en y, en concordancia con el modelo de derivadas gaussianas de las primeras etapas del sistema de visión humano. En la figura 2.19 se muestran las cuatro primeras derivadas de la función Gaussiana en el dominio espacial y de la frecuencia para σ = 1. Neevia docConverter 5.1 42 Figura 2.19. Funciones filtro en el dominio espacial y de la frecuencia para σ=1. Las ventanas gaussianas en dos dimensiones tienen la ventaja de que son espacialmente separables y rotacionalmente simétricas; las propiedades correspondientes de los filtros es que son polar y espacialmente separables. La transformada de Fourier de Dm(x)Dn-m(y), expresada en coordenadas polares ωx = ωcosθ y ωy = ωsinθ, es ,( ) ( ) ( ) ( )m x n m y m n m nd d g dω ω θ ω− −= ⋅ (2.38) Neevia docConverter 5.1 43 donde ω es la frecuencia y dn(ω) es la transformada de Fourier de la función filtro de Hermite 1D Dn(r), donde r es la coordenada radial, y , ! ( ) cos sin !( )! m n m m n m n g m n m θ θ θ−− = ⋅− (2.39) expresa la selectividad direccional del filtro. Así, los filtros de orden creciente analizan frecuencias radiales sucesivamente superiores. El proceso de restauración de la imagen original consiste en interpolar los coeficientes transformados utilizando las funciones patrón de síntesis adecuadas. Este proceso está definido por: , , 0 0 ( , ) ( , ) ( , ) ( , ) n m n m m n m n m p q S L x y L p q P x p y q ∞ − − = = ∈ = − −∑∑ ∑ (2.40) Las funciones patrón Pm,n-m(x,y) de orden m x (n-m), son definidos por: ,, ( , ) ( , ) ( , ) ( , ) m n m m n m G x y V x y P x y W x y − − = (2.41) para m = 0, …, n y n = 0, …, ∞. La figura 2.20 muestra a la izquierda la transformada de Hermite calculada sobre una imagen satelital. A la derecha el diagrama muestra el orden de los coeficientes. Las diagonales representan los coeficientes de orden cero (n=0), primer orden (n=1), etcétera. Neevia docConverter 5.1 44 Figura 2.20. A la izquierda se muestra la representación de la Transformada de Hermite Discreta (DHT) para una imagen satelital. A la derecha se muestra el orden de los coeficientes (n=0,1,2…). Una interpretación usual en muchos algoritmos de procesamiento de imágenes es que convierten una imagen en una descripción de la imagen. En la práctica, esto se realiza a menudo para determinar la aproximación óptima de la señal de entrada por medio de una suma ponderada de patrones seleccionado a priori. El peso con el cual contribuyen los patrones, constituye la descripción de la imagen de entrada. Con estos coeficientes puede ser sintetizada una aproximación de la imagen original. [15] Para que la descripción de la imagen sea eficiente, es necesario que los patrones seleccionados a priori se adapten bien a la imagen de entrada. Sin embargo, debido a la gran variedad de características que pueden aparecer en las imágenes naturales, es poco probable que un conjunto de patrones puedan ofrecer una descripción eficiente para todas estas características. La situación se complica por el hecho de que estas estructuras pueden tener diferentes tamaños (o escalas espaciales) y se pueden mover en un rango de velocidades (o escalas temporales). El siguiente esquema puede ser aplicado para el caso de un análisis multiescala, donde los diferentes conjuntos de patrones difieren únicamente en escala y distancia de muestreo. Neevia docConverter 5.1 45 Figura 2.21. Esquema piramidal de la Transformada de Hermite Discreta. A continuación se muestra un ejemplo de la descomposición y reconstrucción multiescala de una imagen satelital utilizando la transformada de Hermite. Figura 2.22. Descomposición multiescala de una imagen utilizando la Transformada de Hermite Discreta. Dn ↓T Dn ↓T Dn ↓T ↑T Pn Ln (1) L0 (0) L0 (1) L0 (K-1) Ln (2) Ln (K) n=0 n>0 Σn ↑T Pn Σn n=0 ↑T Pn Σn L0 (0) L0 (1) L0 (K-1) DHT DHT DHT Neevia docConverter 5.1 46 Figura 2.23. Reconstrucción de la imagena partir de la descomposición multiescala, utilizando la Transformada de Hermite Discreta. 2.6 El sistema de visión humano. En esta sección, describiremos a grandes rasgos la estructura del ojo humano, para así entender la etapa de percepción del sistema de visión humano y aprovechar las propiedades de las transformadas wavelet y de Hermite, con el fin de implementar el algoritmo de watermarking. Las membranas que cubren al ojo humano son la córnea, la esclerótica, la coroides y la retina. La córnea es un tejido transparente que cubre la superficie anterior del ojo. La esclerótica es la membrana adyacente a la córnea, y cubre el resto del ojo [19]. DHT DHT DHT GI + GI + GI Neevia docConverter 5.1 47 Figura 2.24. Esquema del ojo humano. La coroides se encuentra directamente debajo de la esclerótica. Esta membrana ayuda a reducir la cantidad de luz extraña que entra al ojo. En su extremo anterior, la coroides se divide en el cuerpo ciliar y en el diafragma del iris. Éste último se contrae o se expande para controlar la cantidad de luz que entra al ojo. La retina es la membrana más interna del ojo. Cuando la luz llega al ojo, la imagen que transporta se forma en la retina. La visión de los patrones de un objeto es producida por Neevia docConverter 5.1 48 receptores de luz que se encuentran distribuidos sobre la superficie de la retina. Estos receptores son los conos y los bastones. El número de conos que hay en un ojo se encuentra entre los 6 y 7 millones. Se localizan en la parte central de la retina, llamada fóvea, y son muy sensibles al color. Gracias a ellos, podemos distinguir detalles finos, ya que cada cono está conectado a una terminación nerviosa. Los músculos que controlan el ojo hacen rotar el globo óptico hasta que la imagen de un objeto de interés coincide con la localización de la fóvea. Por su parte, alrededor de 75 a 150 millones de bastones se encuentran distribuidos sobre la superficie de la retina. Esta mayor área de distribución, además de que varios bastones están conectados a una única terminación nerviosa, reducen la cantidad de detalles que pueden distinguir estos receptores. Los bastones proporcionan una vista general de lo que se está observando. Estos receptores no se ocupan de la visión de los colores, en cambio, son sensibles a bajos niveles de iluminación. El cristalino absorbe aproximadamente 8% del espectro de luz visible. La forma del cristalino es controlada por la tensión en las fibras del cuerpo ciliar. Para enfocar la vista en objetos distantes, el cristalino es aplanado. En contraparte, el cristalino se vuelve más grueso cuando se enfoca la vista en objetos cercanos. Los campos receptivos son mapas de las localizaciones en espacio y tiempo donde el brillo alto o bajo puede afectar la salida eléctrica de una célula. Todas las células que presentan una respuesta visual en el sistema de visión humano (desde las células receptoras en el ojo hasta las células de visión de alto nivel en la corteza) tienen campos receptivos [20]. La manera de percibir las formas de los objetos que observamos, puede ser explicada a través de un modelo espacial basado en derivadas de gaussianas (DG). La etapa inicial del procesamiento de los campos receptivos en la corteza visual se aproxima a un ‘analizador derivativo’ que es capaz de estimar las derivadas locales espaciales y temporales del perfil de intensidad en el entorno visual. De esta forma, las etapas Neevia docConverter 5.1 49 posteriores del procesamiento pueden utilizar dichas operaciones para determinar las formas de los objetos en el entorno [20]. 2.6.1 Sensibilidad al contraste. Un experimento utilizado para determinar la capacidad de discriminación de brillo del sistema de visión humano, consiste en hacer observar a un sujeto un área plana uniformemente iluminada, lo suficientemente grande como para abarcar todo el campo de visión. Esta área es iluminada por detrás por una fuente de luz, cuya intensidad I puede ser variada. Además, se agrega un incremento de iluminación, ∆I, en la forma de un círculo en el centro del área iluminada (figura 2.25). Figura 2.25. Representación del experimento utilizado para caracterizar la discriminación de brillo. Si ∆I no tiene el suficiente brillo, el sujeto indica que no hay un cambio perceptible de iluminación. Conforme aumenta la intensidad de ∆I, el sujeto puede notar la diferencia. La cantidad II c /∆ , se denomina relación de Weber, donde cI∆ es el incremento de iluminación que es distinguible el 50% de las veces con una iluminación de fondo I. Un valor pequeño de esta relación indica que un pequeño cambio de intensidad es distinguible, lo cual representa una buena discriminación de brillo. Por el contrario, un valor grande indica que se necesita un mayor cambio de intensidad para ser distinguible, lo cual representa una pobre discriminación de brillo. A la diferencia mínima que se necesita para Neevia docConverter 5.1 50 percibir los dos estímulos visuales, se le conoce como diferencia apenas notable, o JND, por sus siglas en inglés (Just Noticeable Difference). Figura 2.26. Relación de Weber en función de la intensidad. La gráfica de la figura 2.26 muestra a )/log( II c∆ como función de log I. A bajos niveles de iluminación, la discriminación de brillo es pobre (valores grandes de la relación de Weber), pero ésta mejora cuando se incrementa la iluminación de fondo. Las dos pequeñas ramas que se aprecian en la gráfica indican que, a bajos niveles de iluminación, la visión es lograda gracias a la actividad de los bastones, mientras que a altos niveles, la visión está en función de los conos. 2.6.2 Sensibilidad a la frecuencia espacial. Existen dos fenómenos que claramente demuestran que el brillo percibido no sólo es función de la intensidad. El primero de ellos se basa en el hecho de que el sistema de visión humano tiende a percibir intensidades mayores o menores alrededor de los bordes de regiones de diferentes intensidades. La figura 2.27 muestra un ejemplo de este fenómeno. Neevia docConverter 5.1 51 Figura 2.27. Bandas de Mach. El brillo percibido no sólo está en función de la intensidad. Aunque la intensidad de cada barra es constante, adquirimos la impresión de que dicha intensidad no es uniforme, sobre todo cerca de los bordes. Estas bandas se conocen como bandas de Mach. [19] El segundo fenómeno se conoce como contraste simultáneo, donde, similarmente, el brillo percibido en una región no depende solamente de su intensidad. En la figura 2.28, todos los cuadros centrales tienen la misma intensidad, pero, aparentemente, son más oscuros conforme el fondo se vuelve más claro. Figura 2.28. Contraste simultáneo. Todos los cuadros centrales tienen la misma intensidad, pero aparentemente son más oscuros conforme el fondo se hace más claro. Neevia docConverter 5.1 52 El ojo humano es más sensible al ruido en baja frecuencia. En contraparte, el ruido en alta frecuencia es menos visible. Este hecho debe ser tomado en cuenta por aquellos algoritmos de watermarking que garanticen robustez e invisibilidad. 2.6.3 Enmascaramiento. El enmascaramiento visual es un fenómeno donde la imagen puede ocultar ciertos artefactos. Es decir, la imagen actúa como una señal que reduce la visibilidad de artefactos. Por ejemplo, si tenemos una imagen a la que se le ha agregado ruido aditivo, es fácil observar que el ruido es más visible en áreas homogéneas que en regiones que presentan mucha actividad (regiones texturizadas). La sensibilidad a la frecuencia y la sensibilidad al contraste son puntos de referencia para aprovechar las propiedades de la percepción en el sistema de visión humano. La sensibilidad al contraste es una especie de enmascaramiento
Compartir