ES2200562T3 - Procedimiento y aparato para detectar una marca de agua para escalas especificas y arbitrariamente desplazadas. - Google Patents

Procedimiento y aparato para detectar una marca de agua para escalas especificas y arbitrariamente desplazadas.

Info

Publication number
ES2200562T3
ES2200562T3 ES99952141T ES99952141T ES2200562T3 ES 2200562 T3 ES2200562 T3 ES 2200562T3 ES 99952141 T ES99952141 T ES 99952141T ES 99952141 T ES99952141 T ES 99952141T ES 2200562 T3 ES2200562 T3 ES 2200562T3
Authority
ES
Spain
Prior art keywords
blocks
read
scale
watermark
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES99952141T
Other languages
English (en)
Inventor
David C. Collier
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Adeia Media LLC
Original Assignee
Macrovision Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Macrovision Corp filed Critical Macrovision Corp
Application granted granted Critical
Publication of ES2200562T3 publication Critical patent/ES2200562T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/467Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0085Time domain based watermarking, e.g. watermarks spread over several images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/005Robust watermarking, e.g. average attack or collusion attack resistant
    • G06T1/0064Geometric transfor invariant watermarking, e.g. affine transform invariant
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0061Embedding of the watermark in each block of the image, e.g. segmented watermarking

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Credit Cards Or The Like (AREA)
  • Inspection Of Paper Currency And Valuable Securities (AREA)
  • Burglar Alarm Systems (AREA)
  • Television Systems (AREA)
  • Collating Specific Patterns (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Length Measuring Devices With Unspecified Measuring Means (AREA)

Abstract

Un método para detectar una marca de agua incrustada en una cadena de vídeo con marca de agua formada por sucesivas imágenes, habiendo sido modificada la escala de la cadena de vídeo con marca de agua por una escala desconocida entre un número finito predeterminado de escalas, que comprende, para cada una del número finito predeterminado de escalas, los pasos de: dividir la cadena de vídeo con marca de agua en una pluralidad de bloques de marca de agua con escala modificada de igual tamaño; leer la pluralidad de bloques con marca de agua de escala modificada en una pluralidad de bloques leídos; acumular cada uno de la pluralidad de bloques leídos en un depósito de un número predeterminado de depósitos de bloques leídos, donde los bloques leídos acumulados en cada uno de los depósitos de bloques leídos tienen el mismo descentramiento entre el inicio de ese bloque leído y el inicio apropiado de los bloques de marca de agua, por lo que la fortaleza de la marca de agua es reforzada mientras sedesenfatiza la señal de la cadena de vídeo; volver a modificar la escala de cada uno de los depósitos de bloques leídos acumulados por la inversa de la escala respectiva del número finito predeterminado de escalas; combinar los depósitos de bloques leídos acumulados cuya escala se ha vuelto a modificar en un solo bloque acumulado de vídeo; y evaluar una cantidad predeterminada dentro del bloque de vídeo acumulado para detectar la marca de agua.

Description

Procedimiento y aparato para detectar una marca de agua para escalas específicas y arbitrariamente desplazadas.
La presente invención está relacionada con un método para detectar una marca de agua incrustada en una cadena de vídeo y un dispositivo para detectar marcas de agua.
Las sinergias entre las técnicas de compresión de datos desarrolladas recientemente, los medios de almacenamiento de gran capacidad, Internet y otros canales de distribución de alta anchura de banda, han hecho a los medios digitales casi omnipresentes. A la vista de estos desarrollos, las tecnologías para el control de la distribución, copia e identificación del autor y/o de propiedad de tales medios están ganando importancia y relevancia en el mercado. En particular, la coerción efectiva de los derechos de copia en los medios digitales es un problema complejo, debido principalmente a la naturaleza del propio medio. En realidad, a menos que se tomen medidas preventivas, los datos digitales son fácilmente y perfectamente reproducibles, sin pérdida de fidelidad.
Las denominadas "marcas de agua digitales" han ganado atención recientemente como una posible arma del arsenal contenido por el desarrollador para combatir la piratería o la distribución o reproducción no autorizadas de los medios digitales, tales como el vídeo. En general, las marcas de agua son un mensaje, un símbolo, o una marca distintiva que se añade de forma transparente a la señal de vídeo con el fin de identificar si la copia está autorizada, el autor del contenido del vídeo, su distribuidor, propietario o información similar. El proceso de añadir el mensaje, símbolo o marca distintivos al medio digital se denomina generalmente proceso de incrustación. Preferiblemente, las marcas de agua digitales están incrustadas en el medio digital (ya sea audio, imágenes estáticas o vídeo) para hacerlas invisibles a la audiencia de destino (tal como, por ejemplo, los asistentes de un cine) y hacerlas fiablemente detectables por sistemas de detección apropiados. En general, la visibilidad y detectabilidad están directamente relacionadas entre sí: cuanto más visible es una marca de agua, más fiablemente será detectada. Por el contrario, una marca de agua bien escondida será difícil de detectar fiablemente. Por tanto, típicamente debe alcanzarse un compromiso aceptable entre visibilidad y detectabilidad.
Se han propuesto varios métodos para incrustar una marca de agua en una cadena de datos. En el caso de una cadena de vídeo, por ejemplo, cada cuadro de vídeo puede ser dividido en una retícula de bloques de un tamaño dado. Por tanto, cada bloque consiste en una matriz de elementos de imagen (en adelante píxeles), que tiene cada uno de ellos varias características asociadas, tales como luminancia o crominancia. En cada bloque puede llevarse a cabo una transformación. Por ejemplo, en cada bloque de cada cuadro de una cadena de vídeo puede llevarse a cabo una Transformada Discreta del Coseno (en adelante, DCT), una Transformada Discreta de Fourier (en adelante, DFT) o alguna otra transformación. Tales transformaciones generan información relacionada con el contenido espectral de la cadena de vídeo. Una vez obtenida esta información, puede incrustarse una marca de agua o una parte de la misma en uno o más bloques evaluando y modificando selectivamente el bloque de píxeles transformado y aplicando después la transformada inversa. Por ejemplo, puede incrustarse una marca de agua o una parte de la misma como perturbaciones dirigidas de un solo bloque o una pluralidad de bloques. Perturbando selectivamente los píxeles, de un bloque transformado y aplicando después una transformación inversa, por ejemplo, puede incrustarse una marca de agua con baja visibilidad. Esto es posible porque los sistemas humanos visual y auditivo no distinguen fácilmente entre pequeñas variaciones del contenido espectral, haciendo posible que la información de vídeo de una frecuencia dada enmascare los datos de la marca de agua de la misma frecuencia o de frecuencia contigua.
Las cadenas de vídeo con marcas de agua son a menudo modificadas a escala para acomodar distintos formatos. Por ejemplo, las pantallas de las salas de cine tienen una relación de aspecto aproximada de 16:9, en cuanto que la pantalla de cine es alrededor de 16 unidades de larga de 9 unidades de ancha. Por otra parte, las pantallas de televisión tienen una relación de aspecto de 4:3. Así, el vídeo modificado a escala para un formato debe a menudo ser modificado a escala para otro formato. El vídeo puede ser modificado a escala horizontalmente y/o verticalmente. La figura 1 muestra un ejemplo de modificación a escala de un bloque de datos de vídeo con marca de agua. Como se ilustra en la figura 1, un bloque de marca de agua de 16 por 16 (16 x 16) píxeles puede ser, por ejemplo en aplicaciones de DVD, modificado en escala horizontal por un factor de, por ejemplo, 4/3, la denominada escala Panorámica y Exploración. El bloque de marca de agua modificado a escala tiene por tanto una dimensión vertical de 16 píxeles y una dimensión horizontal no integrada de 16*4/3 o 64/3.
A menudo, el vídeo es cortado y desplazado, por las mismas razones que las descritas anteriormente o por todas las distintas razones juntas que inciden, por ejemplo, en las técnicas de compresión digital y/o manipulaciones no autorizadas de la cadena de vídeo. Por ejemplo, un bloque de marca de agua puede no empezar en el origen del primer bloque de vídeo debido, por ejemplo, a que falta una o más filas o columnas. Tal modificación de escala, recorte y desplazamiento hacen que la detección de las marcas de agua sea más compleja. En realidad, una cadena de vídeo dada puede haber sufrido cierta forma de modificación a escala y de desplazamiento, pero la escala exacta utilizada y la cantidad de desplazamiento del bloque de la marca de agua pueden no ser conocidas. Sin embargo, subsiste la necesidad de detectar fiablemente las marcas de agua incrustadas.
El documento EP-A-0 902 591 describe un método para extraer una marca de agua de unos datos comprimidos con marca de agua en los cuales los datos con marcas de agua están dispuestos en bloques que son trasladados después espacialmente para compensar la distorsión geométrica.
Sin embargo, la traslación espacial ha de ser elegida de manera que compense la distorsión de la escala supuesta o conocida.
Existe por tanto la necesidad de dispositivos y métodos capaces de detectar marcas de agua incrustadas en cadenas de vídeo que hayan sufrido una modificación a escala desconocida entre un número predeterminado y finito de escalas conocidas.
La presente invención busca satisfacer esta necesidad.
De acuerdo con un primer aspecto de la presente invención, se proporciona un método para detectar una marca de agua incrustada en una cadena de vídeo con marca de agua, formada por imágenes sucesivas, habiendo sido modificada la escala de la cadena de vídeo con marca de agua por una escala desconocida entre un número de escalas finito predeterminado, comprendiendo, para cada una de las escalas del número de escalas finito predeterminado, los pasos de:
dividir la cadena de vídeo con marca de agua en una pluralidad de bloques de marca de agua con modificación de escala de igual tamaño;
leer la pluralidad de bloques de marca de agua con modificación de escala en una pluralidad de bloques leídos;
acumular cada uno de la pluralidad de bloques leídos en un depósito de un número predeterminado de depósitos de bloques leídos, donde los bloques leídos acumulados en cada uno de los depósitos de bloques leídos tiene el mismo descentramiento entre el inicio de ese bloque leído y un inicio apropiado de los bloques de marcas de agua, por lo que la fortaleza de la marca de agua está reforzada al mismo tiempo que la señal de cadena de vídeo es desenfatizada;
volver a modificar la escala de cada uno de los depósitos de bloques leídos acumulados por la inversa de la escala respectiva del número de escalas finito predeterminado;
combinar los depósitos de bloques leídos acumulados con la escala que se ha vuelto a modificar en un solo bloque de vídeo acumulado; y
evaluar una cantidad predeterminada dentro del bloque de vídeo acumulado para detectar la marca de agua.
En un modo de realización, el número predeterminado de depósitos de bloques leídos puede estar determinado por cada una de las escalas del número de escalas predeterminado.
Los bloques de la marca de agua con escala modificada pueden ser de un tamaño N*(I_{H}/J_{H}) x N*(I_{V}/J_{V}), donde una marca de agua original tiene un tamaño de N x N y donde (I_{H}/J_{H}) e (I_{V}/J_{V}) son escalas horizontal y vertical, respectivamente, y el número predeterminado de depósitos de bloques leídos puede ser I_{H} para cada escala horizontal e I_{V} para cada escala vertical.
Preferiblemente, los bloques leídos son del mismo tamaño para cada escala del número predeterminado de escalas, y son suficientemente grandes para acomodar una marca de agua completa con escala modificada.
El paso de evaluación puede incluir el paso de transformar el bloque de vídeo acumulado correspondiente a cada escala del número de escalas predeterminado en un dominio de frecuencias. Por ejemplo, el paso de transformación puede incluir la aplicación de una DCT o una DFT al bloque de vídeo acumulado correspondiente a cada una de las escalas del número finito predeterminado de escalas.
En un modo de realización, la cantidad predeterminada a evaluar puede comprender una potencia de la DCT o la DFT, y el paso de evaluación puede incluir la selección de la DCT o DFT que tenga la potencia mayor, identificando la DCT o la DFT con mayor potencia la escala correcta de la marca de agua entre el número de escalas predeterminado y el desplazamiento correcto de la marca de agua dentro de los bloques de la marca de agua.
En un modo de realización preferido, los bloques leídos son acumulados en depósitos de bloques leídos distribuyendo cíclicamente bloques leídos sucesivos con el mismo descentramiento relativo con respecto a los bloques respectivos de la marca de agua en un depósito respectivo de un número predeterminado de depósitos de bloques leídos.
El número predeterminado de depósitos de bloques leídos puede estar relacionado con la escala aplicada a los bloques de marca de agua. Esta escala puede ser expresada como I/J, donde I y J son primos entre sí y el paso de distribución distribuye cíclicamente los bloques leídos en los I depósitos respectivos de bloques leídos. Para escala de vídeo de un número predeterminado de n escalas de vídeo de formato I_{n}/J_{n}, donde I_{n} y J_{n} son primos entre sí, cada bloque I_{n}^{simo} leído puede ser distribuido en el mismo depósito de bloques leídos entre el número predeterminado de depósitos de bloques leídos. El número predeterminado de depósitos de bloques leídos puede ser I_{n}.
En un modo de realización, los depósitos de bloques leídos pueden ser espacios de memoria dentro de un dispositivo de memoria, siendo acumulados los bloques leídos en depósitos de bloques leídos mediante el almacenamiento y la acumulación de bloques leídos sucesivos en los espacios de memoria.
Los depósitos de bloques leídos pueden corresponder, cada uno de ellos, a descentramientos de píxeles de los inicios de los bloques leídos con respecto a los inicios de los bloques de marca de agua dentro de la cadena de vídeo.
Preferiblemente, el paso de evaluación incluye el paso de detectar un desplazamiento de la marca de agua dentro de los bloques de marca de agua.
Los pasos de lectura, acumulación, remodificación de la escala, combinación y evaluación pueden ser llevados a cabo para cada una de las escalas dentro de un número de escalas predeterminado.
Preferiblemente, se selecciona un resultado de los pasos de evaluación identificando el resultado seleccionado la escala correcta y el desplazamiento de la marca de agua en los bloques de marca de agua.
La presente invención se extiende también a un dispositivo de detección de marcas de agua para detectar una marca de agua incrustada en una cadena de vídeo con marca de agua, habiendo sido modificada la escala de la cadena de vídeo con marca de agua mediante una escala desconocida entre un número de escalas finito predeterminado, comprendiendo:
medios para dividir la cadena de vídeo con marca de agua en una pluralidad de bloques de marca de agua con modificación de escala y de igual tamaño;
medios para leer la pluralidad de bloques de marca de agua con modificación de escala en una pluralidad de bloques leídos;
medios para acumular cada uno de los bloques de la pluralidad de bloques leídos en un número predeterminado de depósitos de bloques leídos, donde los bloques leídos acumulados en cada uno de los depósitos de bloques leídos tiene el mismo descentramiento entre el inicio del bloque leídos y un inicio apropiado de los bloques de marca de agua, por lo que la fortaleza de la marca de agua se refuerza mientras que se desenfatiza la señal de la cadena de vídeo;
medios para volver a modificar la escala de cada uno de los depósitos de bloques leídos acumulados por la inversa de la escala respectiva de un número finito predeterminado de escalas;
medios para combinar los depósitos de bloques leídos acumulados con escala modificada en un solo bloque de vídeo acumulado; y
medios para evaluar una cantidad predeterminada dentro del bloque de vídeo acumulado para detectar la marca de agua.
A continuación se describirán modos de realización de la presente invención, a modo de ejemplo, con referencia a los dibujos que se acompañan, en los que:
La figura 1 representa esquemáticamente la modificación de escala de un bloque de píxeles de vídeo con marca de agua de 16 x 16 a una escala horizontal de 4/3, para generar un bloque de píxeles de vídeo de 16 x 64/3 con marca de agua.
La figura 2 es un diagrama de bloques que ilustra un modo de realización de un método de la invención, utilizando el ejemplo ilustrativo de un bloque con marca de agua de 16 x 16 con la escala modificada por un factor horizontal de 4/3.
La figura 3 es un diagrama de bloques que ilustra la acumulación de vídeo de acuerdo con un modo de realización de la presente invención, utilizando el ejemplo ilustrativo de un bloque de marca de agua de 16 x 16 con la escala modificada por un factor horizontal de 4/3.
La figura 4 es un diagrama de bloques que ilustra la remodificación de escala de bloques acumulados y la combinación de bloques acumulados con un desplazamiento anterior a la detección de una marca de agua, utilizando el ejemplo ilustrativo de un bloque de marca de agua de 16 x 16 con escala modificada por un factor horizontal de 4/3.
La figura 5 ilustra la modificación de escala de un bloque de píxeles de vídeo con marca de agua de N x N con una escala horizontal de xEscala y una escala vertical de yEscala, para generar un bloque de píxeles de vídeo con marca de agua de N*xEscala x N*yEscala.
La figura 6 es un diagrama de bloques que ilustra un modo de realización de un método de la invención, utilizando un ejemplo ilustrativo en el que se modifica la escala de un bloque con marca de agua de N x N por un factor horizontal de xEscala.
La figura 7 es un diagrama de bloques que ilustra la acumulación de vídeo utilizando un ejemplo ilustrativo en el que se modifica la escala de un bloque con marca de agua de N x N por un factor horizontal de xEscala.
La figura 8 es un diagrama de bloques que ilustra la modificación de escala de bloques acumulados y la combinación de los bloques acumulados con un desplazamiento anterior a la detección de la marca de agua, utilizando un ejemplo ilustrativo en el que se modifica la escala de un bloque con marca de agua de N x N por un factor horizontal de xEscala.
La figura 9 es un diagrama de flujo de un método de un modo de realización de la invención, para tres escalas conocidas.
El método descrito e ilustrado utiliza un procedimiento de acumulación de vídeo para permitir la detección de marcas de agua (y el subsiguiente descifrado de la carga útil de marca de agua) en cadenas de vídeo con marca de agua incrustada que han sufrido una modificación de escala desconocida y/o un desplazamiento arbitrario de los píxeles. El término marca de agua se utiliza para incluir cualquier mensaje, símbolo u otro artefacto intencionadamente ocultos que transporta alguna información tal como, por ejemplo, distintivos de propiedad o autoridad que está diseñada para estar sustancialmente escondida de forma invisible en la cadena de datos. Para detectar marcas de agua dentro de una cadena de vídeo con marca de agua incrustada, se requiere que los bloques de los datos de vídeo sean leídos desde la cadena y sean evaluados individual o colectivamente para la presencia o ausencia de una marca de agua o de marcas de agua. Sin embargo, como la escala aplicada a la cadena es desconocida, el tamaño apropiado del bloque leído es también desconocido. Un modo de realización de un método de la invención resuelve este problema leyendo y procesando la cadena de vídeo en bloques de tamaño suficiente para acomodar bloques de marca de agua con escala modificada por las mayores escalas comúnmente utilizadas. Este procedimiento puede ser llevado a cabo en serie o en paralelo. Una vez que el método de tratamiento de vídeo con marca de agua ha sido llevado a cabo para una diversidad de escalas diferentes, la marca de agua, si está presente, sobresaldrá con más fuerza en el desplazamiento correcto y en la escala correcta, siendo la escala correcta la escala aplicada a la marca de agua en la cadena de vídeo.
Teóricamente, son posibles un número infinito de escalas y los métodos descritos aquí son capaces de detectar marcas de agua en una cadena de vídeo con escala modificada por cualquier factor de escalación en las dimensiones horizontal y/o vertical, con tiempo y/o potencia de tratamiento suficientes. Sin embargo, en la práctica, solo son de uso común un número de escalas limitado, ya que solamente está admitidos un número limitado de formatos de vídeo. Por tanto, en la práctica, el número de escalas diferentes que debe ser evaluado para detectar marcas de agua incrustadas en ellas de una manera precisa y fiable se reduce grandemente. Sin embargo, debe entenderse que la presente invención no está limitada a ninguna dimensión de escala en particular ni a ningún número particular de escalas actualmente en uso.
La figura 2, solamente para fines ilustrativos, supone que la marca de agua original incrustada en el vídeo tiene un tamaño de bloque de 16 x 16 píxeles y que se ha aplicado a ella una escala horizontal de 4/3 (una de las escalas conocidas actualmente en uso). Por tanto, los bloques originales con marca de agua de 16 x 16 han sufrido una modificación de escala horizontal de 4/3, resultando posiblemente en bloques con marca de agua solapados pero de igual tamaño, etiquetados como WB1-5, con 16 píxeles en la dirección vertical y 16*4/3 píxeles (64/3 píxeles, o 21,3 píxeles aproximadamente) en la dimensión horizontal. Por tanto, cada cuadro de vídeo de la señal de vídeo con escala modificada y con marca de agua incrustada es dividido en una pluralidad de 16 x 64/3 bloques. Para detectar las marcas de agua dentro de la cadena de vídeo con escala modificada, es necesario leer los bloques, incluyendo el WB1-5 y todos los bloques posteriores no ilustrados en la figura 2. Sin embargo, no es posible leer 21,3 píxeles. Por tanto, se elige un tamaño de bloque leído de 16 x 22 píxeles, como se ilustra en los bloques leídos RB1, RB2, RB3, RB4 y RB5. Para mantener la consistencia con el tamaño original de marca de agua de 16 X 16, los bloques leídos de 16 x 22 RB1 a RB5 (y todos los bloques leídos posteriores no ilustrados en la figura 2), comienzan cada 16 píxeles. Por tanto, los bloques leídos RB1 a RB5 (y todos los bloques leídos posteriores no ilustrados en la figura 2) se solapan entre sí. Los bloques leídos RB1 a RB5 que se solapan se ilustran en líneas diferentes por razones de claridad.
Como se ilustra en la figura 2, el comienzo del primer bloque leído RB1 está alineado con el comienzo del primer bloque WB1 con marca de agua y escala modificada y su descentramiento OB1 con relación a WB1 es cero, por mera inspección. El comienzo del segundo bloque leído RB2 comienza 16 píxeles después del inicio de WB1 y está, por tanto, descentrado con relación a WB1 con un descentramiento relativo OB2 distinto de cero. Los descentramientos relativos OB1, OB2,... OBn, son los remanentes fraccionarios de dividir (n*16) por 64/3, donde n = 0, 1, 2, 3... y donde 64/3 es la dimensión horizontal de los bloques WB1, WB2, WB3... de marca de agua con escala modificada. Dicho de otra manera, los descentramientos horizontales relativos OB1, OB2,... OBn (los descentramientos del inicio de los bloques leídos con relación al inicio de los bloques de marca de agua), son obtenidos evaluando la expresión (K*N)/(N*I/J) = K/(I/J), donde N = 16 solamente en este ejemplo, donde K es cíclicamente igual a (0, 1, 2, ... I-1) y donde "*" denota la operación de multiplicar.
Por tanto, en el caso de una escala de 4/3, como se ilustra en la figura 2, el descentramiento relativo OB1 es cero porque el remanente fraccionario de dividir 0*16 entre 16*4/3 es cero. El mismo resultado se obtiene evaluando el remanente fraccionario de la expresión K/(I/J) para K = 0 e I/J = 4/3. El descentramiento relativo OB2 es igual al remanente fraccionario de dividir 1*16 entre (16*4/3) o 3/4. Por tanto, el bloque leído RB2 comienza 16 píxeles después de RB1 y está descentrado con relación al inicio de WB1 en 3/4 de la dimensión horizontal del bloque WB1 de marca de agua con modificación de escala. De igual manera, el descentramiento relativo OB3 es igual al remanente fraccionario de dividir 2*16 entre (16*4/3) o 1/2. El mismo resultado se obtiene evaluando el remanente fraccionario de la expresión K/(I/J) donde K = 2 e (I/J) = 4/3. Por tanto, RB3 comienza 16 píxeles después de RB2 y está descentrado con relación al inicio de WB2 en 1/2 de la dimensión horizontal del bloque WB2 de marca de agua con modificación de escala. De forma similar, el descentramiento relativo OB4 es igual al remanente fraccionario de dividir 3*16 entre (16*4/3) o 1/4. Por tanto, RB4 comienza 16 píxeles después de RB3 y está descentrado con relación al comienzo de WB3 en 1/4 de la dimensión horizontal del bloque WB3 de marca de agua con modificación de escala. El mismo resultado se obtiene evaluando el remanente fraccionario de la expresión K/(I/J) donde K = 3 e (I/J) = 4/3.
Los descentramientos de los bloques de marca de agua con escala modificada y, consecuentemente, la fracción de la dimensión horizontal del bloque de marca de agua con escala modificada que representan estos descentramientos, se repiten después de forma cíclica, como sigue. Como está descentrado del primer bloque leído RB1, el descentramiento relativo OB5 es nuevamente cero, ya que el remanente fraccionario de dividir 0*16 entre (16*4/3) es cero. Por tanto, RB5 comienza 16 píxeles después de RB4 y está alineado con el inicio de WB4. De forma similar, el descentramiento relativo OB6 (no ilustrado) puede mostrarse igual a 3/4, el descentramiento relativo OB7 (no ilustrado) puede mostrarse igual a 1/2, el descentramiento relativo OB8 (no ilustrado) puede mostrarse igual a 1/4 y el descentramiento relativo OB9 (no ilustrado) puede mostrarse alineado, una vez más con el siguiente bloque de marca de agua, WB9 (no ilustrado). Los descentramientos relativos OB6, RB7, RB8 y OB9 representan fracciones de 3/4, 1/2, 1/4 y 0 de la dimensión horizontal del bloque de marca de agua con escala modificada, respectivamente. Por tanto, puede observarse que RB1, RB5, RB9, RB13 y cada uno de los cuartos bloques leídos posteriores tendrá un descentramiento de cero. De forma similar, puede observarse que RB2, RB6, RB10 y cada uno de los cuartos bloques leídos posteriores tendrá un descentramiento de 3/4, con relación a la longitud horizontal del bloque con marca de agua, como se ilustra en la figura 2. De igual manera, RB3, RB7, RB11 y cada cuarto bloque leído subsiguiente tendrá un descentramiento de 1/2, mientras que RB4, RB8, RB12 y cada cuarto bloque leído subsiguiente tendrá un descentramiento de 1/4, con relación a la longitud horizontal de los bloques de marca de agua con escala modificada.
Consecuentemente, los bloques leídos RB1, RB2, RB3... de la figura 2 pueden ser clasificados de acuerdo con un número limitado de magnitudes relativas de descentramiento OB1, OB2, OB3... En el caso de una escala horizontal de 4/3, solamente existen cuatro remanentes fraccionarios diferentes, correspondientes a las fracciones de la longitud horizontal de los bloques de marca de agua de 0, 3/4, 1/2 y 1/4, respectivamente. Por tanto, los bloques leídos RB1, RB2, RB3... pueden ser organizados en cuatro depósitos, o espacios de memoria, de 16 x 22 bloques leídos de descentramiento constante, correspondiendo cada depósito a uno de los descentramientos posibles, como se ilustra en la figura 3. Cada cuadro de vídeo es transversal, de bloque leído en bloque leído, siendo sumado cada bloque leído al bloque precedente con el mismo descentramiento de un depósito específico de bloques leídos correspondientes al descentramiento apropiado. Esta acumulación de vídeo en depósitos específicos correspondientes a los descentramientos calculados no está afectado por ningún desplazamiento inicial entre la marca de agua y el primer bloque leído.
De acuerdo con el ejemplo ilustrado en la figura 3, los bloques leídos que tienen un descentramiento cero pueden ser acumulados en el depósito 1 de leídos, los bloques leídos que tienen un descentramiento de 3/4 con relación a la dimensión horizontal del bloque de marca de agua con escala modificada pueden ser acumulados en el depósito 2 de leídos, los bloques leídos con un descentramiento de 1/2 con relación a la dimensión horizontal del bloque de marcada de agua con escala modificada pueden ser acumulados en el depósito 3 de leídos y los bloques leídos que tienen un descentramiento de 1/4 con relación a la dimensión horizontal del bloque de marca de agua con escala modificada pueden ser acumulados en el depósito 4 de leídos. Cada depósito de leídos acumula bloques que tienen un descentramiento constante. Así, puede utilizarse la operación del remanente fraccionario para acumular bloques leídos que tienen descentramientos similares. En el caso de una escala de 4/3, como se muestra en la figura 2, los bloques leídos son distribuidos cíclicamente en cuatro depósitos separados.
Cada depósito puede corresponder a un espacio de memoria predeterminado de un dispositivo informático y los valores correspondientes a una o más características seleccionadas de los píxeles pueden ser almacenados dentro de los espacios de memoria predeterminados. Por ejemplo, puede elegirse como característica seleccionada para la acumulación en los depósitos de bloques leídos los valores de luminancia de los píxeles de los bloques leídos. Durante el procedimiento de acumulación (es decir, de adición), se suman una a otra la característica de los píxeles o características de los correspondientes píxeles de cada bloque acumulado dentro de cada depósito. Como la señal de vídeo es generalmente una señal relativamente sin correlación en comparación con la señal de la marca de agua, la fortaleza de la marca de agua será reforzada a medida que se acumulan los bloques leídos, mientras que la propia señal de vídeo tenderá hacia un nivel gris medio.
En esta etapa de proceso puede imponerse también un criterio de filtrado para permitir el tratamiento selectivo de los bloques. Tal tratamiento selectivo de los bloques permitiría la acumulación de solamente aquellos bloques leídos que hayan superado un cierto criterio. De acuerdo con uno de tales métodos de tratamiento selectivo de bloques, el criterio utilizado para detectar la marca de agua coincide con el criterio empleado para determinar en qué bloques incrustar la marca de agua, durante el proceso de incrustación de marca de agua. Tal método selectivo de tratamiento de bloques permite reducir ventajosamente la visibilidad de la marca de agua sin afectar la fortaleza aparente de la señal de la marca de agua durante la detección de la misma.
Cuando se ha acumulado un número suficientemente grande de bloques leídos en cada uno de los depósitos de bloques leídos, se puede volver a modificar la escala de los bloques leídos acumulados, ajustándose a descentramientos diferenciales, combinados en un solo bloque y con la escala y desplazamiento de la marca de agua detectada. Posteriormente, la estructura de la marca de agua detectada puede ser evaluada, por ejemplo, para descifrar el mensaje escondido en la misma. Como se ilustra en la figura 4, los bloques leídos son organizados ahora en cuatro depósitos de bloques leídos, recibiendo y acumulando cada depósito los bloques leídos que tienen el mismo descentramiento. Cada uno de los depósitos 1 a 4 de bloques leídos, vuelven a sufrir una modificación de escala por 3/4 (la inversa de la escala original de 4/3), para crear los bloques leídos 410, 420, 430 y 440 con escala modificada de 16 x 16 píxeles. Cada uno de los bloques leídos 410, 420, 430 y 440 con escala modificada de 16 x 16 píxeles son combinados después a través de un desplazamiento en un solo bloque acumulado 450 de vídeo con escala modificada de 16 x 16. En realidad, la característica o características seleccionadas de los píxeles correspondientes de cada uno de los bloques leídos 410, 420, 430 y 440 con escala modificada son sumados para formar un solo bloque acumulado 450 de vídeo con escala modificada de 16 x 16.
El procedimiento antes descrito se lleva a cabo en paralelo, preferiblemente, para cada una de las escalas consideradas. Los métodos descritos permiten la detección de marcas de agua en cadenas de vídeo cuya escala ha sido modificada por un factor de escalación desconocido. Sin embargo, lo que es generalmente conocido es qué escalas son de uso común para vídeo. Esas escalas de uso común constituyen un universo finito de escalas conocidas. Por tanto, no es indebidamente gravoso comprobar la cadena de vídeo contra cada una de esas escalas comúnmente utilizadas de la manera descrita anteriormente. La comprobación de las cadenas de vídeo contra cada una de las escalas comúnmente utilizadas producirá un solo bloque acumulado de vídeo con escala modificada para cada una de las escalas en consideración. Después puede ejecutarse un algoritmo de detección en cada uno de los bloques de vídeo acumulados con escala modificada, tal como el bloque 450 de vídeo acumulado con modificación de escala de 16 x 16 de la figura 4.
Un ejemplo de algoritmo de detección puede transformar cada uno de los bloques de vídeo acumulados del dominio espacial al dominio de frecuencias para detectar la marca de agua y asegurarse de la escala y desplazamiento aplicados a los bloques de la marca de agua. Por ejemplo, pueden calcularse dos DCT bidimensionales (2-D) para cada uno de los bloques acumulados 450 con escala modificada de 16 x 16. En este caso, deben efectuarse 256 (16*16) DCT para cada bloque acumulado 450 de 16 x 16, uno para cada descentramiento posible de la marca de agua dentro del bloque 450. En realidad, debido a la posible pérdida de filas y/o columnas debido al recorte, a los algoritmos de compresión y/o a otras manipulaciones digitales, el bloque de marca de agua puede no comenzar en el origen del bloque acumulado 450 de vídeo, pero puede ser desplazado allí por un número desconocido de píxeles. Por esa razón, es necesario calcular 256 DCT sobre cada una de las 16 x 16 matrices de bloques 450, comenzando cada una de las 256 DCT en un píxel de origen diferente dentro de cada uno de los bloques acumulados 450 de vídeo. De esta manera, si se están considerando tres escalas, se obtendrán tres bloques acumulados diferentes 450 de vídeo de 16 x 16. Para cada uno de estos bloques acumulados 450 de vídeo, deben efectuarse 256 DCT, con un total de 768 DCT. Suponiendo que se acumula el mismo número de bloques leídos en cada uno de los depósitos de bloques leídos para cada escala considerada, la marca de agua se manifestará muy probablemente más fuerte en ese bloque acumulado 450 de vídeo con escala modificada que tenga la mayor potencia de DCT. Por tanto, la DCT entre las 768 de tales DCT que tenga la potencia mayor indicará simultáneamente qué escala fue utilizada y el desplazamiento de las marcas de agua dentro de los bloques de marcas de agua. En realidad, la DCT con la potencia mayor estará presente en ese bloque acumulado 450 de vídeo correspondiente a la escala correcta y en ese lugar dentro del ese bloque 450 correspondiente al desplazamiento correcto. Esto es debido a que la señal de vídeo, cuando se considera en el tiempo y en el espacio (un número suficiente de bloques leídos), es una señal estacionaria en sentido general amplio. Por otra parte, la señal de marca de agua puede ser una señal inalterada (aunque débil) que está oculta en la cadena de vídeo. Por tanto, tras la acumulación, la señal de marca de agua será reforzada mientras que la señal de vídeo sin correlación será desenfatizada, manifestándose por ejemplo como una imagen de gris medio. Por tanto, al identificar el bloque acumulado 450 de vídeo con escala modificada que tiene la DCT con mayor potencia, habrán sido detectadas la marca de agua y la escala y desplazamiento correctos.
La presente invención no está limitada a bloques acumulados 450 de vídeo con un tamaño de 16 píxeles por 16 píxeles. Pueden utilizarse tamaños menores o mayores, conduciendo los tamaños de bloques mayores a una codificación más eficiente, pero aumentando la complejidad de cálculo de la transformada.
La divulgación anterior, para fines ilustrativos, está dirigida al caso específico de un bloque leído de 16 x 22 píxeles y un bloque de marca de agua con una escala horizontal de 4/3. Sin embargo, los métodos descritos pueden ser generalizados fácilmente a bloques con marcas de agua de cualquier dimensión, con escala modificada a cualquier escala y desplazados dentro de los bloques de marca de agua por cualquier número arbitrario de píxeles. En realidad, suponiendo que la xEscala es una escala horizontal posible y que la yEscala es una escala vertical posible, xEscala puede ser representada como I_{H}/J_{H} e yEscala puede ser representada como I_{V}/J_{V}, donde (I_{H},J_{H}) son números primos entre sí e (I_{V},J_{V}) son también números primos entre sí. Si se supone que el tamaño original del bloque de marca de agua es de N X N píxeles de tamaño, significando que un bloque de marca de agua que tenga N píxeles en dirección horizontal y N píxeles en dirección vertical, los bloques de marca de agua con escala modificada tendrán unas dimensiones de (N*xEscala) x (N*yEscala) como se ilustra en la figura 5, cuya expresión es equivalente a (N*I_{H}/J_{H}) x (N*I_{V}/J_{V}). Por simplicidad, se establecerá la descripción siguiente para el caso general en el que se modifica la escala del bloque de marca de agua solamente en la dirección horizontal. Naturalmente, se comprenderá que puede aplicarse una modificación de escala en la dirección horizontal, en la vertical o en ambas.
Para asegurar que el bloque completo de la marca de agua puede estar contenido dentro del bloque leído, el bloque leído tiene, preferiblemente, un tamaño de N x int (N*xEscala+1), donde "int" es la función matemática de truncamiento de enteros. Por tanto, considerando solamente escalas horizontales, el tamaño del bloque leído o quantum puede ser N x int ((N*I_{H}/J_{H})+1). El inicio de cada bloque leído sucesivo se incrementa preferiblemente en N píxeles con relación al inicio del bloque leído anterior. Sin embargo, el inicio horizontal de los bloques de lectura con relación a los bloques de marca de agua es, preferiblemente, el remanente fraccionario de dividir (Shift+K*N) entre (N*I_{H}/J_{H}). Esto es equivalente al remanente fraccionario de ((Shift/N)*J_{H}/I_{H} + K* J_{H}/I_{H}) donde Shift denota el comienzo u origen de la marca de agua dentro de un bloque leído y donde K es cíclicamente igual a (0, 1, 2, ...I_{H}-1). Si J_{H} e I_{H} son primos entre sí, la longitud del ciclo de los remanentes será exactamente I_{H}, ya que el remanente fraccionario al dividir la expresión ((Shift/N)*J_{H}/I_{H}) es igual al remanente fraccionario de ((Shift/N)*J_{H}/I_{H} + I_{H}* J_{H}/I_{H}), ya que J_{H} es un entero. Por tanto, son suficientes I_{H} depósitos de bloques leídos para acumular los bloques leídos de tamaño N x Int (N*I_{H}/J_{H}+1) de manera que los bloques de marca de agua acumulados en cada depósito tendrá el mismo descentramiento.
Los bloques leídos son, preferiblemente, suficientemente grandes para asegurar que la marca de agua con escala modificada esté contenida totalmente en ellos, para cualquiera de las escalas consideradas. También pueden usarse bloques más pequeños, aunque el mejor resultado (la detección más fiable) se obtendrá cuando los I_{H} depósitos de leídos sean suficientemente grandes para acomodar una marca de agua completa de escala modificada. Por tanto, el tamaño máximo preferido de los bloques leídos puede ser int(N*maxYescala + 1) x N en el caso en que solamente se consideren escalas verticales, N x int(N*maxXescala + 1) en el caso en que solo se consideren escalas horizontales o int(N*maxYescala + 1) x int(N*maxXescala + 1) en el caso en que se consideren tanto la escala vertical como la horizontal, donde maxXescala y maxYescala son las escalas de tamaño máximo consideradas en las direcciones x e y respectivamente.
Como se ilustra en la figura 6, la cadena de vídeo está dividida en una pluralidad de n bloques de marca de agua, etiquetados como WB1 a WBn. Los bloques de marca de agua, en el caso de modificación de la escala horizontal, tienen dimensiones de N x N * xEscala, o N x N * I_{H}/J_{H}. Los bloques leídos RB1 a RBn tienen dimensiones de N x int(N*xEscala + 1), para asegurarse de que será leído un bloque completo de marca de agua, hasta el tamaño máximo de marcas de agua de escala modificada consideradas. Los bloques leídos RB1 a RBn están descentrados entre sí en N píxeles y están descentrados con respecto a sus correspondientes bloques WB1 a WBn de marca de agua por el remanente fraccionario de la división de K*N entre (N xEscala), donde K es cíclicamente igual a (0, 1, 2, ... I_{H}-1). En el caso de 4/3 horizontal descrito con relación a la figura 2, por ejemplo, K es cíclicamente igual a 0, 1, 2, 3, 0, 1, 2, 3, 0...Por tanto, como se ilustra en la figura 6, RB1 está alineado con WB1 y el descentramiento relativo OB1 es el remanente fraccionario de la división de K*N entre (N * xEscala), donde K = 0. RB2 está descentrado de WB1 por el remanente fraccionario de dividir K*N entre (N*xEscala), donde K = 1. Los comienzos de los bloques leídos posteriores están descentrados de los comienzos de los bloques de marca de agua de la misma manera, hasta que K es igual a I_{H}-1, donde K vuelve a hacer ciclos desde 0 para el siguiente bloque leído.
Volviendo ahora al ejemplo en el que la escala considerada es una escala horizontal de I_{H}/J_{H}, los bloques leídos pueden ser organizados, utilizando la operación del remanente fraccionario descrita anteriormente, de acuerdo con sus descentramientos relativos con los bloques de marca de agua, existiendo solamente un número finito I_{H} de tales descentramientos. Como se ilustra en la figura 7, los bloques leídos pueden ser organizados por tanto en I_{H} depósitos separados, pudiendo ser cada uno de ellos, por ejemplo, un espacio de memoria diferente de un dispositivo informático, y correspondiendo cada uno de ellos a uno de los I_{H} descentramientos del comienzo horizontal de los bloques leídos con relación al comienzo horizontal de los bloques de marca de agua, continuando con el ejemplo de la escala horizontal actual. Los valores correspondientes a una o más de las características seleccionadas de los píxeles pueden ser almacenados dentro de los I_{H} depósitos de bloques leídos. Por ejemplo, pueden ser elegidos los valores de luminancia de los píxeles de los bloques leídos como la característica seleccionada para la acumulación en los depósitos de bloques leídos. Durante el procedimiento de acumulación, (es decir, de adición) añadirá una a otra la característica o características seleccionadas de los correspondientes píxeles de cada bloque acumulado dentro de los I_{H} depósitos de bloques leídos. Como la señal de vídeo es generalmente una señal relativamente sin correlación en comparación con la señal de marca de agua, la fortaleza de la marca de agua será reforzada, mientras que la propia señal de vídeo tenderá hacia una escala media de gris.
El número de bloques leídos que es necesario acumular en cada uno de los I_{H} depósitos de bloques leídos para efectuar el algoritmo de detección variará de acuerdo con la fortaleza de la señal de marca de agua incrustada en la cadena de vídeo. Debe observarse que la fortaleza de la marca de agua puede disminuir seleccionando juiciosamente los bloques en los cuales incrustar la marca de agua.
Como se muestra en la figura 8, los bloques leídos son organizados ahora en I_{H} depósitos de bloques leídos, recibiendo cada uno de ellos bloques leídos con el mismo descentramiento. A cada uno de los depósitos de bloques leídos se les modifica la escala por J_{H}/I_{H} (la inversa de la escala original I_{H}/J_{H} considerada), para crear los bloques leídos 810, 820, 830,...840 de N x N píxeles con escala modificada. Cada uno de los bloques leídos 810, 820, 830,...840 de N x N píxeles con escala modificada son ajustados después en descentramiento y combinados en un solo bloque acumulado 850 de vídeo de N x N con escala modificada utilizando, por ejemplo, transformaciones afines de una sola dimensión. En realidad, la característica o características seleccionadas de los correspondientes píxeles de cada uno de los bloques 810, 820, 830,...840 con escala modificada son combinados para formar un solo bloque acumulado 850 de vídeo de N x N con escala modificada mediante mapas lineales que utilizan, por ejemplo, un filtro de interpolación con re-muestreo.
El procedimiento anteriormente descrito es repetido después para cada escala considerada, para llegar a un solo bloque acumulado 850 de vídeo de N x N para cada escala considerada. La comprobación de la cadena de vídeo contra cada una de las escalas comúnmente utilizadas producirá un solo bloque acumulado 850 de vídeo para cada una de las escalas consideradas. Ahora puede ejecutarse un algoritmo de detección en cada uno los bloques acumulados 850 de vídeo con escala modificada de la figura 8. Por ejemplo, pueden utilizarse las DCT o las DFT en el algoritmo de detección para detectar la marca de agua y asegurarse de que la escala y cualquier desplazamiento que pueda haber sido aplicado a la marca de agua dentro de los bloques de la marca de agua.
Por ejemplo, pueden calcularse DCT de dos dimensiones para cada uno de los bloques acumulados 850 de vídeo de N x N con escala modificada. En este caso, deben efectuarse N*N DCT independientes para cada uno de los bloques acumulados 850 de N x N, una DCT para cada descentramiento posible de la marca de agua dentro del bloque acumulado 850 de vídeo. En realidad, debido a la posible pérdida de filas y/o columnas originadas por el recorte, los algoritmos de compresión y/u otras manipulaciones digitales, el bloque de marca de agua puede no comenzar en el origen del bloque acumulado 850 de vídeo, pero puede ser desplazado en él por un número de píxeles desconocido. Por esa razón, cuando se utilizan las DCT como una etapa del mecanismo de detección, es necesario calcular N*N DCT en cada uno de los bloques acumulados 850 de vídeo, comenzando cada una de las N*N DCT en un píxel de origen distinto dentro del bloque acumulado 850 de vídeo de N x N.
De esta manera, si se están considerando tres escalas, se obtendrán tres bloques acumulados 850 de vídeo de N x N. Para cada uno de estos bloques acumulados 850 de vídeo, pueden efectuarse N*N DCT con un total de 3*N*N DCT. Suponiendo que se acumula el mismo número de bloques leídos en cada depósito de bloques leídos para cada escala considerada, la marca de agua se manifestará muy probablemente más fuerte en ese bloque acumulado 850 de vídeo con escala modificada que tenga la mayor potencia de DCT. Por tanto, la DCT que tenga la mayor potencia, apuntará simultáneamente a la escala correcta y al desplazamiento correcto de la marca de agua, si la hay, dentro de los bloques de marca de agua. En realidad, la DCT con la potencia más grande estará presente en ese bloque acumulado 850 de vídeo correspondiente a la escala correcta y en ese lugar dentro del bloque correspondiente al desplazamiento correcto. Esto es debido a que la señal de vídeo, cuando se considera en el tiempo y en el espacio (un número suficiente de bloques leídos), es generalmente una escala media de grises. Por otra parte, la señal de la marca de agua, puede ser una señal inalterable (aunque débil) que está oculta en la cadena de vídeo. Por tanto, tras la acumulación, la señal de la marca de agua será reforzada, mientras que la señal de vídeo sin correlación será desenfatizada, manifestándose como una escala media de grises, por ejemplo. Por tanto, al identificar el bloque acumulado 850 de vídeo con escala modificada con la DT que presente la mayor potencia, habrán sido detectados la marca de agua y le escala y desplazamiento correctos.
En algunos casos, podría haber varios bloques acumulados 850 de vídeo con escala modificada con las DCT que presenten estadísticamente niveles de potencia significativos por encima del nivel medio de potencia de la señal de vídeo sin correlación. Esos bloques acumulados 850 de vídeo con escala modificada corresponden muy probablemente a escalas que son, por ejemplo, un múltiplo entero de la escala correcta, siendo la escala correcta la escala aplicada en realidad a la cadena de vídeo original. Sin embargo, aún en tal caso, el bloque acumulado de vídeo con escala modificada que presenta la mayor potencia de DCT contendrá muy probablemente la marca de agua, si está presente, e indicará la escala de la cadena de vídeo original. Más aún, el píxel de origen de la DCT que tiene mayor potencia indicará el desplazamiento impuesto en la marca de agua dentro de los bloques de marca de agua. Alternativamente, si ninguna de estas escalas consideradas conllevan un bloque acumulado 850 de vídeo con escala modificada que presente una señal de marca de agua que suba significativamente por encima de la media de la señal de vídeo, puede no haberse incrustado ninguna marca de agua en la cadena de vídeo y/o la cadena de vídeo puede haber sufrido una modificación de escala utilizando una escala que no haya sido considerada todavía.
La figura 9 muestra un modo de realización del método para detectar marcas de agua que han sufrido una modificación de escala desconocida y un desplazamiento arbitrario. El método comienza en el paso S0. Desde ahí, se llevan a cabo un cierto número de pasos para cada escala I/J considerada. En el ejemplo ilustrativo de la figura 9, se consideran tres de tales escalas; que son I_{1}/J_{1}, I_{2}/J_{2} e I_{3}/J_{3}. El método puede extenderse a cualquier número de tales escalas, siendo la única limitación la potencia de proceso y la velocidad del equipo que lleva a cabo el método a la velocidad de los datos de la cadena de vídeo. Preferiblemente, el presente método se lleva a cabo en tiempo real, significando que es con una velocidad suficiente para mantener el ritmo de la cadena de vídeo.
Para la escala I_{1}/J_{1} se efectúan los pasos S11 a S16; para la escala I_{2}/J_{2} se efectúan los pasos S21 a S26 y para la escala I_{3}/J_{3} se efectúan los pasos S31 a S36. En los pasos S11, S21 y S31, se leen los bloques de marca de agua en bloques leídos de igual tamaño de la manera descrita anteriormente y son distribuidos a su vez en los depósitos I_{1}, I_{2} e I_{3}, respectivamente. En los pasos S12, S22 y S32, los bloques de marca de agua en cada uno de los respectivos depósitos de leídos son acumulados a medida que son distribuidos en ellos. Como esta operación conlleva solamente adiciones de característica(s) seleccionada(s) de los píxeles constituyentes de los bloques leídos, es muy apropiada para efectuarse manteniendo el ritmo de la cadena de vídeo. Una vez que se ha determinado, en los pasos S13, S23 y S33, que se ha acumulado un número suficiente de bloques leídos en cada uno de los depósitos de acuerdo con algún criterio predeterminado, se efectúan los pasos S14, S24 y S34, donde se crean bloques leídos con escala modificada, tales como los bloques leídos con escala modificada 810 a 840 de la figura 8, mediante la modificación de la escala de los bloques de marca de agua acumulados en los depósitos de leídos, en J_{1}/I_{1}, J_{2}/I_{2} e J_{3}/I_{3}, respectivamente. En los pasos S15, S25 y S35, los bloques leídos con escala modificada son combinados en un solo bloque acumulado de vídeo, tal como el ilustrado en 850 en la figura 8, utilizando una traslación integral, para crear uno de tales bloques acumulados de vídeo para cada una de las tres escalas consideradas en el ejemplo de la figura 9. En los pasos S16, S26 y S36, se efectúa un algoritmo de detección para cada uno de los tres bloques acumulados de vídeo producido en los pasos S15, S25 y S35.
Por ejemplo, el algoritmo de detección puede transformar los tres bloques acumulados de vídeo desde el dominio espacial al de frecuencias, utilizando, por ejemplo, una transformada discreta de Fourier o del Coseno. En el caso de las DCT, pueden efectuarse varias transformadas, una para cada píxel del bloque acumulado de vídeo. Por ejemplo, si los bloques acumulados de vídeo son de un tamaño de N x N, puede efectuarse un número igual de N*N de tales DCT. En el paso S4, son comparados los resultados de las comparaciones efectuadas en los pasos S16, S26 y S36 y se selecciona el mejor resultado, como se ilustra en el paso S5. Por ejemplo, cuando se efectúan las DCT en los pasos S16, S26 y S36, se comparan las potencias de todas las (3*N*N) DCT bidimensionales, y la DCT que tenga la mayor potencia apuntará al desplazamiento, si lo hay, de la marca de agua dentro de los bloques de marca de agua y a la escala a la cual se modificó la escala de la marca de agua dentro de la cadena de vídeo. El método termina en el paso S6.
Aunque la divulgación detallada anterior ha descrito modos de realización preferidos de la presente invención, debe entenderse que la descripción anterior es solamente ilustrativa. Por ejemplo, pueden utilizarse métodos de detección distintos a los descritos específicamente. Más aún, los bloques leídos pueden tener un tamaño diferente del descrito.

Claims (18)

1. Un método para detectar una marca de agua incrustada en una cadena de vídeo con marca de agua formada por sucesivas imágenes, habiendo sido modificada la escala de la cadena de vídeo con marca de agua por una escala desconocida entre un número finito predeterminado de escalas, que comprende, para cada una del número finito predeterminado de escalas, los pasos de:
dividir la cadena de vídeo con marca de agua en una pluralidad de bloques de marca de agua con escala modificada de igual tamaño;
leer la pluralidad de bloques con marca de agua de escala modificada en una pluralidad de bloques leídos;
acumular cada uno de la pluralidad de bloques leídos en un depósito de un número predeterminado de depósitos de bloques leídos, donde los bloques leídos acumulados en cada uno de los depósitos de bloques leídos tienen el mismo descentramiento entre el inicio de ese bloque leído y el inicio apropiado de los bloques de marca de agua, por lo que la fortaleza de la marca de agua es reforzada mientras se desenfatiza la señal de la cadena de vídeo;
volver a modificar la escala de cada uno de los depósitos de bloques leídos acumulados por la inversa de la escala respectiva del número finito predeterminado de escalas;
combinar los depósitos de bloques leídos acumulados cuya escala se ha vuelto a modificar en un solo bloque acumulado de vídeo; y
evaluar una cantidad predeterminada dentro del bloque de vídeo acumulado para detectar la marca de agua.
2. Un método como se reivindica en la reivindicación 1, en el que el número predeterminado de depósitos de bloques leídos está determinado por cada escala del respectivo número finito predeterminado de escalas.
3. Un método como se reivindica en la reivindicación 2, en el que los bloques de marca de agua con escala modificada son de un tamaño de N*(I_{H}/J_{H}) x N*(I_{V}/J_{V}), donde una marca de agua original tiene un tamaño de N x N y donde (I_{H}/J_{H}) e (I_{V}/J_{V}) son escalas horizontal y vertical, respectivamente, y donde el número predeterminado de depósitos de bloques leídos es I_{H} para cada escala horizontal e I_{V} para cada escala vertical.
4. Un método como se reivindica en cualquier reivindicación precedente, en el que los bloques leídos son del mismo tamaño para cada una de las escalas del número predeterminado de escalas y son suficientemente grandes para acomodar una marca de agua completa con escala modificada.
5. Un método como el reivindicado en cualquier reivindicación precedente, en el que el paso de evaluación incluye el paso de transformación del bloque acumulado de vídeo correspondiente a cada escala del número finito predeterminado de escalas en un dominio de frecuencias.
6. Un método como el reivindicado en la reivindicación 5, en el que el paso de transformación incluye la aplicación de una DCT o una DFT al bloque acumulado de vídeo correspondiente a cada escala del número finito predeterminado de escalas.
7. Un método como el reivindicado en la reivindicación 6, en el que la cantidad predeterminada a evaluar comprende una potencia de la DCT o DFT, y donde el paso de evaluación incluye la selección de la DCT o DFT con mayor potencia, identificando la DCT o DFT con mayor potencia la escala correcta de la marca de agua entre el número de escalas predeterminado y el desplazamiento correcto de la marca de agua dentro de los bloques de la marca de agua.
8. Un método como el reivindicado en cualquier reivindicación precedente, en el que los bloques leídos son acumulados en depósitos de bloques leídos distribuyendo cíclicamente bloques leídos sucesivos con el mismo descentramiento relativo a los respectivos bloques de marca de agua en un respectivo depósito de bloques leídos de un número predeterminado de depósitos de bloques leídos.
9. Un método como el reivindicado en la reivindicación 8, en el que el número predeterminado de depósitos de bloques leídos está relacionado con la escala aplicada a los bloques de la marca de agua.
10. Un método como el reivindicado en la reivindicación 9, en el que la escala aplicada a los bloques de marca de agua es I/J donde I y J con primos entre sí y donde el paso de distribución distribuye cíclicamente los bloques leídos en los respectivos I depósitos de bloques leídos.
11. Un método como el reivindicado en la reivindicación 10, en el que para cada escala de vídeo de un número predeterminado n de escalas de vídeo de formato I_{n}/J_{n} donde I_{n} y J_{n} son primos entre sí, cada bloque leído I_{n}^{simo} es distribuido en el mismo depósito de bloques leídos entre el número predeterminado de depósitos de bloques leídos.
12. Un método como el reivindicado en la reivindicación 11, en el que el número predeterminado de depósitos de bloques leídos es I_{n}.
13. Un método como el reivindicado en cualquier reivindicación precedente, en el que los depósitos de bloques leídos son espacios de memoria dentro de un dispositivo de memoria, los bloques leídos son acumulados en depósitos de bloques leídos almacenando bloques leídos sucesivos en espacios de memoria y acumulando los bloques leídos sucesivos en los espacios de memoria.
14. Un método como el reivindicado en cualquier reivindicación precedente, en el que los depósitos de bloques leídos se corresponden, cada uno de ellos, con descentramientos de los píxeles de los inicios de los bloques leídos con relación a los inicios de los bloques de marca de agua dentro de la cadena de vídeo.
15. Un método como el reivindicado en cualquier reivindicación precedente, en el que el paso de evaluación incluye el paso de detectar un desplazamiento de la marca de agua dentro de los bloques de la marca de agua.
16. Un método como el reivindicado en cualquier reivindicación precedente, en el que cada uno de los pasos de leer, acumular, volver a modificar la escala, combinar y evaluar son efectuados para cada una de las escalas dentro del número finito predeterminado de escalas.
17. Un método como el reivindicado en la reivindicación 16, que comprende además la selección de un resultado de los pasos de evaluación, identificando dicho resultado seleccionado la escala correcta y el desplazamiento de la marca de agua en los bloques de la marca de agua.
18. Un dispositivo de detección de marcas de agua para detectar una marca de agua incrustada en una cadena de vídeo con marca de agua, habiendo sido modificada la escala de la cadena de vídeo por una escala desconocida entre un número finito predeterminado de escalas, que comprende:
medios para dividir la cadena de vídeo con marca de agua en una pluralidad de bloques de marca de agua de igual tamaño con escala modificada;
medios para leer la pluralidad de bloques de marca de agua con escala modificada en una pluralidad de bloques leídos;
medios para acumular cada uno de los bloques de la pluralidad de bloques leídos en un depósito de un número predeterminado de depósitos de bloques leídos, donde los bloques leídos acumulados en cada depósito de bloques leídos tienen, cada uno de ellos, el mismo descentramiento entre el inicio de ese bloque leído y un inicio apropiado de los bloques de la marca de agua, por lo que la fortaleza de la marca de agua es reforzada mientras que la señal de la cadena de vídeo es desenfatizada;
medios para volver a modificar la escala de cada uno de los depósitos de bloques leídos acumulados por la inversa de la escala respectiva de un número finito predeterminado de escalas;
medios para combinar los depósitos de bloques leídos acumulados con escala modificada en un solo bloque de vídeo acumulado; y
medios para evaluar una cantidad predeterminada dentro del bloque acumulado de vídeo para detectar la marca de agua.
ES99952141T 1998-05-20 1999-02-17 Procedimiento y aparato para detectar una marca de agua para escalas especificas y arbitrariamente desplazadas. Expired - Lifetime ES2200562T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US8608498P 1998-05-20 1998-05-20
US86084P 1998-05-20

Publications (1)

Publication Number Publication Date
ES2200562T3 true ES2200562T3 (es) 2004-03-01

Family

ID=22196156

Family Applications (1)

Application Number Title Priority Date Filing Date
ES99952141T Expired - Lifetime ES2200562T3 (es) 1998-05-20 1999-02-17 Procedimiento y aparato para detectar una marca de agua para escalas especificas y arbitrariamente desplazadas.

Country Status (19)

Country Link
EP (1) EP1080584B1 (es)
JP (1) JP3542557B2 (es)
KR (1) KR100362801B1 (es)
CN (1) CN1178511C (es)
AT (1) ATE241886T1 (es)
AU (1) AU743639B2 (es)
BR (1) BR9910620A (es)
CA (1) CA2332548C (es)
DE (1) DE69908352T2 (es)
DK (1) DK1080584T3 (es)
ES (1) ES2200562T3 (es)
HK (1) HK1035282A1 (es)
IL (1) IL139544A (es)
MX (1) MXPA00011331A (es)
NZ (1) NZ507795A (es)
PT (1) PT1080584E (es)
RU (1) RU2208301C2 (es)
TW (1) TW432335B (es)
WO (1) WO1999060791A1 (es)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6108434A (en) * 1997-09-12 2000-08-22 Signafy, Inc. Counteracting geometric distortions for DCT based watermarking
JP2001189844A (ja) * 1999-12-28 2001-07-10 Nec Corp 情報挿入/検出方式
EP1156660A3 (en) * 2000-01-28 2003-07-02 M. Ken Co. Ltd. Device and method for detecting digital watermark information
JP2001275115A (ja) 2000-03-23 2001-10-05 Nec Corp 電子すかしデータ挿入装置および検出装置
JP2001285607A (ja) * 2000-03-29 2001-10-12 Nec Corp 電子透かし挿入器及び電子透かし検出器並びにそれらに用いる電子透かし挿入方法及び電子透かし検出方法
KR100374665B1 (ko) * 2001-04-13 2003-03-04 주식회사 마크애니 디지털 워터마크의 삽입 및 검출방법과 이를 이용한워터마크 삽입/검출 장치
KR100378222B1 (ko) * 2001-04-21 2003-03-29 주식회사 마크애니 디지털 워터마크의 삽입 및 검출방법과 이를 이용한워터마크 삽입/검출 장치
JP4344504B2 (ja) * 2002-04-17 2009-10-14 株式会社日立製作所 電子透かし情報の検出方法
AU2003239733A1 (en) * 2002-06-24 2004-01-06 Koninklijke Philips Electronics N.V. Real-time signature embedding in video
US7561715B2 (en) * 2002-08-28 2009-07-14 Koninklijke Philips Electronics N.V. Method and arrangement for watermark detection
MXPA05013567A (es) * 2003-06-25 2006-08-18 Thomson Licensing Metodo de codificacion y aparato para la insercion de marca de aguas en una corriente de bits de video comprimido.
DE102004021404B4 (de) 2004-04-30 2007-05-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Wasserzeicheneinbettung
ITMI20050100A1 (it) 2005-01-25 2006-07-26 Technicolor S P A Tecnica di filigranatura di una pellicola cinematografica
US7843974B2 (en) 2005-06-30 2010-11-30 Nokia Corporation Audio and video synchronization
DE102008014409A1 (de) 2008-03-14 2009-09-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Einbetter zum Einbetten eines Wasserzeichens in eine Informationsdarstellung, Detektor zum Detektieren eines Wasserzeichens in einer Informationsdarstellung, Verfahren und Computerprogramm
DE102008014311A1 (de) * 2008-03-14 2009-09-17 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Einbetter zum Einbetten eines Wasserzeichens in eine Informationsdarstellung, Detektor zum Detektieren eines Wasserzeichens in einer Informationsdarstellung, Verfahren, Computerprogramm und Informationssignal
CN101493928B (zh) * 2009-02-10 2011-06-15 国网信息通信有限公司 数字水印嵌入、提取和量化步长协调因子优化方法及装置
WO2012164361A1 (en) 2011-05-27 2012-12-06 Nds Limited Frequency-modulated watermarking
RU2467486C1 (ru) * 2011-08-09 2012-11-20 Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) Способ встраивания сжатого сообщения в цифровое изображение

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9616571D0 (en) * 1996-08-07 1996-09-25 Central Research Lab Ltd Method and apparatus for coding information
US6108434A (en) * 1997-09-12 2000-08-22 Signafy, Inc. Counteracting geometric distortions for DCT based watermarking

