Investigaci on sobre Algunos M etodos de Construcci on de ...
Transcript of Investigaci on sobre Algunos M etodos de Construcci on de ...
Investigacion sobre Algunos Metodosde Construccion de Marcas de Agua
Digitales
Flor Alba Gomez Gomez
Universidad Nacional de Colombia
Facultad de Ciencias, Departamento de Matematicas
Bogota, Colombia
2013
Investigacion sobre Algunos Metodosde Construccion de Marcas de Agua
Digitales
Flor Alba Gomez Gomez
Tesis presentada como requisito parcial para optar al tıtulo de:
Magister en Ciencias - Matematica Aplicada
Director:
Ph.D. Agustın Moreno Canadas
Lınea de Investigacion:
Criptografıa
Universidad Nacional de Colombia
Facultad de Ciencias, Departamento de Matematicas
Bogota, Colombia
2013
iii
Dedicatoria
A Rosenda Gomez, mi madre, por su apoyo
incondicional. Al alma de Martın Gomez, mi
padre, por la tranquilidad que me brinda en
los momentos mas difıciles.
iv
Agradecimientos
La universidad Nacional por abrirme las puertas para cursar la maestrıa y poder beneficiar-
me de una beca.
Al profesor Agustın Moreno Canadas por sus valiosas sugerencias durante el desarrollo del
trabajo.
Al profesor Hernan Estrada Bustos (Q.E.P.D) por sus conocimientos brindados y porque con
el se comenzo este trabajo.
A todos mis companeros y amigos que contribuyeron en las correcciones de mi trabajo.
v
Resumen
En este trabajo se estudia e implementa en matlab un metodo robusto de construccion
de marcas de agua digitales de tipo privado usando la descomposicion en valores singulares
de los coeficientes de la transformada discreta del coseno de una imagen dada. Ademas, se
compara su robustez con la de otros tres metodos que solo usan la transformada discreta del
coseno, la descomposicion en valores singulares o la transformada wavelet respectivamente.
Palabras clave: Marca de Agua Digital, Descomposicion en Valores Singulares, Trans-
formada Discreta del Coseno, Robustez, Transformada Discreta Wavelet.
vi
Title
Research on Some Digital WatermarksEmbedding Methods
Abstract
In this work, we study and code in matlab a robust method of non-blind image watermarking.
Such method is performed by modifying singular values of the discrete cosine transform of
a given image. Furthemore, the robustness of the proposed method is compared with other
three methods which only use discrete cosine transform, singular value descomposition or
discrete wavelet transform.
Keywords: Digital Watermark, Singular Value Decomposition, Discrete Cosine Trans-
form, Robustness, Discrete Wavelet Transform.
Contenido
Resumen V
Lista de sımbolos IX
Introduccion XI
1. Preliminares 1
1.1. Definiciones basicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1. Imagenes digitales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2. Pixel y resolucion en una imagen digital . . . . . . . . . . . . . . . . 1
1.1.3. Algunas operaciones definidas en las imagenes . . . . . . . . . . . . . 2
1.1.4. Cuantizacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Marcas de agua digitales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3. Clasificacion de las marcas de agua digitales . . . . . . . . . . . . . . . . . . 4
1.4. Requerimientos de los sistemas de marcas de agua digitales invisibles . . . . 7
1.4.1. Modelos de deteccion de marcas de agua . . . . . . . . . . . . . . . . 9
1.5. Tecnicas de construccion de marcas de agua digitales . . . . . . . . . . . . . 12
1.5.1. Tecnicas en dominio espacial . . . . . . . . . . . . . . . . . . . . . . . 12
1.6. Tecnicas en el dominio de las frecuencia . . . . . . . . . . . . . . . . . . . . 14
1.6.1. Descomposicion en valores singulares de una matriz . . . . . . . . . . 14
1.6.2. Transformada discreta del coseno . . . . . . . . . . . . . . . . . . . . 17
1.6.3. Transformada wavelet . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2. Descomposicion de valores singulares y marcas de agua Digitales 20
2.1. Procedimiento para marcar la imagen y recuperar la marca de agua usando
SVD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.1. Pasos para marcar una imagen . . . . . . . . . . . . . . . . . . . . . . 20
2.1.2. Recuperacion de la marca . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2. Robustez del metodo SVD . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.1. Rotacion de una imagen . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.2. Recorte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.3. Amplificacion de escala en un factor de 2 . . . . . . . . . . . . . . . . 28
2.2.4. Impresion y Escaner . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
viii Contenido
3. Transformada wavelet y transformada discreta del coseno 32
3.1. Transformada wavelet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.1.1. Interpretacion matricial de la transformada de Haar . . . . . . . . . . 33
3.2. Transformada discreta del coseno y construccion de marcas de agua digitales 39
3.2.1. Un procedimiento para marcar la imagen . . . . . . . . . . . . . . . . 40
3.2.2. Pasos para recuperar la marca . . . . . . . . . . . . . . . . . . . . . . 41
3.3. Robustez de DCT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.4. Construccion de marcas de agua en zig-zag en el dominio DCT . . . . . . . . 43
3.4.1. Deteccion de la marca de agua . . . . . . . . . . . . . . . . . . . . . . 45
4. Marcas de Agua usando DCT y SVD 48
4.1. Procedimiento para el marcado de imagenes . . . . . . . . . . . . . . . . . . 48
4.2. Procedimiento para recuperar la marca . . . . . . . . . . . . . . . . . . . . . 49
4.3. Robustez del metodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.4. Resultados experimentales . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
5. Conclusiones y Trabajo Futuro 58
5.1. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.2. Trabajo Futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
A. Anexo:Programa para metodo SVD 60
B. Anexo:Programa para marcar imagenes usando DCT 62
C. Anexo:Programa usando DWT 64
D. Anexo:Programa para metodo SVD-DCT 66
Bibliografıa 68
Lista de sımbolos
Sımbolos con letras latinas
Abreviatura Termino
Cor(M,M ′) Test de correlacion
Corr(X, Y ) Coeficiente de correlacion
C1(X, Y ) Correlacion lineal
C2(X, Y ) Correlacion normalizada
DCT Transformada discreta del coseno
DCT − SV D Metodo de construccion de marcas de agua con SVD y DCT
DWT Transformada discreta wavelet
EMS Error cuadratico medio
Imar Imagen marcada con el metodo SVD
LSB (Least Significant Bist) Metodo de Bits menos significativos.
Mrec Marca recuperada con el metodo SVD-DCT
PSNR Razon de pico senal a ruido
R Test de autocorrelacion
SV D Descomposicion en valores singulares
Ws,τ (f) Transformada wavelet
Sımbolos con letras griegas o conjuntos numericos
Sımbolo Termino
α Nivel de perturbacion de las marcas de agua digitales
N Numeros naturales
x Contenido
Sımbolo Termino
R Numeros reales
Σ Matriz de los valores singulares
σr, σp Valores singularse r-esimo y p-esimo
Z Numeros enteros
Introduccion
Una marca de agua digital es informacion que se sumerge en elementos digitales, como los
videos, las imagenes y los sonidos con el fin de proteger los derechos de autor. Al proceso
de construccion de las marcas digitales se le denomina Digital Watermarking y ha recibido
considerable atencion como complemento a la criptografıa para proteccion de informacion
digital. La criptografıa proporciona seguridad en la entrega de contenido al consumidor. Los
consumidores legales tienen claves para desencriptar el contenido y poder verlo o escucharlo.
Algunos consumidores actuan de manera ilegal cuando comparten informacion a traves de
la red. Por ejemplo, ellos pueden alterar o copiar el contenido que se esta compartiendo de
alguna manera y que no es permitida por su propietario. Sin embargo, la criptografıa no
provee proteccion una vez el contenido que se comparte sea desencriptado. Ası, el proceso de
construccion de marcas de agua digitales complementa la criptografıa sumergiendo un men-
saje dentro del contenido, de tal manera que este pueda permanecer en el elemento marcado
aun despues de ser desencriptado [4].
Por otro lado la esteganografıa es el arte de ocultar informacion de tal manera que se preven-
ga la deteccion del mensaje oculto. Dicho termino se deriva del griego steganos (encubierto)
y grafos (escrito) que significa la escritura encubierta y se refiere a la tecnica que permite
ocultar mensajes secretos en imagenes, audio o videos y ayuda a prevenir la deteccion de
los mismos por usuarios no autorizados [13, 16]. El ocultamiento de informacion ha sido re-
levante a traves de los tiempos, por ejemplo, los antiguos griegos escribıan textos en tablas
cubiertas de cera para pasar un mensaje oculto; ası una persona podıa raspar la cera de la
tableta, escribir un mensaje en la madera subyacente y de nuevo cubrir la tableta con cera
para que pareciese blanca y sin usar.
Otro ejemplo muy citado de la esteganografıa es una antigua historia de Herodoto [26] que
habla de un esclavo enviado por su maestro Histieo a la ciudad de Mileto, con un mensaje
secreto tatuado en la cabeza. Despues de tatuado, el esclavo se dejo crecer el cabello con el
fin de ocultar el mensaje. Luego viajo y al llegar se afeito la cabeza para revelar el mensa-
je a Aristagoras. El mensaje invitaba a Aristagoras para iniciar una revuelta contra el rey
persa. En este escenario, el mensaje es de un valor primordial para Histieo y el esclavo es
simplemente portador del mensaje.
A principios de la Segunda Guerra Mundial la tecnologıa esteganografica se basaba en tintas
xii Contenido
invisibles que ofrecıan una forma comun de escritos que se podıan colocar entre las lıneas
de otros escritos que parecıan indefensos de tal manera que no se detectara el verdadero
mensaje [26]. Por ejemplo en la Figura 0-1 se muestra una imagen que revela un mensaje
de espıas alemanes con una receta para preparar tinta invisible.
Figura 0-1.: Escrito en frances con tinta invisible (http://images.china.cn/jpg/site1006)
Otra tecnica esteganografica ampliamente usada durante la primera y la segunda guerras
mundiales es el llamado “cifrado nulo”. Consiste en escribir un texto aparentemente sin im-
portancia en el cual solo ciertas letras o palabras son significativas. Por ejemplo, cada quinta
palabra o la primera letra de cada palabra. El resto solo sirve para enmascarar el mensaje
autentico de forma que no llame la atencion. Los espıas alemanes ocultaban informacion
en documentos a traves del uso de este metodo de tal manera que abrir estos mensajes
no suponıa peligro para el enemigo. En cambio las comunicaciones sospechosas podian ser
detectadas por filtros de correo [15]. Por ejemplo, el siguiente mensaje de cifrado nulo fue
enviado por un espıa aleman en la Segunda Guerra Mundial:
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.
Contenido xiii
La decodificacion de este mensaje mediante la extraccion de la segunda letra de cada palabra
revela el siguiente, mensaje oculto:
Pershing sails from NY June 1.
Que en espanol quiere decir: Pershing sale el 1 de junio. Curiosamente, la comunicacion fue
un exito, pero no tanto la propia informacion: Pershing, el comandante jefe de las fuerzas es-
tadounidenses durante la Primera Guerra Mundial, en realidad habıa partido tres dıas antes,
el 28 de mayo. La detecion de mensajes fue mejorando con el desarrollo de nuevas tecnologıas
que podrıan pasar mas informacion y ser aun menos visibles. Los alemanes desarrollaron tec-
nologıa de micropuntos, a la que el director de la Oficina Federal de Investigaciones (FBI)
de Estados Unidos J. Edgar Hoover, se referıa como La obra maestra del espionaje enemigo
[15]. Esta tecnologıa consistıa en reducir fotograficamente una pagina de texto a un punto
Figura 0-2.: Micropuntos. (http://images.china.cn/attachement/jpg/site1006)
de menos de un milımetro de diametro, para luego esconderlo en una carta aparentemente
inofensiva. Por ejemplo, un mensaje podıa ir oculto en el punto de una i, en un punto y
aparte, o en el reverso de un sello postal, ver Figura 0-2. Esta fue una practica habitual
de los agentes alemanes en America Latina hasta que el soplo de un agente doble puso a
los estadounidenses sobre aviso. En 1941 en la Oficia Federal de Investigaciones de Esta-
dos Unidos se descubrio un brillo diminuto en la superficie de una carta, indicativo de una
minuscula pelıcula, en efecto, era un micropunto [15].
En las ultimas decadas la invencion de la computadora ha cambiado el papel de la este-
ganografıa. Con las herramientas informaticas actuales es muy sencillo camuflar informacion
en una imagen, un archivo sonoro, un video o cualquier otro tipo de documento, de manera
que sea imposible de percibir a simple vista. Esto ha permitido que la esteganografıa haya
encontrado nuevas aplicaciones utiles para combatir la piraterıa y proteger los derechos de
autor, mediante marcas de agua digitales. Esta tecnica, parecida a la marca de agua que
xiv Contenido
tienen los billetes, consiste en insertar un mensaje oculto con informacion sobre el autor
o propietario intelectual en pelıculas, canciones, fotografıas y otros contenidos digitales, de
esta manera, se puede detectar el uso ilıcito por parte de un usuario no autorizado.
Durante la primera mitad de la decada de 1990, las marcas de agua llamaron la atencion
a muchos investigadores lo cual permitio aumento en el numero de publicaciones por ano
sobre metodos para construir marcas de agua. Ellos comenzaron a crear metodos sencillos
que presentan los principios basicos de marcado y luego algoritmos mas sofisticados [5]. Una
de las primeras tecnicas de construccion de marca de agua digitales es la modificacion de los
bits menos significativos. Se basa en la sustitucion del plano LSB (Least Significant Bit) de
la imagen original con la marca. En el primer capıtulo de este trabajo se explica paso a paso
este metodo.
En la actualidad el Watermarking tiene diferentes aplicaciones, entre ellas las siguientes:
Monitoreo de Difusion: surgio en 1997 debido a que en Japon ocurrio un escandalo por-
que descubrieron que miles de publicaciones no habıan sido difundidas por television
desde hacia mas de 20 anos. Por esta razon se crearon sistemas de control que reco-
nocıan el contenido que se emitıa. Algunos de estos sistemas se basan en informacion
asociada que se transmite junto con el contenido la cual es facil de decodificar y no es
requerida alguna base de datos para interpretar su significado [5].
Para deteccion de copia y usos no autorizados: el vendedor sumerge una marca invisi-
ble en el momento de la distribucion de la imagen para indicar quien es el comprador.
Si se encuentra una copia no autorizada se puede rastrear de donde procede la ima-
gen mediante la recuperacion de su marca. Esta aplicacion se conoce tambien como
fingerprinting o labelling.
Evidencia de propiedad: consiste en insertar una marca en el trabajo original que
identifique al propietario de manera que no se pierda el derecho de propiedad despues
de distribuir copias del archivo. Si existiera una disputa sobre la propiedad del trabajo,
el dueno podra demostrar que su marca se encuentra en el archivo y por tanto es de
su propiedad [5].
Control de uso: este tipo de control se puede utilizar solo en el caso de que la repro-
duccion o copiado del material multimedia requiera un hardware especial. Un ejemplo
es el caso del video digital (DVD) en el que puede existir una marca en el disco para
indicar si el video puede ser copiado o solo reproducido.
Una de la caracterısticas que generalmente se requiere en algunos metodos de marcado es que
la informacion sumergida en el elemento digital permanezca en el objeto marcado despues
de ser modificada, esta caracterıstica se denomina robustez del metodo.
Contenido xv
En el presente trabajo se implementa un metodo de construccion de marcas de agua di-
gitales en matlab para imagenes en escala de grises usando la transformada discreta del
coseno (DCT) y la descomposicion en valores singulares (SVD) el cual se denominara en el
resto del texto como el metodo SVD-DCT, ademas se estudia la robustez de este metodo
junto con otros tres metodos basados en la descomposicicion en valores singulares, la trans-
formada discreta del coseno y la transformada wavelet (DWT) respectivamente y que han
sido propuestos por [24,27], en cada uno, para los ataques de rotacion, recorte, amplificacion
y escaneado. El estudio de la robustez se realiza mediante la Relacion Senal a Ruido de Pico
(PSNR), error cuadratico medio (MSE), el coeficiente de correlacion y el test de correlacion
basado en la correlacion normalizada.
En este orden de ideas en el capıtulo 1 se dan algunos conceptos basicos de procesamiento
de imagenes, tecnicas de construccion de marcas de agua y los parametros para estudiar la
robustez de las marcas de agua. En el capıtulo 2 se explica el procedimiento de construccion
de marcas de agua digitales usando descomposicion de valores singulares y se encuentran
tambien las pruebas de correlacion realizadas para cada uno de los ataques. En el capıtu-
lo 3 se explica el procedimiento para construccion de marcas de agua digitales usando los
coeficientes de la transformada discreta del coseno y la transformada discreta wavelet con
sus respectivas pruebas de correlacion. En el capıtulo (4), el lector encontrara el procedi-
miento para construir las marcas de agua con el metodo SVD-DCT, sus respectivas pruebas
de correlacion, algunos experimetos y resultados. Finalmente, se encuentran las conclusiones
generales de esta investigacion.
Estos contenidos permitieron obtener los siguientes resultados a la autora: dar una descrip-
cion completa del metodo de construccion de marcas de agua digitales SVD-DCT, realizando
un estudio detallado de su robustez, implementar los algoritmos para los metodos estudia-
dos en Matlab y comparar la robustez del metodo SVD-DCT con los metodos de marcado
que usan SVD (Descomposicion en Valores Singulares), DCT (Transformada Discreta del
Coseno) y DWT (Transformada Discreta Wavelet).
Los resultados de este trabajo fueron socializados en el V Encuentro de Algebra, Teorıa
de Numeros, Combinatoria y sus Aplicaciones (ALTENCOA5− 2012) en calidad de ponen-
cia, llevado a cabo en la ciudad de Bogota de 3 a 7 de Diciembre de 2012.
1. Preliminares
1.1. Definiciones basicas
1.1.1. Imagenes digitales
Una imagen es una funcion bidimensional F (x, y) donde x e y son coordenadas del plano y
el valor de F, en cualquier punto p = (x, y) representa la intensidad y luminosidad o el nivel
de gris de la imagen. Cuando x, y y los valores de F son todos finitos y discretos, la imagen
se denomina imagen digital. Es decir una imagen digital esta compuesta de un numero finito
de elementos, cada uno de los cuales tiene una localizacion particular y un valor asignado.
Por ejemplo, dada una imagen monocromatica digital I se puede definir como una funcion
de dos variables I(x, y), donde a cada punto p = (x, y) le corresponde un valor entre 1 y 255,
de tal manera que valores cercanos a 1 indican un nivel de gris mas intenso y cercanos a 255
representan un nivel de gris mas claro. Esta funcion se puede representar como una matriz
m× n ası:
I = {I(x, y), 0 ≤ x ≤ m, 0 ≤ y ≤ n. x, y ∈ Z}
Las coordenadas de los elementos de la imagen tambien son las coordenadas de los pixeles
de la imagen.
1.1.2. Pixel y resolucion en una imagen digital
Un pixel es la unidad mınima en la que se puede dividir una imagen, dada la representacion
matricial de dicha imagen, a un elemento de la forma (p, F (p)) se le llama pixel donde p es
la ubicacion y F (p) es el valor del pixel. En la Figura 1-1 se senalan algunos pixeles de una
parte de la imagen de la izquierda.
Cuantos mas pixeles tenga una imagen, mas alta es su resolucion, es decir, mas grande es su
mapa de bits. Las resoluciones altas permiten un mayor detalle y transiciones de color sutiles
en la imagen. La resolucion, ademas de estar relacionada con la densidad de pixels de una
imagen, tambien esta ıntimamente relacionada con su tamano. Generalmente la resolucion
se mide en pixeles por pulgada cuadrada. La resolucion se analiza por el tamano y por la
densidad de la imagen. La primera se expresa mediante los pixeles de ancho por los pixeles
de alto, que determinan el area rectangular que ocupa la imagen en el monitor.
2 1 Preliminares
Figura 1-1.: Pixeles del cuadrado senalado en la imagen de la izquierda
Por ejemplo: 640 x 480 pixeles es el tamano habitual en que trabajan las pantallas de compu-
tador pequenas (14 o 15 pulgadas); la resolucion por densidad se expresa en puntos por
pulgada cuadrada, es decir, la cantidad de pixeles que estan contenidos en un cuadrado que
mide una pulgada cuadrada de area [20].
1.1.3. Algunas operaciones definidas en las imagenes
Si A(x) es un vector de la forma A(x) = (a1(x), ..., an(x)) donde para cada i = 1, ..., n,
ai(x) ∈ R. De tal manera que una imagen A es de la forma A = (a1, a2, ..., an) donde para
el valor A(x) hay asociados n valores reales ai(x). En particular, si A y B son imagenes y
k = (k1, ..., kn) ∈ R., entonces algunas de la operaciones inducidas sobre ellas son [25]:
Adicion A+B = (a1 + b1, ..., an + bn)
Multiplicacion A ·B = (a1 · b1, ..., an · bn)
Mulpiplicacion por escalar k · A = (k1 · a1, ..., kn · an)
Maximo A ∨B = (a1 ∨ b1, ..., an ∨ bn)
Mınimo A ∧B = (a1 ∧ b1, ..., an ∧ bn)
En el caso especial donde k = (k, k, ..., k), se puede usar simplemente el escalar k ∈ R.
Las operaciones binarias definidas en las imagenes son inducidas por una correspondiante
operacion binaria γ : Rn×Rn → Rn sobre el conjunto R. Esto se puede usar para generalizar
este concepto reemplazando la operacion binaria γ por una sucesion de operaciones binarias
γj : Rn → R, donde j = 1, 2, ..., n y se define como:
AγB = (aγ1b, aγ2b, ..., aγnb) [25]
1.2 Marcas de agua digitales 3
En las figuras 1-2 se muestra un ejemplo para dos de las operaciones senaladas anteriormente,
la adicion y la multiplicacion en imagenes digitales. En los dos casos, el resultado se observa
con una escala de grises menos intensos que en la imagenes originales debido a que en estas
operaciones los valores para cada pixel estan acerca o son iguales a 255.
Figura 1-2.: La adicion entre la imagen de Lenna (L) y la imagen de frutos (F) se presenta
en la parte superior de esta figura y el producto escalar entre la imagen de Lenna (L) y una
constante k = 3 en la parte inferior de la misma
1.1.4. Cuantizacion
La cuantizacion es un procedimiento que se realiza mediante propiedades aditivas y aplicando
matrices de cuantizacion que permiten resaltar la informacion mas importante de la imagen
y eliminar la que es muy poco significativa [23]. Tambien es considerada como una tecnica
de compresion con perdida que consiste en comprimir un rango de valores a un unico valor.
Por ejemplo, reducir el numero de colores requeridos para representar una imagen digital,
hace posible reducir el tamano de su archivo. Representar una imagen con un numero menor
de bits que la original tratando de que la imagen cuantizada se vea lo mas parecido a la
original. Este proceso es comunmente usado en compresion de imagenes. No se profundiza
sobre dicho procedimiento puesto que no es objetivo de estudio en este trabajo.
1.2. Marcas de agua digitales
Las marcas de agua hacen parte de la esteganografıa, se construyen sobre objetos y garanti-
zan el difıcil acceso al mensaje oculto durante la circulacion de la informacion portadora del
mismo. Entre algunas de sus aplicaciones esta la autenticidad y proteccion de los derechos
de autor (ver introduccion).
El procedimiento de ocultar informacion en imagenes digitales, videos o audio con la propie-
dad de no ser facilmente removida se denomina digital watermarking. Se conoce como marca
de agua digital a la informacion sumergida en estos archivos digitales. Dicho procedimiento
esta dividido en tres etapas principales que son: construccion de la marca, ataque y deteccion
4 1 Preliminares
de la marca [23], estas etapas se explicaran con detalle para cada metodo de construccion
de marcas estudiados en este trabajo en los capitulos de 2 a 5.
Para la construccion de la marca en imagenes digitales se necesitan las matrices de la ima-
gen original o imagen que sera marcada I y la imagen que se usara como marca M , ademas
es necesario algun m’etodo como por ejemplo: combinaciones lineales de imagenes, modifi-
cacion de valores singulares, modificacion de los coeficientes de transformada discreta del
coseno, modificacion de los coeficientes de la transformada discreta Wavelet, entre otros. Se
selecciona el metodo dependiendo del tipo de marca de agua que se desee construir y de sus
caracterısticas, por ejemplo si se quiere una marca invisible, visible, robusta o fragil, esto
depende de los intereses del investigador o de la utilidad que se desee para la marca de agua.
Figura 1-3.: Procedimiento para marcar imagenes digitales
1.3. Clasificacion de las marcas de agua digitales
Marcas de agua visibles
Las marcas de agua visibles son perceptibles al ojo humano, pueden ser sellos o escudos
que identifican a la empresa o al propietario de la imagen. En la Figura 1-4 se muestran
dos ejemplos de este tipo de marcas, la imagen de la Figura (c) es construida con la
transformacion lineal de las figuras (a) y (b), k1a + k2b = c donde k1 = 0,5 y k2 = 1.
La imagen de la figura (f) es el resultado de reemplazar parte de la informacion de la
imagen de la figura (d) por informacion de la imagen de la figura (d) como un sello.
Marcas de agua invisibles
1.3 Clasificacion de las marcas de agua digitales 5
(a) (b) (c)
(d) (e) (f)
Figura 1-4.: La imagenes de la figuras (c) y (f) tienen marcas visibles, donde 0,5a + b = c
y en f se reemplazo parte de su informacion por la de (e)
Las marcas de agua invisibles son marcas imperceptibles al ojo humano; en algunos
casos son mas difıciles de atacar que las visibles y pueden resistir a gran variedad de
ataques, ellas pueden ser: Robustas, Fragiles o Publicas y Privadas. Se llaman marcas
de agua invisibles robustas si resisten a diferentes manipulaciones o modificaciones que
pueda sufrir la imagen marcada. Estas modificaciones pueden ser intencionales o no,
las intencionales generalmente son causadas con el fin de destruir la marca o construir
otra marca sobre la misma imagen para lograr ambiguedad en el momento de extraer
la informacion oculta y de esta manera disminuir posibilidades, como por ejemplo,
reclamar los derechos de autor si es el caso. En la Figura 1-5 se muestran dos imagenes
que contienen marcas invisibles construidas de la siguiente forma: notando a I=:Lenna
y a M=:mandril las transformaciones lineales k1M + k2I = Im y k1I + k2M = Mm
producen las imagenes de la izquierda y derecha respectivamente, con k1 = 0,1 y
k2 = 1, de esta manera la imagen de Lenna esta marcada con la imagen del mandril y
viceversa.
Marcas de agua fragiles y robustas
Las marcas de agua son fragiles o robustas dependiendo de su metodo de construccion
y de la capacidad de sobrevivir a distintos ataques digitales. El metodo de construccion
de marcas de agua fragiles no es apto para la grabacion del titular de los derechos de
archivos digitales, ya que estas marcas pueden ser facilmente removidas, pero son utiles
6 1 Preliminares
Figura 1-5.: Las imagenes de Lenna (L) y el mandril (M) con marcas invisibles construidas
mediante dos combinaciones lineales, k1M + k2I = Im y k1I + k2M = Mm con k1 = 0,1 y
k2 = 1,
en situaciones para las cuales es importante demostrar que los archivos no han sido
alterados, ya que con cualquier manipulacion se puede quitar la marca. Las tecnicas
de construccion de marcas fragiles tienden a ser un complemento facil de los metodos
robustos. Estas marcas generalmente son construidas directamente sobre los pixeles de
la imagen por tanto tienen bajo nivel de robustez, en la mayorıa de veces se usan para
detectar si la imagen marcada ha sufrido alguna manipulacion, puesto que la informa-
cion de la marca se deteriora en ese momento y es difıcil de extraer.
Las marcas robustas tienen como objetivo sumergir la informacion en un archivo de
manera que no puede ser facilmente destruido. Aunque en realidad la marca no es
verdaderamente indestructible, el sistema puede considerarse solido, y la cantidad de
cambios que se requieren para eliminar la marca hace que el archivo sea inutil. Por
tanto, la marca debe estar escondida en una parte del archivo donde facilmente se
perciba si es removida [14].
En la Figura 1-6 se muestra la imagen (c) construida con la combinacion lineal k1L+
k2C = Cm donde L=:Lenna, C=:carro, Cm:=imagen marcada, k1 = 0,4 y k2 = 0,5.
Cabe notar que las marcas de agua en este caso, no son robustas.
Marcas de agua publicas y privadas
Se denominan ası a las marcas de agua segun la necesidad de usar la imagen original
en el momento de extraer la informacion sumergida . Una marca de agua es publica si
no se necesita de la imagen original en el proceso de extraccion de la marca y es marca
privada si es necesaria la imagen original [14]. En este trabajo se construyen algunas
marcas de agua de tipo privado mediante metodos ya conocidos como la transformada
discreta del coseno (DCT), transformada wavelet (DWT), descomposicion de valores
singulares (SVD), cada uno de stos metodos sera explicado con detalle en los capitulos
1.4 Requerimientos de los sistemas de marcas de agua digitales invisibles 7
(a) (b)
(c)
Figura 1-6.: La imagen del auto (a) esta marcada con la imagen de Lenna (b), esta marca
esta construida mediante modificacion directa de los pıxeles por tanto es una marca de agua
fragil, la imagen (c) es la imagen marcada.
2 y 3.
1.4. Requerimientos de los sistemas de marcas de agua
digitales invisibles
A continuacion se estudian los requisitos mas destacados del sistema de marcas de agua.
Seguridad
El requisito de seguridad de un sistema de marcas de agua puede variar ligeramente
dependiendo de la aplicacion. La seguridad en una marca de agua implica que esta
debe ser difıcil de suprimir o alterar sin danar la senal marcada. Como la mayorıa de
los sistemas de marcas de agua tratan de proteger la informacion de la misma, sin
perdida de generalidad, la seguridad de la marca de agua puede considerarse como la
capacidad para asegurar el secreto y la integridad de la informacion, para que resista
los ataques a los que pueda ser sometida la imagen marcada [19].
Imperceptibilidad
8 1 Preliminares
La imperceptibilidad se refiere a la transparencia de la percepcion de la marca de agua.
Lo ideal es que no haya diferencia perceptible entre la imagen marcada y la imagen
original [21, 22]. Una forma sencilla de reducir la distorsion durante el proceso de
marcado, consiste en sumergir una cantidad insignificante de informacion de la marca
de agua en la imagen o senal original [21]. Sin embargo, esto hace que sea facil para
un atacante alterar la informacion de la marca de agua sin que se note. Como solucion
a este problema, algunos autores sugieren selecionar la informacion mas importante
de la imagen para sumergir la marca. En las Figuras 1-7 y 1-8 se muestran imagenes
con marcas imperceptibles y marcas perceptibles respectivamente construidas mediante
una combinacion lineal, en ambos casos la imagen de la figura (a) es la marca.
(a) (b)
Figura 1-7.: Imagen de Lenna (b) esta marcada con la imagen de los pimentones (a) como
una marca imperceptible
(a) (b)
Figura 1-8.: Imagen de Lenna (b) esta marcada con la imagen de los pimentones (a) como
una marca perceptible
Existen algunos modelos para medir la perceptibilidad, entre ellos el modelo de Watson
para el metodo de la transformada discreta del coseno (DCT). Este modelo mide la
perceptibilidad visual cuando una imagen es alterada mediante modificacion de los
coeficientes de la transformada discreta del coseno. Es mejor que el error cuadratico
medio (ver ecuacion 1-1) en la estimacion de los efectos perceptuales producidos en
una imagen digital por adicion de ruido [5]. Este modelo es aplicado sobre los bloques
de los coeficientes de la trasformada discreta del coseno de la imagen, luego hace una
1.4 Requerimientos de los sistemas de marcas de agua digitales invisibles 9
estimacion de la distancia perceptiva del observador. Para una detallada descripcion y
ejemplos ver [5].
Robustez
La robustez de una marca de agua es la capacidad que tiene la marca para sobrevivir
a diferentes modificaciones en la imagen marcada. Aparte de los ataques maliciosos,
las operaciones comunes de procesamiento de senales digitales pueden representar una
amenaza para la deteccion de la marca de agua, por lo que es conveniente disenar
una marca de agua que pueda sobrevivir a esas operaciones. Por ejemplo, una buena
estrategia para integrar solidamente una marca de agua en una imagen es sumergirla
en partes significativas de la imagen original. Ası, los datos ocultos en una parte sig-
nificativa de percepcion en la imagen tienen posibilidad de sobrevivir a una operacion
como la compresion con perdida de informacion, que descarta los datos perceptualmen-
te insignificates. Sin embargo, como esta parte de la imagen marcada es mas sensible a
las alteraciones, las marcas de agua pueden producir distorsiones visibles en la imagen
marcada. El nivel exacto de la robustez que un algoritmo debe poseer, no se puede
especificar sin tener en cuenta el escenario de aplicacion [5].
No todas las aplicaciones de marcas de agua digitales requieren una marca de agua
que sea lo suficientemente robusta como para sobrevivir a todos los ataques y a las
operaciones de procesamiento de senales. En efecto, una marca de agua solo tiene que
sobrevivir a los ataques y las operaciones de procesamiento de senales que puedan
ocurrir durante el perıodo en que la senal de marca esta en el canal de comunicacion.
En un caso extremo, la robustez puede ser completamente irrelevante. De hecho, en
algunos casos la fragilidad es deseable.
Capacidad
La capacidad de la marca de agua normalmente se refiere a la cantidad de informacion
que puede almacenarse en la marca de agua. Este requisito se relaciona con la imper-
ceptibilidad y la robustez de la marca puesto que entre mayor cantidad de informacion
se almacene disminuye la impercebilidad pero la robustez puede mejorar porque la
posibilidad de tener errores en la deteccion de la marca es menor.
1.4.1. Modelos de deteccion de marcas de agua
Para medir el desempeno de cada uno de los algoritmos simulados, se emplean parametros
que ya han sido usados por varios autores para este fin [5,11,25,27]. En este trabajo se apli-
can algunos metodos para deteccion de la marca de agua, entre ellos: Error Cuadratico Medio
10 1 Preliminares
(MSE), Pico de la Razon pico Senal a Ruido (PSNR), Test de Correlacion y Coefiente de Co-
rrelacion. A continuacion se realiza una descripcion a cerca de cada uno de estos parametros.
Error Cuadratico Medio (MSE) y Pico de la Razon Pico Senal a Ruido
(PSNR)
Debido a que muchas senales tienen un muy amplio rango dinamico1, el PSNR se ex-
presa generalmente en escala logarıtmica y su resultado se analiza en decibeles 2. El
PSNR es mas comunmente utilizado como medida de la calidad de las imagenes digita-
les reconstruidas despues de ser modificadas por compresion con perdida. Se comparan
los datos originales con los reconstruidos. En algunos casos, una reconstruccion puede
parecer estar mas cerca de la original que otra, a pesar de que tenga un valor de PSNR
inferior (un PSNR mayor normalmente indica que la reconstruccion es de mayor cali-
dad).
El MSE para dos imagenes monocromaticas m × n, una la original I y la otra mo-
dificada M , esta difinido por:
MSE =1
mn
m−1∑i=0
n−1∑j=0
[I(i, j)−M(i, j)]2 . (1-1)
El PSNR se define como:
PSNR = 20 log
(255
MSE
). (1-2)
Los tres tipos principales de correlacion son: Correlacion Lineal, Correlacion Normali-
zada y Coeficiente de Correlacion [5].
Correlacion lineal
La correlacion lineal entre dos vectores X e Y es el promedio del producto de sus
elementos. Es comun en las comunicaciones para mostrar la presencia de una senal
trasmitida Yk en una senal X. Se representa por C(X, Y ), donde:
C1(X, Y ) =1
N
N∑i=1
X(i)Y (i). (1-3)
1El rango dinamico (DB en decibeles, db) se define matematicamente como: DB =
10 log (Amplitud Maxima)2
(Amplitud Minima)2 , en un sistema digital, la amplitud maxima es n2, siendo n el numero
de bits y la amplitud mınima es 20 que corresponde a cero bits.2El decibel (dB) es una unidad relativa utilizada para calcular niveles de senales.
1.4 Requerimientos de los sistemas de marcas de agua digitales invisibles 11
El metodo para calcular C y la comparacion con un umbral se conoce como filtrado
combinado y es considerado un metodo optimo de deteccion de senales en presencia de
adicion de ruido blanco gaussiano3 [5].
Correlacion normalizada
Uno de los problemas de la correlacion lineal es que los valores de deteccion dependen
en gran parte de las magnitudes de los vectores. Para muchos metodos de extraccion,
esto significa que la marca de agua no es robusta contra procesos simples como por
ejemplo cambiar el brillo de las imagenes o la reduccion del volumen de la musica en
el caso que la marca se haya construido en senales de audio. Este problema se puede
resolver mediante la normalizacion de la marca original y la marca extraida para que
se tengan vectores de magnitud uno, antes de calcular el producto interno [5]. Se define
la correlacion normalizada por:
C2(X, Y ) =∑i
X(i)Y (i), X =X
|X|, X =
Y
|Y |. (1-4)
A veces se sugiere que la correlacion lineal puede ser utilizada como una medida de
deteccion, pero que el umbral de deteccion debe ser escalado por la magnitud de la
marca extraida. Esto es equivalente a utilizar la siguiente formula determinada por el
producto punto entre los vectores X e Y sobre la norma del vector X.
C3(X, Y ) =X • Y|X|
. (1-5)
La diferencia de este metodo con la correlacion normalizada es que en el metodo equiva-
lente no se normaliza la marca original. Las marcas originales estan limitadas a tener
alguna constante como magnitud, en cuyo caso la medida C3 difiere de C2 por una
constante [5].
Coeficiente de correlacion
El coeficiente de correlacion se obtiene restando la media de los valores de los vectores
antes de calcular la correlacion normalizada entre ellos, como sigue:
Corr(X, Y ) = C2(X, Y ), X = X −X, Y = Y −X. (1-6)
Este metodo proporciona robustez frente a cambios en el coeficiente DC4 de un trabajo
digital, como por ejemplo, la adicion de una constante de intensidad para todos los
3El ruido blanco gaussiano o normal es la contaminacion de los valores de algunos pixeles de una imagen
que produce una divergencia entre el valor medido y el valor real de dichos pixeles [9], tiene un efecto
general en toda la imagen, es decir, la intensidad de cada pıxel de la imagen se puede ver alterada en
cierta medida, de acuerdo con una distribucion normal.4Un coeficiente DC es el valor mayor de los coeficientes de la transformada discreta del coseno de una
imagen digital
12 1 Preliminares
pixeles de una imagen.
La siguiente formula es equivalente a la ecuacion (1-6),
C4(X, Y ) =X • YSx
. (1-7)
Donde X es el vector extraido y Sx = 1√N
∣∣X −X∣∣ es la desviacion estandar de la
marca extraida. Por tanto C4 se puede escribir como:
C4(X, Y ) =
√NX • Y∣∣X −X∣∣ . (1-8)
Test de correlacion
Existen muchas aplicaciones donde es necesario comparar una senal de frecuencia con
una o mas senales para determinar la similitud entre ellas o determinar la autenticidad
de la marca; para ello, tambien se puede usar el test de correlacion [5, 11].
cor(M,M ′) =M ′ •M√M ′ •M ′
. (1-9)
Este test consiste en aplicar de manera susesiva la formula del metodo equivalente a la
correlacion normalizada (ver ecuacion 1-5) entre la informacion de la marca recuperada
y cada una de las imagenes de prueba seleccionadas para el test. Los principales pasos
para construir un test consisten en: seleccionar la imagen marca de agua recuperada y
un conjunto de imagenes adicionales, entre ellas, la imagen que corresponde a la marca
original, para este trabajo se usaron algunas imagenes de la base de matlab, otras
fueron capturadas con una camara samsung WB500 o descargadas de la internet, para
mejores detalles ver capıtulo 4 seccion 4.4 que corresponde a resultados experimentales.
Con cada imagen se costruye un vector lineal para poder aplicar la ecuacion 1-8, se
escogio el metodo de zig-zag ver Figura 3-13 en el capitulo 3. De tal manera que se
obtuvieron 2000 vectores a los que se les aplico el test para con la marca recuperada,
donde hay mayor correlacion sobresale el pico mas alto de la grafica y corresponde al
vector de la marca original. Ver Figura 1-9.
1.5. Tecnicas de construccion de marcas de agua digitales
1.5.1. Tecnicas en dominio espacial
Son procedimientos de marcado que se llevan a cabo directamente sobre los pixeles de la
imagen. Estas tecnicas no son tan recomendables debido a que son susceptibles a algunas
operaciones normales como la compresion con perdida de informacion [23], por ejemplo la
1.5 Tecnicas de construccion de marcas de agua digitales 13
Figura 1-9.: A 2000 vectores se les aplico el test con una marca de agua recuperada, en la
figura se observa un pico que sobresale el cual indica la presencia de la marca de agua
codificacion mediante Bits menos significativos de codificacion conocido tambien como el
metodo Least Significant Bits (LSB) .
Este procedimiento consiste en modificar el bit menos significativo de la imagen original,
sustituyendo el valor del pixel por la informacion de la marca, dicha tecnica es muy simple
pero su robustez tambien tiende a ser muy baja, generalmente la marca no se puede recuperar
despues de que haya sufrido alguna modificacion [23]. Por ejemplo, si una imagen tiene los
siguientes bytes de informacion en alguna parte de ella,
10000101 10000100 01001011 10101011 10001110 10001001 10101010 10101011
y se quiere ocultar el siguiente mensaje guardado en un byte, 10010111. Los valores resaltados
en negrita son los bits menos significativos de la imagen donde se insertara la informacion
del mensaje, esta informacion se modifica de tal manera que cada valor se sustituye por el
valor del bit del mensaje, dejando sin modificar en caso que coincida con el valor del bit.
10000101 10000100 01001010 10101011 10001110 10001001 10101011 10101011
En la Figura 1-10 se muestra un ejemplo de este tipo de tecnica. A la izquiera la imagen
marcada y a la derecha la imagen usada como marca.
Otro de los diferentes procedimientos para construccion de marcas de agua en dominio
espacial es la tecnica de correlacion, en este metodo un ruido pseudo-aleatorio (PN)5 con
un patron de W (x, y) (como por ejemplo una sucesion de numeros aleatorios generados con
matlab ) se anade a una imagen [6, 8], de acuerdo con la ecuacion (1-10).
Iw(x, y) = I(x, y) + kW (x, y). (1-10)
5Un numero pseudo-aleatorio es un numero generado en un proceso que parece producir numeros al azar,
pero no lo hace realmente. Las secuencias de numeros pseudo-aleatorios no muestran ningun patron
o regularidad aparente desde un punto de vista estadıstico, a pesar de haber sido generadas por un
algoritmo completamente determinista, en el que las mismas condiciones iniciales producen siempre el
mismo resultado.
14 1 Preliminares
Figura 1-10.: La imagen de Lenna esta marcada mediante la tecnica LSB, la imagen del
frailejon se uso como la marca de agua.
Iw(x, y) es la imagen marcada, I(x, y) la imagen original y k el factor de cambio. El aumento
del factor k permite que haya solidez en la marca de agua, pero puede danar la calidad de la
imagen I(x, y). Si es muy pequeno el valor de k (varıa para cada imagen), el decodificador
de correlacion de la marca puede no recuperarla [23]. La Figura 1-11 en las imagenes (c) y
(d) muestra la imagen de Lenna (a) marcada con la imagen del mandril (b) con un factor
de cambio k = 0,5 y k = 0,1 respectivamente.
1.6. Tecnicas en el dominio de las frecuencia
Todas las senales se pueden representar en su dominio de frecuencias, esta idea nacio desde
1807 cuando Fourier probo que una senal periodica se puede representar como sumas pon-
deradas de funciones senos y cosenos. En esta seccion se describen marcas de agua cuando
las imagenes son expresadas en su dominio de frecuencias.
1.6.1. Descomposicion en valores singulares de una matriz
La descomposicion en valores singulares de una matriz A m×n, esta definida por la ecuacion
(1-11)
A = UΣV t, (1-11)
donde U ∈ Rm×m y V ∈ Rn×n son matrices ortogonales, es decir UU t = I, V V t = I y
Σ = diag(σi) es una matriz cuyos elementos diagonales σi son no negativos, llamados valores
singulares, son las raices cuadradas no negativas de los valores propios distintos de cero de las
matrices AAt y AtA, ordenados de manera decreciente σ1 ≥ σ2 ≥ ... ≥ σm ≥ 0, las columnas
ui de U son llamadas vectores singulares izquierdos y las columnas vi de V vectores singulares
derechos. Las columnas de U y V son los vectores propios de AAt y AtA respectivamente.
Por ejemplo:
1.6 Tecnicas en el dominio de las frecuencia 15
(a) (b)
(c) (d)
Figura 1-11.: La imagen de Lenna (c), esta marcada con la imagen del mandril (b). con
un factor de cambio k=0.5 y la imagen (d) es la imagen de Lenna marcada con k=0.1. Las
imagenes (a) y (b) son las originales
A =
1 1 0
0 −1 1
, AAt =
2 −1
−1 2
, AtA =
1 −1 0
−1 2 −1
0 −1 1
.
Los valores propios de AAt son λ = 1, λ = 3 y para AtA los valores propios son λ = 0, λ = 1,
λ = 3, en cuyo caso se tienen los valores singulares de A σ1 =√
3 y σ2 = 1. Los vectores
propios de AAt normalizados son:
u1 = 1√2
−1
1
, u2 = 1√2
1
1
.
Los vectores propios de AtA son:
v1 = 1√6
1
−2
1
, v2 = 1√2
−1
0
1
, v3 = 1√3
1
1
1
.
Por tanto A = UΣV t donde:
16 1 Preliminares
U =
−1√2 1√2
1√2
1√2
,∑
=
1√3
0 0
0 1 0
, V =
1√6−2√6
1√6
−1√2
0 1√2
1√3
1√3−1√3
.
Si k ≤ m positiva, se puede representar la descomposicion en valores singulares de Amediante
la ecuacion (1-12) [27]:
A = UΣV t = δ1u1vt1 + σ2u2v
t2 + ...+ σkukv
tk =
k∑i=1
σiuivti . (1-12)
De esta manera se pueden elegir k valores singulares para recuperar una imagen con buena
calidad, dado que hay valores singulares muy pequenos que ademas tienen un peso menor
respecto a los demas. Esto quiere decir que si los valores singulares de una matriz A con m
filas y n columnas, de rango igual a r, no nulo, cumplen que σ1 ≥ σ2 ≥ ... ≥ σv ≥ σv+1 ≥... ≥ σr > σr+1 = σr+p = ... = σp = 0, donde p = min {m,n} entonces A puede aproximarse
mediante otra matriz B, de rango inferior, igual a v, no nulo, tal que la distancia de A a B
se define como:
minr(B)=v ‖A−B‖2 = σv+1. (1-13)
donde r(B) es el rango de B, la prueba de esta afirmacion se encuentra [10]. La norma
espectral de una matriz A es igual al valor de su valor singular mayor [10], ver ecuacion
(1-14).
‖A‖2 = σ1, (1-14)
donde σ1 corresponde a su valor singular mayor.
El uso de la descomposicion en valores singulares ( metodo SVD) en marcas de agua di-
gitales se debe a una de las propiedades mas importantes de los valores singulares; pequenas
perturbaciones efectuadas sobre las entradas de una matriz no cambian significativamente
sus valores singulares [27].
Teorema 1. Teorema de perturbacion de los valores singulares: Sean A y ∆A una perturba-
cion de A dos matrices m× n, cuyos valores singulares, que se suponen ordenados de forma
decreciente, son
σ1 (A) , σ2 (A) , σ3 (A) , ..., σr (A).
y
σ1 (A+ ∆A) , σ2 (A+ ∆A) , σ3 (A+ ∆A) , ..., σr (A+ ∆A).
donde r = min {m,n}, respectivamente. Se cumple que:
|σk (A+ ∆A)− σk (A)| ≤ ‖∆A‖2, k = 1, 2, ..., r.
1.6 Tecnicas en el dominio de las frecuencia 17
Demostracion. Sean A = USV t y A+∆A = MNT t la descomposicion SV D de las matrices
A y su modificacion A+ ∆A respectivamente, donde:
S = diag(σ1(A), σ2(A), ..., σr(A))
N = diag(σ1(A+ ∆A), σ2(A+ ∆A), ..., σr(A+ ∆A))
teniendo en cuenta que r = min {m,n} y la ecuacion (1-13), si r(B) es el rango de B,
entonces se tiene la siguiente ecuacion:
minr(B)=k−1 ‖A−B‖2 = σk(A), 1 ≤ k ≤ r,
si k = 1, A+∆A se denomina matriz nula, porque su rango es igual a k−1 = 0, ver ecuacion
(1-13). Por tanto se tiene:
σk(A) = ‖A− (A+ ∆A)k−1‖2 = ‖A+ ∆A− (A+ ∆A)k−1 −∆A‖2 ≥‖A+ ∆A− (A+ ∆A)k−1‖2 − ‖∆A‖2 = σk(A+ ∆A)− ‖∆A‖2
entonces,
σk(A+ ∆A)− σk(A) ≤ ‖∆A‖2Por otra parte,
σk(A) = minr(B)=k−1 ‖A−B‖2 = minr(B)=k−1 ‖A+ ∆A−∆A−B‖2 ≤minr(B)=k−1 ‖A+ ∆A−B‖2 + ‖∆A‖2 = σk(A+ ∆A) + ‖∆A‖2
Por tanto,
σk(A)− σk(A+ ∆A) ≤ ‖∆A‖2Ambos resultados conducen a
|σk(A+ ∆A)− σk(A)| ≤ ‖∆A‖2lo cual establece una cota superior para la variacion, en valor absoluto, del valor singular
k-esimo.
1.6.2. Transformada discreta del coseno
Para una matriz A de tamano m×n, la transformada discreta del coseno y su inversa estan
determinadas por las ecuaciones (1-15) y (1-16) respectivamente.
Tu,v(A) = C(u)C(v)m−1∑x=0
n−1∑y=0
A(x, y) cos
[π(2x+ 1)u
2m
]cos
[π(2y + 1)v
2n
], (1-15)
Si B = Tu,v(A) entonces:
T−1x,y (A) =m−1∑u=0
n−1∑v=0
C(u)C(v)B(u, v) cos
[π(2x+ 1)u
2m
]cos
[π(2y + 1)v
2n
]. (1-16)
18 1 Preliminares
C(u) =
1√m, u = 0,√2m, 1 ≤ u ≤ m− 1.
C(v) =
1√n, v = 0,√2n, 1 ≤ v ≤ n− 1.
1.6.3. Transformada wavelet
La transformada wavelet de una funcion f(t) es la descomposicion de f(t) en un conjunto
de funciones ψs,τ (s, t), que forman una base y son llamadas las wavelets. La transformada
wavelet se define como :
Ws,τ (f) =
∫f(t)ψs,τ (t)dt. (1-17)
Donde ψs,τ (t) es generada por traslacion y cambio de escala de una funcion ψ llamada wavelet
madre, que se define como:
ψs,τ (t) =1√sψ
(t− τs
), (1-18)
donde s es el factor escala, y τ es el factor de traslacion. Las wavelets ψs,τ (t) generadas de
la misma funcion wavelet ψ(t) tienen diferente escala s y ubicacion τ , pero tienen todas la
misma forma. Se utilizan siempre factores de escala s > 0 y son contraidas cuando s < 1 y
dilatadas cuando s > 1 [25].
Las funciones wavelets continuas con factores de escala y traslacion discretos se las denomina
Wavelets discretas. Para las wavelets discretas los factores de escala y traslacion discretas
pueden ser expresadas como:
s = si0 y τ = kτ0si0,
donde i y la constante k son enteros, y s0 > 1 es un paso fijo de dilatacion. Por tanto
ψi,k(t) = s−i20 ψ(s−i0 t− kτ0)
La transformada wavelet de una funcion bidimensional f(x, y) este.terminada por:
Wf (sx, sy;u, v) =1
√sxsy
∫ ∫f(x, y)ψ
(x− usx
;y − vsy
)dxdy (1-19)
sx = sy = s son factores de escala y u, v factores traslacion.
En particular, las bases wavelet de Daubechies en la transformada wavelet tienen la propiedad
de formar una base ortonormal y poseen soporte compacto. Por esta razon, son adecuadas
1.6 Tecnicas en el dominio de las frecuencia 19
para el analisis de senales con soporte finito (por ejemplo: notas musicales, electrocardiogra-
mas, sismogramas, etc.) en particular para el analisis y procesamiento de imagenes. Debido
a la condicion de ortonormalidad, se asegura la independencia de la representacion de la
senal en los diferentes niveles de descomposicion, es decir, que no se genera informacion
redundante de la senal, de esta manera, se evita la aparicion de informacion falsa. Ademas,
las bases de Daubechies permiten calcular la transformada wavelet mediante un algoritmo
menos complejo, con un bajo costo computacional y numericamente estable (los calculos
realizados son confiables dentro de la precision numerica del procesador), lo cual hace a esta
mas eficientes frente a las bases no ortonormales [25].
En el calculo practico de la transformada wavelet ortonormal, mediante bases wavelet de
Daubechies se utiliza un conjunto de filtros discretos pasa-bajas6 y pasa-altas7, L(n) y H(n).
De esta forma, dado un vector de datos de longitud igual a un numero entero potencia de
dos, la descomposicion y reconstruccion wavelet ortonormal se implementa con un algoritmo
piramidal iterando estos filtros. Para una base de Daubechies los coeficientes de filtro cumplen
las siguientes relaciones algebraicas [7]:∑N−1m=0 L(m) =
√2,∑N−1
m=0 L(m)L(m+ 2k) = σ(k, 0) =
∑N−1
m=0 |L(m)|2 , k = 0,
0, k 6= 0∑N−1m=0(−1)mmkL(N − 1−m) = 0, 0 ≤ k ≤ L− 1, L = N/2.
.
Por otra parte, la familia de funciones de la transformada Haar esta definida por [25]:
hi(t) =
1, t ∈
[km, k+0,5
m
)−1, t ∈
[k+0,5m
, k+1m
)0, otro−caso.
(1-20)
Donde m = 2j(j = 1, 2, ...J) indica el nivel de la wavelet; k = 0, 1, 2, ..., m−1 es el parametro
de traslacion. El maximo nivel de resolucion es J . El ındice i se calcula de acuerdo a la formula
i = m+ k + 1; en caso de los valores mınimos m = 1, k = 0, se tiene i = 2, el valor maximo
de i es 2J+1.
En este trabajo se aplica la transformada de Haar, en el capitulo 3 se explica como aplicar
esta transformada para la construccion de marcas de agua.
6Un filtro pasa bajas es una funcion que permite el paso de las frecuencias mas bajas y atenua las frecuencias
mas altas en las senales7Un filtro pasa altas es una funcion que atenua frecuencias bajas y permite el paso de altas frecuencias en
las senales
2. Descomposicion de valores singulares
y marcas de agua Digitales
El origen de los valores singulares se encuentra en el intento de algunos geometras del siglo
XIX por conseguir la reduccion de una forma cuadratica a forma diagonal mediante cambios
de bases ortogonales. La primera contribucion en este sentido fue dada por Eugene Bel-
trami, un geometra diferencial italiano, quien escribio un artıculo en la revista Giornale di
Matematiche ad Uso degli Studenti Delle Universita sobre formas bilineales. Este es un tema
altamente usado en diferentes campos de aplicacion, entre ellos, analisis numerico y procesa-
miento de imagenes, su imporancia se debe a las propiedades que estos valores poseen, por
ejemplo: La relacion que tienen con el rango de la matriz y las bajas modificaciones cuando
se altera de manera especıfica la matriz original.
En este capıtulo se construyen algunas marcas de agua modificando los valores singulares de
la matriz que representan a la imagen original, haciendo enfasis en la robustez de la marca
y la calidad de la imagen marcada. Se enfatiza en un tipo de marcado basado en el teorema
de perturbabion de los valores singulares propuesto en [24].
2.1. Procedimiento para marcar la imagen y recuperar la
marca de agua usando SVD
2.1.1. Pasos para marcar una imagen
Primer procedimiento mediante modificacion directa de los valores singulares.
1. Seleccionar las matrices I y M , que representan, la imagen original y la marca respec-
tiva.
2. Calcular la descomposicion de los valores singulares a cada una, obteniendose las ma-
trices, I = UIΣIVtI y M = UmΣmV
tm.
3. Recordar que las matrices diagonales n × n, ΣI y Σm contienen los valores singulares
respectivamente.
2.1 Procedimiento para marcar la imagen y recuperar la marca de agua usando SVD 21
4. Modificar los valores singulares construyendo la matriz,
Σ = ΣI + αΣm,
donde α indica el nivel de perturbacion que se quiere para la imagen original I.
5. Tener en cuenta la definicion de SVD y obtener la nueva matriz
Im = UIΣVtI ,
la cual representa a la imagen marcada.
El proceso descrito anteriormente es una forma de construir la marca de agua mediante la
modificacion directa de los valores singulares, pero experimentalmente presenta dificultades
para recuperar la informacion de la marca. Una forma de combatir la ambiguedad para re-
cuperar de manera directa la marca de agua en este procedimiento, puede ser, mediante un
alto porcentaje en la modificacion de la imagen original, lo cual conlleva a que facilmente se
perciban defectos en la imagen marcada.
En este trabajo se hace enfasis, en un procedimiento de marcado de imagenes basado en
el teorema de perturbacion de los valores singulares de una matriz. En las siguientes lıneas
se describe el procedimiento para marcar imagenes digitales, teniendo en cuenta el teorema
de perturbacion de los valores singulares, [24]:
1. Considerar I y M matrices que representan la imagen original y la marca respectiva-
mente,
2. Modificar a I la imagen original, de la siguiente manera:
Im = I + αM ,
siendo Im la modificacion de I.
3. Aplicar SVD a la imagen marcada, por tanto, Im = UmΣmVtm, donde Σm es una
matriz n× n de los valores singulares perturbados.
4. Aplicar SVD a la imagen original, I = UΣV t.
5. Reconstruir la imagen marcada Imarc, como:
Imarc = UΣmVt.
22 2 Descomposicion de valores singulares y marcas de agua Digitales
Figura 2-1.: La imagen original de Lenna a derecha y a la izquierda la imagen marcada
mediante el metodo SVD con la imagen del mandril como la marca.
En la Figura 2-1, se muestra a la izquierda la imagen original de Lenna y a la derecha la
imagen marcada con un factor de cambio α = 0,08
Dos de las medidas del error usadas para comparar varias tecnicas de marcado de imagenes
digitales usadas por varios autores y que se nombraron en el primer capitulo, para este tipo
de procedimientos son: el error cuadratico medio, ver ecuacion (1-1) y el parametro Pico de
la razon pico senal a ruido, ver ecuacion (1-2) [4, 6, 27]. Como un valor pequeno del error
cuadratico medio indica poca diferencia entre la imagen modificada y la imagen original, esto
implica un valor grande en el parametro PSNR. Por ejemplo para para la Figura 2-1, la
diferencia entre la imagen original y la marcada es MSE = 130,7790 y PSNR = −10,5827.
A pesar de tener un alto valor para el MSE en la simulacion, de manera perceptual, no se
detecta gran diferencia entre la imagen marcada y la imagen original.
2.1.2. Recuperacion de la marca
Para la Extraccion de la marca, se escriben las matrices I e Im en descomposicion
en valores singulares, estas matrices corresponden a la imagen original sin marca y la
imagen marcada, de tal manera que:
I = U tIΣIV
tI
Im = UmarcΣmarcVtmarc
La imagen marcada debe ser similar a la imagen Im, por tanto,
UIΣVtI = UmarcΣmarcV
tmarc
Luego haciendo uso de las propiedad de ortogonalidad de U y V ; se obtiene la matriz,
UIΣVtI = Im
Σ = U tIImVI
2.2 Robustez del metodo SVD 23
ΣI + αΣM = U tIImVI
ΣM =U tIImVI − ΣI
α
Por tanto los valores singulares recuperados de la marca M estan representados en la
siguiente matriz:
Σrec =U tIImVI − ΣI
α
la cual contiene los valores singulares de la marca (recuperados) y se construye Mrec,
correspondiente a la marca recuperada, se espera que guarde similitud con M la marca
original aun despues de que la imagen marcada sufra algun tipo de modificacion.
Mrec = UmΣrecVtm
Para el segundo metodo de marcado se seleccionan las matrices Imarc y Im, luego,
efectuando su descomposicion de valores singulares, se obtienen respectivamente,
Imarc = Umarc∑
marc Vtmarc
Im = Um∑
m Vtm,
luego,
Um∑
marc Vtm = I + αM
y por ultimo igualando, se tiene Mrec que corresponde a la marca recuperada.
Mrec =(Um
∑marc V
tm− I)
α
A continuacion en la Figura 2-2 se muestra un ejemplo del uso de este algoritmo, a la
izquierda la imagen original que fue usada para marcar la imagen en de la Figura 2-1 y a la
derecha la marca recuperada.
2.2. Robustez del metodo SVD
En esta seccion se recontruye la informacion de la marca de agua despues de que la imagen
marcada haya sido sometida a los procesos de rotacion de 30o, recorte, amplificacion en un
factor de 2 e impresion y escaneado, respectivamente. Luego, se aplican tests de correlacion
para medir la robustez. Antes de los resultados experimentales, se estudiaran algunas defi-
niciones sobre cada uno de estos ataques o graficas que muestran el cambio que tiene una
imagen sometida a este tipo de modificaciones.
24 2 Descomposicion de valores singulares y marcas de agua Digitales
Figura 2-2.: La imagen de la izquierda es la marca original y a la derecha la marca recupe-
rada. MSE=266.281 y PSNR=-12.126
2.2.1. Rotacion de una imagen
La rotacion de una imagen es una transformacion geometrica, la cual envia la posicion de
un pixel de la imagen de entrada en una posicion a la imagen de salida por rotacion de la
misma a traves de un angulo especificado por el usuario y un origen.
La rotacion de una imagen g por angulo θ respecto al eje horizontal n1 esta representada
por la siguiente transformacion:
a1(n1, n2) = n1cosθ − n2senθ, (2-1)
a2(n1, n2) = n1senθ + n2cosθ. (2-2)
Los casos mas simples son: cuando θ = 90 grados, donde [a1(n1, n2), a2(n1, n2)] = (n1, n2);
para θ = 180 grados, donde [a1(n1, n2), a2(n1, n2)] = (−n1,−n2); y para θ = −90 grados,
donde [a1(n1, n2), a2(n1, n2)] = (n2, n1). De tal manera que el punto como origen de rotacion
no esta en el centro de la imagen [2].
Para rotar una imagen con respecto a su centro (x, y) se deben modificar las ecuaciones
(2-1) y (2-2), ası:
a1(n1, n2) = (n1 − x)cosθ − (n2 − y)senθ, (2-3)
a1(n1, n2) = (n1 − x)cosθ + (n2 − y)senθ. (2-4)
La operacion de rotar cambiara las dimensiones de la imagen para que esta pueda verse
completamente, completando los vacıos que deje la rotacion con algun color predeterminado
(generalmente negro ver Figura (2-4)). En la figura (2-3) se muestran los sectores que no
tendran valor asociado ante una rotacion de θ grados. Ademas se indica con diferentes colores
los anchos y altos de la iamegn original y de la rotada.
Si A es la imagen original y Ar la imagen original rotada entonces A y Ar tienen los mismos
valores singulares. Cuando se aplican transformaciones afines a las imagenes como por ejem-
plo una rotacion, se presentan cambios de posicion de los pixeles respecto a su posicion inicial
en el plano imagen, y por lo tanto se requieren metodos de interpolacion numerica para los
2.2 Robustez del metodo SVD 25
Figura 2-3.: Imagen rotada θ grados indicando los vacıos que deja la rotacion, las dimen-
siones de la imagen original con color azul y las demensiones de la imagen rotada con color
rojo.
valores de intensidad que se asignaran a las nuevas posiciones en el plano imagen. Existen
tres metodos conocidos que son: el vecino mas cercano, interpolacion bilineal e interpolacion
bicubica [9]. El metodo de interpolacion en niveles de grises mas simple es el fundamentado
en el del vecino mas cercano, que consiste en escoger como valor del pıxel de la imagen de
salida al valor del pıxel de entrada mas cercano en la direccion inversa. Este metodo, aunque
es simple de implementar, presenta frecuentemente efectos indeseables en las imagenes, tales
como, distorsion de lıneas en imagenes de alta resolucion, motivo por el cual no se aconseja
para el suavizado de imagenes [9]. En este proceso se pierde informacion y causa cambios
en la imagen marcada. Algunos programas ya traen incluida la transformacion para ubicar
nuevamente los pixeles en las coordenadas apropiadas para poder leer la imagen, en este caso
se usara el programa de Matlab para aplicar las rotaciones a las imagenes de estudio. En la
Figura 2-4 se muestra una imagen rotada 15◦.
Figura 2-4.: La imagen de Lenna rotada 15◦, tiene las esquinas cortadas para presentarse
al tamano de la original.
Las imagenes de la Figura 2-5 se usaran como marcas de agua para la imagen de Lenna
(tomada como imagen original) para todos los resultados experimentales que se registren en
el resto del texto y en especial donde no se realice la aclaracion respectiva. Se usa la imagen
de la izquierda para α = 0,05 y la imagen de la derecha para α = 0,08.
Para estudiar la robustez de la marca no interesa obtener la imagen de la marca recuperada,
26 2 Descomposicion de valores singulares y marcas de agua Digitales
Figura 2-5.: Marcas de agua que se usan para algunos resultados experimentales.
sino garantizar que la imagen marcada contenga la marca despues de alguna modificacion,
para ello se aplican los modelos usados por diferentes autores que corresponden a: error
cuadratico medio, razon de pico senal a ruido, Tests de correlacion y Coeficiente de correla-
cion que fueron explicados en el capıtulo 2.
En la Figura 2-6 se muestran las marcas recuperadas despues de que la imagen marca-
da (Lenna) fue modificada por una rotacion de 30 grados, a la izquierda con = 0,05 y a la
derecha α = 0,08:
PSNR:-22.6287
MSE: 3.3554e+004
PSNR: -20.9351
MSE:1.5382e+004
Figura 2-6.: Marcas recuperadas para α = 0,05 y α = 0,08 respectivamente de izquierda a
derecha.
Para garantizar que la imagen despues de modificada mediante la rotacion conserva la marca
de agua. Se presenta en la Figura 2-7, los resultados del test, realizado para la segunda marca
es decir, la imagen de Lenna marcada con la imagen del mandril con un factor α = 0,08.
El pico mas alto del grafico muestra la correlacion mas alta de la marca recuperada con la
marca original, lo que indica que la marca es robusta puesto que esta permanece despues de
que la imagen marcada fue rotada 30 grados.
2.2 Robustez del metodo SVD 27
Figura 2-7.: Test de correlacion para la marca de agua (imagen del mandril) construida
mediante el metodo de SVD despues de aplicar una rotacion de 30 grados a la imagen
marcada. El test muestra que la marca de agua es robusta a este ataque puesto que esta
permanece en la imagen marcada aun despues de dicha modificacion.
2.2.2. Recorte
Una manera de modificar las imagenes bruscamente es mediante mutilacion y de esta forma
reconstruir en forma de collage con el fin de distorsionar su significado o darle una utilidad
diferente. Este tipo de modificacion exige cambiar el tamano de la imagen marcada al igual
que la imagen original y el tamano de la marca para poder aplicar el algoritmo de extraccion
de la marca digital. En la Figura 2-8 se muestra un ejemplo de este tipo de ataque a las
imagenes digitales.
Figura 2-8.: Recorte de la imagen de Lenna
En la Figura 2-9 se muestran las marcas recuperadas posteriores a la modificacion de la
imagen por este ataque y en la Figura 2-10 el test de correlacion para la imagen marcada
con un factor α = 0,08.
28 2 Descomposicion de valores singulares y marcas de agua Digitales
PSNR:-17.7458
MSE:3.5413e+003
PSNR:-20.7203
MSE: 1.3933e+004
Figura 2-9.: Marcas recuperadas de recorte. A la izquierda la marca recuperada con α = 0,05
y a la derecha la marca recuperada con α = 0,08.
2.2.3. Amplificacion de escala en un factor de 2
Amplificando la imagen Im×n en factor de 2 se tiene una imagen M con tamano 2m×2n, para
realizar el procedimiento de recuperacion de la marca, se modifica el tamano de tal manera
que sea congruente con los tamanos de la marca e imagen original. Este procedimiento
tambien se puede realizar con un factor menor que 1 lo que permite reducir la imagen
marcada de su tamano original, por tanto para ejecutar el algoritmo de extraccion de la
marca se realiza lo contrario al anterior, reduciendo el tamano de la marca e imagen original.
La ecuacıon para esta transformacion geometrica es:
a1(n1, n2) = n1
c, a2(n1, n2) = n2
d.
Donde si c ≥ 1 y d ≥ 1 la imagen se amplifica y si c < 1 y d < 1 entonces la imagen se
comprime o minimiza. Si se aplica a las entradas de la imagen, entonces el tamano de la
imagen tambien cambia en c(d) a lo largo de la direccion horizontal [2].
En la Figura 2-11 se muestra un ejemplo de la amplificacion de una imagen por un fac-
tor de dos, posteriormente la recuperacion de la informacion de la marca de agua en la
Figura 2-12 y la Figura 2-13 muestra el test de correlacion para la imagen marcada con
α = 0,08. En el test de correlacion se observa que la marca de agua es robusta al ataque de
recorte.
2.2.4. Impresion y Escaner
El proceso de impresion y escaneado es comunmente usado para la reproduccion y distribu-
cion de informacion digital. Esto es popular para transformar imagenes de formato impreso
2.2 Robustez del metodo SVD 29
Figura 2-10.: Test de correlacion para marca de agua con SVD y recorte. Se observa que
la marca de agua es robusta a esta modificacion puesto que el mayor valor de correlcion
esta determinado entre la imagen original y la marca recuperada despues del ataque, lo
anterior se explica por el pico que sobresale en la grafica.
Figura 2-11.: Escala por un factor de 2.
en formato digital, el escaneado de una imagen puede ser semejante a la original, aunque ha
sido distorsionada durante el proceso. Para algunas aplicaciones de seguridad de las image-
nes, como por ejemplo para la proteccion de derechos de autor, los usuarios pueden detectar
la marca inmersa incluso si esta es impresa y escaneada [18]. Algunas propiedades del pro-
ceso impresion y escaneado son: La distorsion, ocurre sobre los valores de los pixeles y la
frontera geometrica de la imagen escaneada. La distorsion de los valores de los pixeles es
causada por: la luminancia, contraste, correccion de la gama, variaciones en la crominancia
y el borrado de pixeles adyacentes. Hay efectos tıpicos del proceso de impresion y escaner
que son perceptibles al ojo humano y que afectan la calidad de la imagen reescaneada [18].
La distorsion de las fronteras geometricas en este proceso es causado por rotacion, escalado
y recorte, estos introducen grandes cambios en la imagen y tambien en los coeficientes de
su transformada, si la marca se ha realizado en dominio de frecuencias. El escaner copia la
imagen con una resolucion alta para obtener una imagen escaneada, el tamano de esta es
normalmente diferente al de la original, porque la resolucion en el escaner y la impresora
puede ser diferente [18].
Para los procedimientos experimentales en este trabajo se uso una impresora monocromatica
30 2 Descomposicion de valores singulares y marcas de agua Digitales
PSNR:-11.4854
MSE:198.1881
PSNR:-12.5239
MSE:319.7240
Figura 2-12.: Marcas recuperadas de amplificacion con valor α.
Figura 2-13.: Test de correlacion para marca de agua con SVD y escalado, Se observa que
la marca de agua tambien es robusta para este tipo de ataque.
Laser SAMSUNG scx − 4100 con scanner. En la figura 2-14 se muestran los resultados
del test de correlacion para la imagen marcada impresa y escaneada. En la figura del test, se
observa en el i-esimo pico de correlacion mas sobresaliente de todas las muestras de imagenes,
que la imagen marcada aun conserva la marca de agua, que coincide con la i-esima muestra
registrada aquı.
2.2 Robustez del metodo SVD 31
Figura 2-14.: Test de correlacion para impresion y escaneado. En esta figura se observa
que la marca de agua es robusta a impresion y scanner puesto que el pico mas alto de la
grafica indica que la marca de agua permanece en la imagen marcada despues de impresa y
escaneada la imagen marcada.
3. Transformada wavelet y transformada
discreta del coseno
En este capitulo se explican los procedimientos del marcado de imagenes, mediante la mo-
dificacion de los coeficientes de la Transformada discreta del coseno y la modificacion de los
coeficientes de la transformada wavelet.
3.1. Transformada wavelet
Las Wavelets, son funciones que satisfacen ciertos requerimientos matematicos y son usa-
das para representar otros datos o funciones.La idea de aproximacion vıa superposicion de
funciones ha existido desde el siglo XIX cuando Joseph Fourier descubrio que las funciones
seno y coseno pueden superponerse, para representar otras funciones. Alfred Haar introdujo
en 1909 el concepto de wavelet, para las que una de sus propiedades principales es su soporte
compacto. Cabe anotar que la wavelet introducida originalmente por Haar es discontinua lo
cual limita enormemente su aplicacion, por lo que la investigacion en wavelets desarollada
entre los anos 1930 y 1980 se dirigio a generar wavelets sin este tipo de obstaculos, ver ecua-
cion (1-20) [3, 25].
El analisis wavelet inicia con el trabajo de A. Grossman y J. Morlet en el comienzo de los
ochenta. J. Morlet diseno un metodo para analizar senales transistorias y sismicas, basadas
en una analogia de la transformada de Fourier (Analisis de Gabor). La principal idea en
este analisis es convertir la informacion de una senal en numeros con coeficientes que pueden
ser: manipulados, almacenados, analizados y trasmitidos o usados para reconstruir una senal
original [3].
En 1988 Ingrid Daubechies publico un conjunto de wavelets ortonormales que se convirtieron
en una base imporante para las aplicaciones wavelets. Las wavelet se adaptan para diferentes
componentes de una senal, usando ventanas pequenas para ver detalles pequenos o compo-
nentes de alta frecuencia y ventanas grandes para ver detalles grandes con resoluciones bajas.
A este procedimiento se le llamo analisis multirresolucion [3, 12].
Una transformada Wavelet, es una transformacion lineal que generaliza las propiedades de
3.1 Transformada wavelet 33
la Transformada de Haar [25]. Una Wavelet en el sentido de la tranformada wavelet dis-
creta(DWT), es una funcion ortogonal que puede ser aplicada a un grupo finito de datos.La
transformada Wavelet, usa las wavelets, como base y es una herramienta que corta datos o
funciones en diferentes componentes de frecuencia, para luego estudiarlas con una resolucion,
asociada a su escala.
La representacion discreta de la transformada wavelet, DWT se usa en el procesamiento
digital de imagenes y se define como:
F (i) =∑∀j∑∀k F (j, k)2
j2φ(2−ji− k).
Donde i, j y k son enteros. La transformada wavelet de Haar es una transformacion lineal
que se basa en la funcion escalante:
g(x) =
{1 0 ≤ x < 1
0 otro caso
de las traslaciones y dilataciones diadicas de la funcion Haar:
h(x) =
1 0 ≤ x < 1
2
−1 12≤ x < 1
0 otro caso
3.1.1. Interpretacion matricial de la transformada de Haar
Si n = 2k, k ∈ Z+ es una senal a valor real unidimensional, entonces se le puede asociar a
A el vector columna (a0, a1, ..., an−1)t en donde ai = A(i), i ∈ Zn. Para poder construir una
base ortonormal Ui en el espacio RZn , se considera la identidad:
hpq(x) = h(2px− q), p ∈ N, 0 ≤ 2p. p y q fijos.
La funcion hpq(x) es una traslacion por q de la funcion h(2px), la cual es una dilatacion de la
funcion wavelet de Haar, h(x). De hecho, hpq(x) esta soportada (no se anula) en un intervalo
de longitud 2−p.
La familia infinita de funciones hpq(x)|p ∈ N, 0 ≤ q < 2p junto con la funcion escalante g(x)
constituyen una base ortogonal conocida como base de Haar. En el espacio de funciones
L2[0, 1] de funciones integrables en el intervalo unitario, la cual se puede extender a una base
en el espacio L2(R).
34 3 Transformada wavelet y transformada discreta del coseno
Para tener una version discreta de la base de Haar, se debe proceder de la siguiente manera:
Teniendo en cuenta que todo numero i se puede en la forma i = 2p + q en donde p ∈ N,
0 ≤ 2p, usando este hecho se define la siguiente base:
U0 = 1√n
para todo j ∈ ZnUi(j) =
√2p
nhpq(
jn) = 2
p−k2 hpq(2
−kj) para todo j ∈ Zn.
En este caso i = 2p + q, i = 1, 2, ..., n− 1. El factor 2p−k2 normaliza la norma euclideana del
vector Ui, por lo tanto ‖Ui‖2 = 1 para todo i ∈ Zn.
El vector U0 es una version discreta de la normalizacion de la funcion g(x). Ası como los
vectores Ui son una version discreta normalizada de las funciones hpq(x), los cuales tambien
son ortonormales. (Ui •Uj). Luego B = {Ui|i ∈ Zn} es una base ortonormal del espacio RZn.
Una matriz Hn con n = 2k, k > 0, cuya ı-esima fila es el vector Ui ∈ Bn se llama una matriz
de Haar. Observese que para cada n, se cumple HnHtn, en donde In es la identidad n × n,
con la que H tn = H−1n .
Notando η = 1√2
el factor de normalizacion, adquiere la forma:
2p−k2 = 2−
p−k2 = ηk−p.
Por ejemplo, las siguientes son matrices de Haar para n = 2 y 4.
H2 =
η η
η −η
, H4 =
η2 η2 η2 η2
η2 η2 −η2 −η2
η −η 0 0
0 0 η −η
.
La senal A se puede escribir como una combinacion lineal de los vectores Ui.
A =n∑i=0
CiUi. (3-1)
Donde Ci son coeficientes desconocidos que deben ser determinados. En este caso la ecuacion
(3-1) toma la siguiente forma:
A = [U0, U1, ..., Un−1]C = H tnC (3-2)
de donde el vector C de coeficientes se puede obtener realizando el siguiente calculo:
C = HnA.
3.1 Transformada wavelet 35
Esta ecuacion define la transformada de Haar para senales unidimensionales de longitun
η = 2k.
Una imagen puede ser construida del vector C de coeficientes de Haar usando la ecuacion
(3-2), para la cual es necesario definir la transformada inversa de Haar.
La transformada inversa de Haar para imagenes en dos dimensiones con m = 2k, n = 2j y
A ∈ RZm × RZn es una matriz m× n de coeficientes C = [Cij], dada por:
C = Hm[aij]Htn. (3-3)
donde aij = A(i, j), para todo (i, j) ∈ Zm × Zn. La ecuacion (3-3) define la transformada
de Haar de una imagen m × n. La imagen se puede recuperar al realizar la transformada
inversa. Es decir:
A = H tm[Cij]Hn. (3-4)
Si se consideran las matrices:
K2 =
η η
η −η
, K4 =
η2 η2 0 0
0 0 −η2 −η2
η −η 0 0
0 0 η −η
.
Entonces las matrices de Haar H2 y H4 se pueden factorizar de la siguiente forma:
H2 = K2, H4 =
K2 02
02 I2
K4.
De lo anterior se puede deducir que, solo se requieren un numero par de sumas o diferencias
con una multiplicacion por η para obtener una transformacion de Haar.
La transformada bidimensional wavelet considera a cada fila y cada columna como una senal
unidimensional, y se aplican filtros pasa altas H y pasa bajas L a todas las filas y poste-
riormente a cada una de las columnas, generando cuatro nuevas submatrices denominadas
LL,LH,HL y HH, (ver Figuras 3-1, 3-2) donde las dos primeras corresponden a los deta-
lles horizontales de la imagen original y la tercera a los detalles verticales y la ultima a los
detalles diagonales.
Por ejemplo para una matriz A, 4× 4 el producto H4AHt4 esta determinado de la siguiente
manera:
36 3 Transformada wavelet y transformada discreta del coseno
Figura 3-1.: Bandas wavelet
H4AHt4 =√
2
12
12
0 0
0 0 12
12
12−1
20 0
0 0 12−1
2
a11 a12 a13 a14
a21 a22 a23 a24
a31 a32 a33 a34
a41 a42 a43 a44
√
2
12
0 12
0
12
0 −12
0
0 12
0 12
0 12
0 −12
.
Despues de realizar estos calculos y agrupando los elementos en 4 bloques 2× 2, se tiene la
representacion de la figura 3-1.
W4AWt4 = 2
LL | LH
− − −
HL | HH
.
Donde:
LL = 14
a11 + a12 + a21 + a22 a13 + a14 + a23 + a24
a31 + a32 + a41 + a42 a33 + a34 + a43 + a44
LH = 1
4
(a11 + a21)− (a12 + a22) (a13 + a23)− (a14 + a24)
(a31 + a41)− (a32 + a42) (a33 + a43)− (a34 + a44)
HL = 1
4
(a11 − a21) + (a12 − a22) (a13 − a23) + (a14 − a24)
(a31 − a41) + (a32 − a42) (a33 − a43) + (a34 − a44)
HH = 1
4
(a11 − a21)− (a12 − a22) (a13 − a23)− (a14 − a24)
(a31 − a41)− (a32 − a42) (a33 − a43)− (a34 − a44)
En la figura 3-2 se muestra la descomposicion de la imagen de Lenna 256× 256 mediante la
transformada Haar .
Una de las muchas ventajas de la transformada wavelet es que se crea con mayor precision
en algunos aspectos segun el sistema visual humano, en comparacion con la transformada
discreta del coseno. Esto permite utilizar alta cantidad de informacion de las marcas de agua
3.1 Transformada wavelet 37
Figura 3-2.: Descomposicion de una imagen 256× 256 en bloques dwt con la transformada
Haar
y encriptarla en las regiones que el sistema visual humano asume como menos sensibles, tales
como, la alta resolucion de las bandas {LH,HL,HH}. La inclusion de las marcas de agua
en estas regiones permiten aumentar su robustez de la marca de agua, con poco o ningun
impacto adicional sobre la calidad de la imagen [17].
Un procedimiento para marcar images digitales usando la transformada wavelet:
1. Descomponer las imagenes original y marca en dominio de frecuencia wavelet
2. Sumergir la marca de agua en la imagen original, esto se hace sobre los coeficientes
que guardan mayor informacion sobre la imagen, como por ejemplo el bloque LL. En
este trabajo se realizo mediante un procedimiento de tipo suma, Im = I + αM donde
I corresponde a los datos originales y M a los datos de la marca.
3. Usar la inversa de la transformada wavelet para recontruir la imagen marcada.
En la figura 3-3 se muestra un ejemplo de una imagen marcada en el dominio de la trans-
formada wavelet.
Pasos para recuperar Informacion de la marca de agua:
1. Calcular los coeficientes de la transformada dicreta wavelet a la imagen marcada y a
la imagen original.
2. Usar el procedimiento inverso al que se uso para sumergir la marca, es decir, sabiendo
que Im = I + αM , entonces la marca recuperada se determina por: Mrec = Im−Iα
,
α = 0,08
38 3 Transformada wavelet y transformada discreta del coseno
Figura 3-3.: Imagen original a la izquierda e imagen marcada en dominio wavelet a derecha
3. Aplicar la transformada inversa para mostrar la marca recuperada.
4. Usar un test de correlacion para detectar la marca.
Las Figuras 3-4, 3-5, 3-6, 3-7 muestran los resultados de las marcas recuperadas despues de
que la imagen fue sometida a las modificaciones de rotacion, recorte, amplificacion, impresion
y escaner, cada una acompanada de su test de correlacion. En los diferentes test de correlacion
se observa que la marca de agua es robusta a las cuatro modificaciones.
Figura 3-4.: Marca recuperada y test de correlacion para la marca recuperada de una imagen
rotada.
3.2 Transformada discreta del coseno y construccion de marcas de agua digitales 39
Figura 3-5.: Marca recuperada y test de correlacion para la marca recuperada de una imagen
cortada
Figura 3-6.: Marca recuperada y test de correlacion para la marca recuperada de una imagen
sometida a amplificacion
3.2. Transformada discreta del coseno y construccion de
marcas de agua digitales
La transformada discreta del coseno es muy comun en aplicaciones sobre procesamiento de
imagenes digitales como la compresion y construccion de marcas de agua digitales, la princi-
pal ventaja, por la cual, se usa en marcas de agua digitales es la propiedad de compactacion
de energıa, esta propiedad permite dividir la imagen en distintas bandas de frecuencia lo-
grandose sumergir la marca en el area que se desee de la imagen [23]. Ademas, tiene la
capacidad de producir coeficientes no correlacionados, que garantizan trabajar con los datos
de la imagen de manera independiente. Esta transformada es real debido a que los vectores
base se componen de funciones coseno, permitiendo leer la imagen como una senal en do-
minio de frecuencias y mediante una combinacion lineal, insertando la marca de agua en la
imagen original y luego haciendo uso de la inversa de la transformada, se recupera la imagen
40 3 Transformada wavelet y transformada discreta del coseno
Figura 3-7.: Marca recuperada y test de correlacion para la misma despues de que la imagen
marcada fue impresa y escaneada
marcada.
La transformada discreta del coseno en imagenes consiste en expresar a una imagen como
una suma de pesos de funciones coseno. Los pesos en la suma estan dados por la transfor-
mada del coseno. Los coeficientes de la transformada son concentrados en la parte superior
izquierda de la matriz de los coeficientes, en el dominio de frecuencias, las frecuencias bajas
tienen ventajas sobre las frecuencias altas, y es que los elementos de las frecuencias bajas
son dominantes respecto a los demas coeficientes [23].
3.2.1. Un procedimiento para marcar la imagen
1. Se seleccionan las matrices cuadradas n× n, I y M de la imagen original y la imagen
marca respectivamente, las dos en escala de grises.
2. Se divide a cada imagen en cuadrantes de 8 × 8 y se calcula la trasformada discreta
del coseno de cada cuadrante.
3. Seleccionar en que partes se pueden marcar las imagenes, construyendo una funcion
que seleccione a los coeficientes que se desean modificar.
4. De esta manera se obtienen las matrices de coeficientes C1 y C2 respectivamente.
5. Mediante una combinacion lineal se construye la imagen marcada Imn×n donde:
Im = C1 + αC2,
3.2 Transformada discreta del coseno y construccion de marcas de agua digitales 41
Del parametro de perturbacion de los coeficientes α , depende la calidad de la imagen mar-
cada y la nitidez de la marca recuperada. Por ultimo, aplicando la trasformada inversa del
coseno a cada bloque se obtiene la imagen marcada.
A continuacion, en la Figura 3-8 se muestra un ejemplo de imagenes marcadas median-
te este procedimiento. La imagen de la izquierda es la imagen original y la de la derecha
corresponde a la marcada. Se obtuvo MSE = 0,0010 y PSNR = 14,9412 de comparacion
entre la imagen original y la marcada.
Figura 3-8.: Imagen Original e Imagen Marcada.
3.2.2. Pasos para recuperar la marca
1. Seleccionar Im la imagen marcada, I la imagen original y M la marca, las tres matrices
de tamano n× n y dividir en bloques de 8× 8 pixeles.
2. Calcular la trasformada discreta del coseno a cada bloque, y obtener las matrices de
coeficientes DCT, C3, C1 y C2 respectivamente.
3. Recordar que: C3 = C1 + αC2, y por tanto se puede encontrar Crec.
4. Recuperar la marca mediante: Crec = C3−C1
α,
5. Aplicar la inversa de la transformada DCT bloque por bloque a Crec y mostrar la
Marca recuperada.
6. Aplicar el test de correlacion.
El procedimiento anterior es evidenciado por los siguientes ejemplos, ver programa en Anexo
B. En la Figura 3-9 de izquierda a derecha la marca usada para el ejemplo anterior y la
marca recuperada mediante este procedimiento. Se percibe que la marca recuperada es muy
parecida a la original.
42 3 Transformada wavelet y transformada discreta del coseno
Figura 3-9.: En la izquierda la marca original y a derecha la marca recuperada.
3.3. Robustez de DCT
En el capıtulo inicial se explico la importancia de que una marca de agua digital sea robusta
a diferentes ataques debido a la manipulacion en los medios digitales. Ahora, se representa
la robustez de la marca segun la posibilidad de recuperar informacion de ella, despues de que
la imagen marcada ha sido modificada por rotacion de pixeles, recorte, amplificacion en un
factor 2 de impresion y escaneado. Para α = 0,08 se muestran en la Figura 3-10; se muestra
la marca recuperada despues rotar, cortar y escalar a la imagen marcada. Los respectivos
tests de correlacion incluyendo el caso para escaner se muestran en las Figuras 3-11 y 3-12.
En los cuatro casos se observa que la marca de agua es robusta a dichos ataques puesto que
permanece en la imagen marcada aun despues de que esta fue modificada.
PSNR:-4.2264
MSE:7.0028
PSNR:-21.2818
MSE: 1.8045e+004
PSNR:-21.2887
MSE:1.8102e+004
Figura 3-10.: Marcas recuperadas-α = 0,08.
3.4 Construccion de marcas de agua en zig-zag en el dominio DCT 43
Figura 3-11.: Tests de correlacion para Rotacion y Recorte respectivamente. Se observa que
la marca es robusta a estos ataques
Figura 3-12.: Tests de correlacion para Escala e Impresion y Escaner que indican la robustez
de la marca
3.4. Construccion de marcas de agua en zig-zag en el
dominio DCT
El metodo insercivo de marcas de agua en zig-zag, tambien se ejecuta modificando algunos
coeficientes de la transformada discreta del coseno de la imagen original para poder sumergir
la marca de agua en ella. La tecnica de insercion que generalmente se usa en este metodo es
de tipo multiplicativo, este tipo de tecnicas son muy utilizadas en dominio transformado o
de frecuencias, debido a que, proporcionan alta imperceptibilidad cuando se inserta la marca
de agua [1]. La insercion multiplicativa esta dada por la siguiente formula:
Vi = vi(1 + αmi).
Donde vi es el i-esimo componente de la senal original, mi es el i-esimo componente de la
marca de agua, α es un numero real considerado como parametro que determina la fuerza
de insercion de la marca, y Vi es el i-esimo componente de la senal marcada [1, 11].
44 3 Transformada wavelet y transformada discreta del coseno
La marca M = m1,m2, ...mk consiste de un conjunto de numeros reales seudo-aleatorios1
con distribucion normal η(0, 1). El arreglo de los coeficientes de la transformada discreta
del coseno de la imagen a marcar se describe como V = v0, v1, ..., vN , con k ≤ N [11]. A
continuacion, se explica como construir la marca de agua:
Calculando la transformada discreta del coseno a la imagen original In×n se obtiene la matriz
Vn×n de los coeficientes DCT, relizando un recorrido de zig-zag sobre ella, como se muestra
en la Figura 3-13, se construye el vector un vector,
Figura 3-13.: Las flechas de la izquierda indican el recorrido en Zig-Zag que se debe seguir
para escribir en un vector los coeficientes DCT para un bloque 8× 8 de una imagen.
V1×n2 = v0, v1, ...vn2−1
o
V = v0, v1, ..., vN ,
donde V0 es el coeficente DC, y es uno de los coeficientes que no se modifican para la insercion
de la marca. Luego, se selecciona un subconjunto de los coeficientes de este vector,
V = V1, V2, ..., Vk.
El vector que corresponda a la marca, debe tener las mismas dimensiones que V y puede ser
un conjunto de numeros aletorios generados con distribucion normal,
M = m1,m2, ...mk,
luego, usando la formula de insercion de la marca, se modifica este vector, de tal manera que
el nuevo vector V1×n2 es:
V1×n2 = v0, V1, V2, ..., Vk, ...vn2−1.
Finalmente, se reconstruye la matriz V ′n×n y se aplica la transformada inversa de la transfor-
mada discreta del coseno para mostrar la imagen marcada, I ′n×n.
En la Figura 3-14 se muestra la imagen de Lenna marcada mediante el procedimiento
anterior con α = 0,08, la marca es la imagen del mandril.
1Los numeros reales pseudoaleatorios con distribucion normal son un conjunto de numeros reales con
dirtibucion normal generados mediante algun software como por ejemplo en matlab.
3.4 Construccion de marcas de agua en zig-zag en el dominio DCT 45
Figura 3-14.: Imagen Original e Imagen marcada con DCT en zig-zag
3.4.1. Deteccion de la marca de agua
Para la deteccion de la marca de agua se puede realizar de dos formas, teniendo en cuenta
el tipo de deteccion que se realice, si es publica o privada. En el caso que sea privada, se usa
la inversa de la funcion que se utilizo anteriormente, para la construccion de la marca. En el
procedimiento de marcado se explico que la formula es:
Vi = vi(1 + αmi)
Pero, despues de que, la imagen marcada I ′n×n sufra alguna modificacion, se modifican tam-
bien los coeficientes DCT, ası que, volviendo a calcularlos y eligiendo el vector de los que
fueron marcados se tiene V ′, donde
V ′i = vi(1 + αm′i)
m′i corresponde al elemento i-esimo de la marca recuperada, por tanto, despejando esta
variable se obtiene:
m′i =V ′i−viαvi
por ende, M ′ = m′1,m′2, ...m
′i...,m
′k es la marca recuperada.
Por ejemplo, para la imagen marcada y rotada de la Figura 3-15 se tiene el test de correla-
cion a la derecha, lo cual indica que hay una relacion entre la senal reconstruida y la marca
original.
Aplicando el test de correlacion para medir la robustez a este metodo de marcado, cuando
la imagen ha sido sometida a, escalado y recorte se tienen los graficos de las Figuras 3-16 y
3-17.
46 3 Transformada wavelet y transformada discreta del coseno
Figura 3-15.: Imagen marcada con DCT en zig-zag y rotada 30 grados; test de correlacion
Figura 3-16.: Test de correlacion para marca de agua con DCT en zig-zag y despues de
recorte
Por otra parte, si el metodo de extraccion es publica, no se necesita de la imagen original.
Tampoco, se axtrae la marca de agua, interesa la autenticidad de la marca o simplemente si
la imagen esta o no marcada y para esto se puede aplicar el siguiente test de autocorrelacion
[11]:
R = V ′·MN
Para la marca de la Figura 3-15 se tiene Re = −11,3880, es importante recordar que estos
datos, corr y Re varian constantemente, debido a que la marca, esta constituida por datos
aleatorios. En este trabajo no se aplica este test de autocorrelacion para los diferentes meto-
dos de creacion de marcas de agua, puesto que las marcas no son generadas con distribucion
normal y ademas las marcas creadas son de tipo privado.
3.4 Construccion de marcas de agua en zig-zag en el dominio DCT 47
Figura 3-17.: Test de correlacion para marca de agua con DCT en zig-zag y sometida a
escalado
4. Marcas de Agua usando DCT y SVD
En este capıtulo se estudia la calidad y robustez de algunas imagenes marcadas, proceso que
realiza sobre el dominio de frecuencias de la trasformada discreta del coseno, modificando
los valores singulares para cada una de las imagenes, original I y marca M .
Es importante analizar cual de los metodos es robusto y ayuda en el momento de recla-
mar alguna propiedad o hacer valida la autenticidad. Hasta el momento se pudo observar
experimentalmente que los dos procedimientos usando SVD y DCT son robustos mediante
el test de correlacion y el coeficiente de correlacion, a las modificaciones propuestas, pero
para tres de ellas no fue posible recuperar la marca, a pesar de que la imagen modificada
conserva informacion de esta. Aplicando el metodo que combina SVD-DCT para el marcado
de imagenes digitales y reconstruyendo la marca digital se puede comparar con los resultados
de los capıtulos anteriores.
4.1. Procedimiento para el marcado de imagenes
De la misma manera que los metodos anteriores, se seleccionan la matrices I y M , matrices
cuadradas (por conveniencia), que representan la imagen a marcar y la marca respectiva-
mente, se aplica la transformada discreta del coseno en bloques de 8× 8 sobre cada una de
ellas obteniendo las matrices C1 y C2, luego, se contruye la marca sobre este dominio, es
decir, con C1 y C2, teniendo presente el teorema de perturbacion de valores singulares de
una matriz se tiene:
C3 = C1 + αC2,
y descomponiendo en valores singulares a C3 resulta
C3 = U∑V t,
C1 = U1
∑1 V
t1 ,
por tanto la imagen marcada sera
Imarc = U1
∑V t1 ,
luego, se aplica la inversa de la transformada discreta del coseno a bloques de 8 × 8 para
poder recuperar la imagen marcada y mostrarla (Ver programa en Anexo D). En la Figura
4-1 se observa a la izquierda la imagen original y a la derecha la imagen marcada, mediante
este procedimiento con un nivel de perturbacion o factor de cambio α = 0,05.
4.2 Procedimiento para recuperar la marca 49
Figura 4-1.: Imagen Original e Imagen Marcada.
4.2. Procedimiento para recuperar la marca
Tomando I e Imarc, la imagen original y la marcada, se aplica la transformada discreta del
coseno a cada una, obteniendose, C1 y C3 respectivamente, luego descomponiendo en valores
singulares a las dos ultimas matrices se tiene que:
C1 = U∑V t
y
C3 = F∑
mGt,
por tanto la marca recuperada es:
Mrec =(U
∑m V t)−C1
α.
Por ultimo, se aplica la transformada inversa del coseno bloque por bloque para ver la imagen.
(Ver anexo D). En la Figura 4-2 se muestran la marca original que se uso para marcar la
imagen de la Figura 4-1 y a la derecha la marca recuperada mediante este procedimiento.
Figura 4-2.: A la iquierda se muestra la marca original y a la derecha la marca recuperada
medinate este metodo de marcado.
4.3. Robustez del metodo
En esta seccion se realizan los tests de correlacion para la marca en cada uno de los ataques
a los que es expuesta la imagen marcada (rotacion, recorte, escala, impresion y escaner). La
50 4 Marcas de Agua usando DCT y SVD
imagen original de Lenna es marcada con la imagen del mandril con un factor de k = 0,08
tal como se ha trabajado para los otros metodos en los capıtulos anteriores.
La Figura 4-3 contiene las marcas recuperadas de la imagen marcada y sometida a los
ataques de rotacion (a), recorte (b) y escala (c). Luego en las Figuras 4-4 y 4-5 se muestran
sus respectivos tests de correlacion que indican que la marca de agua es robusta a estos
ataques.
(a) (b) (c)
Figura 4-3.: Marcas recuperadas con α = 0,08.
Figura 4-4.: Tests de rotacion y recorte indicando que la marca es robusta.
En la Figura 4-6 se muestra la imagen de Lenna a la izquierda marcada y a la derecha la
marca recuperada luego de escanear la imagen marcada. En dicha figura se observa que la
imagen, aun despues de imprimirla y escanearla, conserva la marca de agua segun resultados
del test de correlacion. En el test se puede observar que el procedimiento de marcado es
robusto a los ataques estudiados en este trabajo, debido a que conserva la marca despues de
sufrir tales modificaciones.
4.4. Resultados experimentales
Para los resultados experimentales se seleccionaron dos imagenes de la base de datos de
Matlab, una de las imagenes es la de Lenna (I) que se uso como imagen original y la otra la
4.4 Resultados experimentales 51
Figura 4-5.: Test de correlacion para escalado indicando que la marca es robusta
Figura 4-6.: Imagen impresa y escaneada, marca recuperada y test de correlacion.
del mandril (M) que se selecciono para la marca, imagenes que por sus caracterısticas son
usadas comunmente en trabajos de procesamiento de imagenes digitales, en este trabajo,
ambas imagenes se seleccionaron con tamano de 256× 256 y en escala de grises. Se realizo el
procedimiento de marcado seguiendo los pasos explicados en los capıtulos 2, 3, 4 y 5 para
los metodos de SVD, DCT, DWT y SVD-DCT, la diferencia entre la imagen marcada y la
original varia dependiendo el factor de cambio α y de los coeficientes modificados como por
ejemplo si se selecionan los coeficientes mayores de la transformada discreta del coseno, es
decir, la calidad de la imagen se degrada de acuerdo con el valor que toma la constante α que
se aplica en el procediminto de marcado mediante una combinacion lineal para sumergir la
marca en la imagen original. La imagen marcada fue sometida a modificaciones de rotacion de
30 grados, recorte, escalado de factor 2 y escaner e impresion, En la Figura 4-7 se muestra
la imagen marcada con el metodo propuesto con α = 0,8 y en la Figura 4-8 las marcas
extraidas despues de los diferentes ataques o modificaciones geometricas.
Para realizar la comparacion entre los metodos se tienen en cuenta cuatro elementos impor-
tantes que son: MSE, PSNR, Test de correlacion y Coeficiente de correlacion, los dos ultimos
metodos son recomendados por [5,11] como modelos de deteccion de marca de agua por co-
rrelacion, el error cuadratico medio y el pico senal a ruido son metodos de comparacion entre
las imagenes originales y las imagenes modificadas los cuales han sido usados por diferentes
autores. Estos datos no son tan significativos debido a que se pueden presentar valores muy
52 4 Marcas de Agua usando DCT y SVD
(a) (b) (c)
(d) (e)
Figura 4-7.: Imagenes con diferentes ataques, (a) imagen marcada,(b) imagen rotada, (c)
imagen recortada, (d) imagen amplificada, (e) imagen escaneada
(a) (b) (c) (d)
Figura 4-8.: Marcas recuperadas con el algoritmo SVD-DCT
grandes para MSE y sin embargo el metodo es robusto por correlacion ademas varıan de
acuerdo con los datos de cada imagen y con el tamano de los vectores. En la Figura 4-9 se
muestran los resultados obtenidos de extraer la marca y analizar su robustez para cada uno
de los metodos.
En general se puede afirmar lo siguiente:
Los cuatro metodos de implementacion de marcas de agua digitales son robustos a los
ataques propuestos para el estudio, puesto que el valor mas significativo de correlacion
entre el conjunto de marcas elegidas para la prueba, corresponde a aquel que se obtiene
entre la informacion recuperada de la marca y la marca original. Lo anterior se observa
en cada uno de los test de correlacion normalizada que se encuentran en el contenido
4.4 Resultados experimentales 53
(a) (b)
(c) (d)
Figura 4-9.: Resultados generales de la robustez de la marca de agua para los cuatro metodos
despues de que la imagen marcada fue sometida a rotacion, recorte, escalado e impresion y
escaner.
del texto para cada uno de los metodos de marcado.
En la Figura 4-9 se observa en el test de correlacion normalizada y el coeficiente de
correlacion que el metodo que proporciona un mejor nivel de robustez para los ataques
de recorte, escala y escaner es el metodo SVD. El metodo con nivel mas alto de robustez
para el ataque de rotacion a 30 grados es DWT y el metodo de nivel menor es el metodo
SVD-DCT.
El metodo que presenta el menor error cuadratico medio entre la marca y la marca
recuperada para los cuatro ataques es el metodo DWT.
Los anteriores datos experimentales se obtuvieron mediante la implementacion de progra-
mas para cada uno de los metodos estudiados en Matlab (ver Anexos), en un computador
TOSHIBA, con procesador AMD Turion II. Dual-Core Mobile M500 2.20 GHz y
RAM de 4.00 GB. Las imagenes que aparecen a lo largo del texto fueron seleccionadas de la
base de Matlab (Lenna, Mandril, Camarografo y Pimentones), https://www.google.com.co
(manzanas) y capuradas con una camara samsung WB500 (Frailejon y Automovil).
A continuacion se registran otros resultados experimentales de distintas marcas de agua.
54 4 Marcas de Agua usando DCT y SVD
Cada tabla contiene el MSE, PSNR y coeficiente de correlacion de la marca de agua con
α = 0,08.
4.4 Resultados experimentales 55
Resultados para la imagen “Lenna”
Ataques SVD DCT
Rotacion 1.3526e+004, -20.6558,7.7984e+005 7.2555,-4.3033,-908.6137
Recorte 5.3622e+003,-18.6467,3.4308e+006 49.4726,-8.4718,1.0391e+004
Amplificacion 91.2545,-9.8013, 3.7363e+006 2.4028e-004,18.0964,1.4851e+004
Impresion-Escaner 1.6136e+004 , -21.0390, 6.8561e+006 62.0471, -8.9636, 1.5320e+004
Ataques DWT SVD-DCT
Rotacion 2.5500 -2.0327, 2.3028e+006 1.7586e+004, -21.2258,-3.8727e+005
Recorte 2.5500 , -2.0327, 1.3796e+006 1.7332e+004, -21.1942, 2.7115e+006
Amplificacion 2.5500, -2.0327, 3.7833e+006 1.7389e+004, -21.2014, 3.1429e+006
Impresion-Escaner 2.5500, -2.0327, 4.1604e+006 1.7101e+004, -21.1652, 3.7621e+006
Resultados para la imagen “Pimentones”
56 4 Marcas de Agua usando DCT y SVD
Ataques SVD DCT
Rotacion 1.1238e+004,-20.2535, 9.1344e+005 7.4312,-4.3553,-1.3168e+003
Recorte 6.1796e+003,-18.9548,3.4992e+006 49.5726, -8.4762,1.0294e+004
Amplificacion 70.3044,-9.2349,3.2865e+006 2.3681e-004,18.1280,1.2965e+004
Impresion-Escaner 1.2911e+004 , -20.5548, 2.7230e+006 67.6243, -9.1505, 1.6008e+004
Ataques DWT SVD-DCT
Rotacion 2.5500,-2.0327, 2.0671e+006 1.1293,-0.2640, -807.7162
Recorte 2.5500, -2.0327, 1.3302e+006 19.3130 , -6.4292, 575.3432
Amplificacion 2.5500 -2.0327, 3.3069e+006 0.0014,14.2175, 1.2926e+004
Impresion-Escaner 2.5500, -2.0327, 5.7996e+006 2.5500, -2.0327, -4.5621e+006
Resultados para la imagen “Camarografo”
Ataques SVD DCT
Rotacion 1.3014e+004, -20.5720, 8.2527e+005 7.3780,-4.3397,-1.1611e+003
Recorte 5.1742e+003,-18.5692,3.1196e+006 48.5587,-8.4313,9.6551e+003
Amplificacion 76.9387,-9.4307,2.9552e+006 2.3970e-004,18.1017,1.1579e+004
Impresion-Escaner 1.8565e+004 ,-21.3435, 6.7181e+006 56.3023,-8.7526, 1.4116e+004
Ataques DWT SVD-DCT
Rotacion 2.5500 ,-2.0327, 1.9851e+006 1.1551,-0.3131,-1.1322e+003
Recorte 2.5500 ,-2.0327, 1.2117e+006 19.1184,-6.4073, 635.9359
Amplificacion 2.5500, -2.0327, 2.9559e+006 0.0014, 14.2568, 1.1515e+004
Impresion-Escaner 2.5500, -2.0327, 2.5043e+006 2.5500, -2.0327,-4.3931e+006
4.4 Resultados experimentales 57
Resultados para la imagen “Frailejon”
Ataques SVD DCT
Rotacion 1.3308e+004, -20.6205, 9.2626e+005 7.5909, -4.4015, -1.5351e+003
Recorte 5.1127e+003,-18.5433,3.7637e+006 49.1375,-8.4571, 1.0614e+004
Amplificacion 94.4562,-9.8762,3.4414e+006 2.4279e-004,18.0738, 1.3669e+004
Impresion-Escaner 1.4634e+004, -20.8268, 5.9160e+006 65.2116,-9.0716, 1.6165e+004
Ataques DWT SVD-DCT
Rotacion 2.5500, -2.0327, 2.2042e+006 1.1592,-0.3208,-1.0610e+003
Recorte 2.5500,-2.0327, 1.3537e+006 19.3026 ,-6.4281, 698.9669
Amplificacion 2.5500, -2.0327, 3.4623e+006 0.0014, 14.2331, 1.3534e+004
Impresion-Escaner 2.5500, -2.0327, 2.9019e+006 2.5500,-2.0327, -1.8335e+004
5. Conclusiones y Trabajo Futuro
5.1. Conclusiones
El metodo SVD brinda mayor robustez a los ataques de rotacion, recorte, amplificacion,
escaner e impresion, comparado con los otros tres metodos estudiados. El metodo SVD-
DCT es mejor en cuanto a su robustez que los m’etodos DCT y DWT para el ataque
de recorte de imagenes marcadas (ver grafica (b) en la figura 4-9).
Los procesos de watermarking hacen evidente la ley de emergencia de la escuela Ges-
talt, la cual permite percibir imagenes como un todo sin importar las partes que la
constituyen. De tal forma que pequenas modificaciones a una imagen dada no producen
cambios en su percepcion.
El metodo SVD presenta los valores mas altos de robustez para los ataques de recorte,
escalado impresion y escaner que los metodos DCT, DWT y SVD-DCT (ver grafica (b)
en la figura 4-9). Pero el metodo que permite recuperar la marca con mınima diferencia
con respecto a la marca original es el DWT.
El ataque de escalamiento a un proceso watermarking del tipo SVD, DCT, DWT,
DVS-DWT, no afecta la marca de agua significativamente por lo que en este caso no
son requeridos procesos digitales adicionales para recuperarla.
5.2. Trabajo Futuro
Existen diferentes formas de evaluar sistemas de marcas de agua digitales en la literatura,
pero hay carencia de un conjunto de normas explıcitas que permitan evaluar y disenar sis-
temas de marcas de agua digitales dependiendo de la aplicacion de las mismas. Por ejemplo
ver [2, 5, 21].
El mensaje inmerso o marca de agua digital modifica en cierto porcentaje α a la imagen
original, serıa interesante para un trabajo futuro poder determinar con certeza, segun la
aplicacion a la que este destinada dicha imagen, cual es el posible valor estimado para α de
tal manera que sea mas precisa la construccion y reconstruccion de la marca de agua.
Un aspecto mas sobre este trabajo corresponde a responder las siguientes preguntas: ¿El
5.2 Trabajo Futuro 59
procedimiento de marcado propuesto sera robusto a las modificaciones de rotacion, recorte,
amplificacion y escaner en el caso de las imagenes a color?, ¿Es posible obtener una mayor
calidad de la marca recuperada despues de ser atacada por distintos metodos?
A. Anexo:Programa para metodo SVD
alfa=0.08;
clave1= imread(’lennagris.jpg’);
clave1=imresize(clave1, [256 256]);
clave2 = imread(’baboon.jpg’);
clave2=imresize(clave2, [256 256]);
C=clave1+alfa*clave2;
C=double(C);
[Uc Sc Vc]=svd(C);
clave1=double(clave1);
[Uc1 Sc1 Vc1]=svd(clave1);
Im=Uc1*Sc*Vc1’; imagen marcada
Im=uint8(round(Im));
imwrite(Im,’imasvd.jpg’);guardar la imagen marcada
figure(1), imshow(’imasvd.jpg’) mostrar la imagen marcada
Recuperacion de la marca
Imr=imread(’ima.jpg’);Lectura de la imagen marcada y modificada
Imr=double(Imr);
[Um Sm Vm]=svd(Imr);
clave11=double(clave1);
clave11=imresize(clave11,[100 100]);
C=imresize(C,[100 100]);
[Uc Sc Vc]=svd(C);
Claverecuperada=((Uc*Sm*Vc’)-clave11)*1/alfa; marca recuperada
Claverecuperada=uint8(round(Claverecuperada));
imwrite(Claverecuperada,’claverecup.jpg’);
Claver=imread(’claverecup.jpg’);
Clav=uint8(round(Claver));
figure(), imshow(’claverecup.jpg’) mostrar la marca recuperada
Calculo MSE, PSNR, Coeficiente de correlacion.
claveoriginal=imresize(clave2,[100 100]);
D=double(claveoriginal)-double(Claver);
61
E=D.*D;
size(E)=[m n];
for i=1:m
C(i,:)=sum(E(i,:));
end
MSE=sum(C(:,1))/(m*n)
PSNR=10*log10(1/sqrt(MSE))
Coeficiente de correlacion
Y=zigzag(claveoriginal);
X=zigzag(Claver);
[m n]=size(X);
X1=mean(X)*ones(1,n);
Xm=X-mean(X);
Cofcorr=sqrt(n)*(dot(X,Y))/sqrt(dot(Xm,Xm))
B. Anexo:Programa para marcar
imagenes usando DCT
alfa=0.08 J = imread(’lennagris.jpg’); lectura de la imagen original
J = im2double(J);
J=imresize(J,[256 256]);
I = imread(’baboon.jpg’); lectura de la marca
I = im2double(I);
I=imresize(I,[256 256]);
R = dctmtx(8);
dct = @(x)R * x * R’;
Cj = blkproc(J,[8 8],dct);
mask = [
1 1 1 1 1 1 1 0
1 1 1 1 1 1 0 0
1 1 1 1 1 0 0 0
1 1 1 1 0 0 0 0
1 1 1 0 0 0 0 0
1 1 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0]
C1 = blkproc(Cj,[8 8],@(x)mask.* x); eleccion de los coeficientes a marcar.
Ci = blkproc(I,[8 8],dct);
C2 = blkproc(Ci,[8 8],@(x)mask.* x);
Imarcada=C1+alfa*C2; imagen marcada
Imarcada=blkproc(Imarcada,[8 8],invdct);aplicar la transformada inversa.
figure, imshow(Imarcada,[]), title (’Imagen Marcada ’)
imwrite(Imarcada,’ImagenmarcadaDCT2.jpg’)
Recuperar la marca
Im=imread(’ImagenmarcadaDCT2.jpg’); lectura de la imagen marcada y modificada.
Im=imresize(b,[256 256]);
Im=im2double(Im);
Im=blkproc(Im,[8 8],dct);
63
Cirec=(Im-C1)*1/alfa; coeficientes recuperados
invdct=@(x)R’*x*R; aplicar inversa de la transformada
marcrecuperada=blkproc(Cirec,[8 8],invdct);
figure, imshow(marcrecuperada,[]);
title (’Marca Recuperada’)
imwrite(marcrecuperada,’Marcarecuperada11dct.jpg’)
Calcular MSE, PSNR y Coeficiente de correlacion
claveoriginal=imresize(I,[100 100]);
marcrecuperada=imresize(marcrecuperada,[100 100]);
D=double(claveoriginal)-double(marcrecuperada);
E=D.*D;
[m n]=size(E);
for i=1:m
C(i,:)=sum(E(i,:));
end
MSE=sum(C(:,1))/(m*n)
PSNR=10*log10(1/sqrt(MSE))
Y=zigzag(claveoriginal);
X=zigzag(marcrecuperada);
[m n]=size(X);
X1=mean(X)*ones(1,n);
Xm=X- mean(X);
Cofcorr=sqrt(n)*(dot(X,Y))/sqrt(dot(Xm,Xm))
C. Anexo:Programa usando DWT
alfa=0.08;
I=imread(’lennagris.jpg’); lectura de la imagen original
I=imresize(I,[256 256]);
I=double(I);
[IA1,IH1,IV1,ID1] = dwt2(I,’haar’); dwt para la imagen original
M=imread(’baboon.jpg’); lectura de la marca
M=imresize(M,[256 256]);
M=double(M);
[MA1,MH1,MV1,MD1] = dwt2(M,’haar’); dwt para la marca
A1=IA1+alpha*MA1;
Imagenmarcadwt = idwt2(A1,IH1,IV1,ID1,’haar’);
imagenmarcadauint8=uint8(Imagenmarcadwt);
imwrite(imagenmarcadauint8,’Imagenmarcadwt,’jpg’);
figure(1),imshow(imagenmarcadauint8,[]), title(’Imagen marcada DWT’)
Recuperacion de la informacion de la marca
I=imread(’lennagris.jpg’); lectura de la imagen original
I=double(I);
[IA1,IH1,IV1,ID1] = dwt2(I,’haar’);dwt para la imagen original
M=imread(’baboon.jpg’);
M=imresize(M,[256 256]);
M=double(M);
[MA1,MH1,MV1,MD1] = dwt2(M,’haar’); dwt para la marca
Im=imread(’Imagenmarcadwt.jpg’); lectura de la imagen marcada y atacada
[mA1,mH1,mV1,mD1] = dwt2(Imat,’haar’);
MA1rec=(mA1-IA1)/alpha; coeficientes recuperados de la marca
marcaredwt = idwt2(MA1rec,MH1,MV1,MD1,’haar’);
marcarecuperadadwt=uint8(marcaredwt );
C=marcarecuperadadwt; marca recuperada
figure(4), imshow(marcarecuperadadwt,[]), title(’Marcada Recuperada DWT’)
Calcular MSE, PSNR, Coeficiente de correlacion
Marca=imread(’baboon.jpg’);
65
claveoriginal=imresize(Marca,[100 100]);
marcrecuperada=imresize(C,[100 100]);
D=double(claveoriginal)-double(marcrecuperada);
E=D.*D;
[m n]=size(E);
for i=1:m
C(i,:)=sum(E(i,:));
end
MSE=sum(C(:,1))/(m*n)
PSNR=10*log10(1/sqrt(MSE))
Y=zigzag(claveoriginal);
X=zigzag(marcrecuperada);
[m n]=size(X);
X1=mean(X)*ones(1,n);
Xm=X- mean(X);
Cofcorr=sqrt(n)*(dot(X,Y))/sqrt(dot(Xm,Xm))
D. Anexo:Programa para metodo
SVD-DCT
alfa=0.08;
I = imread(’lennagris.jpg’); lectura de la imagen original
I=imresize(I,[256 256]);
I =im2double(I);
M= imread(’baboon.jpg’); lectura de la marca
M =imresize(M,[256 256]);
M = im2double(M);
T = dctmtx(8);
dct1 = @(x)T * x * T’;
I1 = blkproc(I,[8 8],dct1); coeficientes dct para la imagen original
M1 = blkproc(M,[8 8],dct1); coeficientes dct para la marca
mask = [
1 1 1 1 1 1 1 0
1 1 1 1 1 1 0 0
1 1 1 1 1 0 0 0
1 1 1 1 0 0 0 0
1 1 1 0 0 0 0 0
1 1 0 0 0 0 0 0
1 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0];
C1 = blkproc(I1,[8 8],@(x)mask.* x); seleccion de los coeficientes a marcar
C2 = blkproc(M1,[8 8],@(x)mask.* x);
invdct1 = @(x)T’ * x * T;
Imr=C1+alfa*C2; coeficientes marcados
[u s v]=svd(Imr); svd para coeficientes marcados
[a b c]=svd(C1);
Imarcada=a*s*c’;
Imarcada = blkproc(Imarcada,[8 8],invdct1); imagen marcada
imwrite(Imarcada,’imagenmarcada12p.jpg’)
figure(1), imshow(Imarcada,[]), title(’Imagen Marcada’);
67
Recuperacion de la marca
b=imread(’imagenmarcadayescaneadadctysvd.jpg’); lectura de im. modificada
b=rgb2gray(b);
b=uint8(round(b));
A=imresize(b,[256 256]);
A=im2double(A);
C3=blkproc(A,[8 8],dct1);
C3=blkproc(C3,[8 8],@(x)mask.* x); dct de la imagen modificada
[e f g]=svd(C3);
C2r=((u*f*v’)-C1)*1/alfa; coeficientes recuperados de la marca
marcarecuperada=blkproc(C2r,[8 8],invdct1); marca recuperada
figure, imshow(marcarecuperada); title(’Marca Recuperada’)
imwrite(marcarecuperada,’marcarecuperada11II.jpg’);
MSE, PSNR, Coeficiente de correlacion.
claveoriginal=imresize(M,[100 100]);
marcarecuperada=imread(’marcarecuperada11II.jpg’);
marcrecuperada=imresize(marcarecuperada,[100 100]);
D=double(claveoriginal)-double(marcrecuperada);
E=D.*D;
[m n]=size(E);
for i=1:m
C(i,:)=sum(E(i,:));
end
MSE=sum(C(:,1))/(m*n)
PSNR=10*log10(1/sqrt(MSE))
Y=zigzag(claveoriginal);
X=zigzag(marcrecuperada);
[m n]=size(X);
X1=mean(X)*ones(1,n);
Xm=X- mean(X);
Cofcorr=sqrt(n)*(dot(X,Y))/sqrt(dot(Xm,Xm))
Bibliografıa
[1] M. Barni, C.I. Podilchuk, F. Bartolini, and E. J. Delp, Watermark embeding: Hidding a Signal Within
a Cover Image, IEEE Communications Magazine 39 (Aug. 2001), no. 8, 102-108.
[2] A. C. Bobik, Handbook of Image and Video Processing, Academic Press-AL BOVIK, 2008.
[3] B. Burke Hubbard and A. K. Peters, The world according to wavelets, Second Edition, Ltd. Wellesley,
MA, 1988.
[4] I. J. Cox, G. Doerr, and T. Furon, Watermarking Is Not Cryptography, Digital Watermarking Lecture
Notes in Computer Science, Springer 4283 (2006), 1-15.
[5] I. J. Cox, M. L. Miller, J. A. Bloom, J. Fridrich, and T. Kalker, Digital Watermarking and Steganography,
Second Edition, Elsevier, 2008.
[6] I. J. Cox, M. L. Miller, J. M. G. Linnartz, and T. Kalker, A review of watermarking principles and prac-
tices, “A Review of Watermarking Principles and Practices”in Digital Signal Processing for Multimedia
Systems, K.K. Parhi and T. Nishitani, New York, Marcel Dekker 16 (1998), no. 4, 587-593.
[7] I. Daubechies, Ten Lectures on Wavelets, SIAM: The Society for Industrial and Applied Mathematic,
1992.
[8] J. Dugelay and C. Rey, A Survey of Watermarking Algorithms for Image Authentication, EURASIP
Journal on Applied Signal Processing 6 (2002), 613-621.
[9] R. Gonzalez and R. Woods, Digital Image Processing using MATLAB, First Edition, Prentice Hall.
New Jersey, 2004.
[10] R. A. Horn and C. R. Johnson, Matrix Analysis, First Edition, Cambride University Press, 1999.
[11] E. Izquierdo, Using Invariant Image Features for Synchronization in Spread Spectrum ImageWatermar-
king, Journal on Applied Signal Processing 4 (2002), 410-417.
[12] A. Jensen and A. la Cour-Harbo, Ripples in mathematics the Discrete Wavelet transform, First Edition,
Springer, 2001.
[13] N.F. Johnson and S. Jajodia, Exploring steganography: Seeing the unseen, Information Technology Con-
ference, IEEE 31 (1998), no. 2, 26-34.
[14] C. Jonathan, D. Patrick, L. Samuel, and P. Robert, Steganography and Digital Wa-
termarking, School of Computer Science, The University of Birmingham, 2004 Website:
http://www.cs.bham.ac.uk/ mdr/teaching/modules03/security/students/SS5/Steganography.pdf.
[15] D. Kahn, The Codebreakers, Macmillan, New York, 1967.
[16] S. Katzenbeisser and A.P. Peticolas, Information Hiding Tecniques for Steganography and digital Wa-
termarking, Artech House (Boston), 2000.
[17] G. Langelaar, I. Setyawan, and R.L. Lagendijk, “Watermarking Digital Image and Video Data ”, IEEE
Signal Processing Magazine 17 ( 2000), no. 5, 20-46.
Bibliografıa 69
[18] C. Y. Ling and S. F. Chang, Distortion Modeling and Invariant Extraction for Digital Image Print-
and-Scan Process, International Symposium on Multimedia Information Processing (ISMIP 99), Taipei,
Taiwan (1999).
[19] C.T. Li and F. M. Yang, One-dimensional Neighborhood Forming Strategy for Fragile Watermarking,
In Journal Electronic Imaging 12 (2003), no. 2, 284-291.
[20] J. C. Paz, Procesamiento digital de imagenes, 2006, web:http://www2.uacj.mx/Publicaciones
/GeneracionImagenes/imagenesCap8.pdf.
[21] C. Podilchuk and E. J. Delp, Digital Watermarking Algorithms and Applications., IEEE Signal Pro-
cessing Magazine 18 ( 2001), no. 4, 33-46.
[22] C. Podilchuk and W. Zeng, Image-adaptive Watermarking Using Visual Models, IEEE Journal on Se-
lected Areas in Communications 16 ( 1998), no. 4, 525-539.
[23] K.R. Rao, Wavelet based image adaptive watermarking scheme, Institution of Engineering and Techno-
logy 36 (1997), no. 4, 312-313.
[24] D. F. Rincon, Algunos metodos de watermarking usando SVD, Tesis de maestrıa, Universidad Nacional,
Bogota, 2006.
[25] G. X. Ritter and J. N. Wilson, Handbook of Computer Vision Algorithms in Image Algebra, Second
Edition, CRC Press, 2000.
[26] Z. H.Spencer, Codes and Secret Writing, W. Morrow, New York, 1948.
[27] A. Sverdlov, S. Dexter, and A. M. Eskicioglu, Rubust DCT-SVD Domain Image Watermarking for
Copyright Protection: Embedding Data in all Frequencies, IEEE Transactions on Image Processing 10
(2001), no. 5, 724-735.