Also Published As

Publication number Publication date
DK1080584T3 (da) 2003-09-22
WO1999060791A1 (en) 1999-11-25
EP1080584A1 (en) 2001-03-07
DE69908352T2 (de) 2004-04-08
RU2208301C2 (ru) 2003-07-10
MXPA00011331A (es) 2002-04-17
BR9910620A (pt) 2001-01-30
CN1178511C (zh) 2004-12-01
JP3542557B2 (ja) 2004-07-14
CN1301463A (zh) 2001-06-27
NZ507795A (en) 2003-06-30
KR20010052373A (ko) 2001-06-25
TW432335B (en) 2001-05-01
JP2002516538A (ja) 2002-06-04
CA2332548A1 (en) 1999-11-25
KR100362801B1 (ko) 2002-11-29
AU743639B2 (en) 2002-01-31
HK1035282A1 (en) 2001-11-16
CA2332548C (en) 2003-10-07
PT1080584E (pt) 2003-10-31
IL139544A0 (en) 2002-02-10
EP1080584B1 (en) 2003-05-28
DE69908352D1 (de) 2003-07-03
AU3296099A (en) 1999-12-06
ATE241886T1 (de) 2003-06-15
IL139544A (en) 2005-07-25

Similar Documents

Publication Publication Date Title
ES2200562T3 (es) Procedimiento y aparato para detectar una marca de agua para escalas especificas y arbitrariamente desplazadas.
ES2297919T3 (es) Deteccion de marca de agua.
FI105418B (fi) Varmennuskoodin kätkeminen sähköiseen signaaliin
US6771797B2 (en) Watermarks carrying content dependent signal metrics for detecting and characterizing signal alteration
WO2000068871A1 (en) High redundancy system and method for watermarking digital image and video data
EP1519562A1 (en) Color selection scheme for digital video watermarking
US9606507B2 (en) Method for integrating a synthetic hologram in a halftone image
US10943327B2 (en) Method and device for storing image data
Chen et al. Gray images embedded in a color image and encrypted with FRFT and Region Shift Encoding methods
CN101297320A (zh) 在信息信号中嵌入数据的方法
US20040064702A1 (en) Methods and apparatus for digital watermarking and watermark decoding
KR101135472B1 (ko) 차이값 히스토그램을 이용한 가역 워터마크 삽입, 추출 및 원본 복원 방법
CN104484853A (zh) 对包含图形标志的图片进行裁剪的方法和装置
JP5731422B2 (ja) 電子透かし埋め込み装置、電子透かし検出装置、電子透かし埋め込み方法、電子透かし検出方法及びプログラム
KR100772754B1 (ko) 소스 이미지로부터 파생된 이미지에 워터마크를 삽입하고검출하는 방법 및 장치
Venkatesan et al. A new data hiding scheme with quality control for binary images using block parity
Bhatnagar et al. Robust watermarking in multiresolution Walsh-Hadamard transform
KR100971221B1 (ko) 환경 변화에 강한 워터마크 삽입 및 검출 시스템 및 방법
US20030021443A1 (en) Embedding auxiliary data in a signal
Lee Reversible watermarking exploiting differential histogram modification with error pre-compensation
KR970707514A (ko) 텍셀 캐시를 사용한 영상 텍스처 맵핑(Image texture mapping using texel caches)
Bae et al. A New Watermark-embedded Image Generation for Display-capture based Mobile Watermarking
Singh et al. Securing multiplexed information by in-plane rotation of random phase diffusers constituting a sandwich diffuser placed in the Fourier plane of a double random phase encoding system
JP7206591B2 (ja) データ表示装置、方法、およびプログラム
CN113949843A (zh) 图像处理系统