MXPA05013572A - Metodo de decodificacion y aparato para la insercion de marca de aguas en una corriente de bits de video comprimido. - Google Patents

Metodo de decodificacion y aparato para la insercion de marca de aguas en una corriente de bits de video comprimido.

Info

Publication number
MXPA05013572A
MXPA05013572A MXPA05013572A MXPA05013572A MXPA05013572A MX PA05013572 A MXPA05013572 A MX PA05013572A MX PA05013572 A MXPA05013572 A MX PA05013572A MX PA05013572 A MXPA05013572 A MX PA05013572A MX PA05013572 A MXPA05013572 A MX PA05013572A
Authority
MX
Mexico
Prior art keywords
block
bits
bit
identification code
unique identification
Prior art date
Application number
MXPA05013572A
Other languages
English (en)
Inventor
Daniel Richard Girellini
Original Assignee
Thomson Licensing
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 Thomson Licensing filed Critical Thomson Licensing
Publication of MXPA05013572A publication Critical patent/MXPA05013572A/es

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/0021Image watermarking
    • G06T1/0042Fragile watermarking, e.g. so as to detect tampering
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/48Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using compressed domain processing techniques other than decoding, e.g. modification of transform coefficients, variable length coding [VLC] data or run-length data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2201/00General purpose image data processing
    • G06T2201/005Image watermarking
    • G06T2201/0052Embedding of the watermark in the frequency domain

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Image Processing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Se describen un codificador (600) de video, un decodificador (700) y metodos (200, 300, 400, 500) para marcar con agua el contenido de video, el codificador incluye una unidad (630) de cuantificacion para cuantificar coeficientes de la corriente de bits de video, y una unidad (635) de incrustacion en comunicacion de senal con la unidad de cuantificacion para incrustar bits de la huella dactilar digital en bloques de la corriente de bits de video como una funcion de la paridad del numero de coeficientes codificados en el bloque, y el decodificador incluye una unidad (715) de deteccion para detectar bits de la huella dactilar digital en bloques de la corriente de bits de video como una funcion de la paridad del numero de coeficientes codificados en el bloque y una unidad (720) de cuantificacion invertida, en comunicacion de senal con la unidad de deteccion para cuantificar en forma invertida los coeficientes de la corriente de bits de video.

Description

Published: For two-letter codes and other abbreviations. refer to the "Guid- — with inlernalional search repo anee Noles on Codes andAbbreviations" appearing at the begin- — befare the expiration of the time limil for amending the ning ofeach regular issue ofthe PCT Gazette. claims and to be republished in the event of receipt of amendmenís MÉTODO DE DECODIFICACION Y APARATO PARA LA INSERCIÓN DE MARCA DE AGUAS EN UNA CORRIENTE DE BITS DE VIDEO COMPRIMIDO REFERENCIA CRUZADA CON SOLICITUDES RELACIONADAS Esta solicitud reclama el beneficio de la Solicitud Provisional de Estados Unidos No. de Serie 60/482,302 (Referencia del Abogado No. PU030163), presentada el 25 de junio de 2003 y titulada "METHOD AND APPARATUS FOR INSERTION AND DETECTION OF FINGERPRINTS IN A COMPRESSED VIDEO BITSTREAM" (MÉTODO Y APARATO PARA LA INSERCIÓN Y DETECCIÓN DE HUELLAS DACTILARES EN UNA CORRIENTE DE BITS DE VIDEO COMPRIMIDO), la cual se incorpora aquí como referencia en su totalidad.
CAMPO DE LA INVENCIÓN La presente invención está dirigida a codificadores y decodificadores de video y más en particular, a un aparato y a un método para la inserción y/o detección de marca de aguas.
ANTECEDENTES DE LA INVENCIÓN Con frecuencia es deseable poder identificar la fuente de las corrientes de bits de video comprimido, por ejemplo, para identificar a distribuidores no autorizados de material con derechos de autor. El codificador utilizado para crear la corriente de bits se puede identificar en forma única con la inserción de una huella dactilar (o marca de agua) durante el proceso de codificación. En forma ideal, el proceso de inserción de marca de agua debe ser menos complejo en cuestiones de computación y la marca de agua no debe detectarse visualmente y debe tener bajo impacto en la efectividad de codificación. Se han propuesto varias técnicas para insertar marca de aguas frágiles y/o robustas invisibles dentro de imágenes y video comprimidos. Una clase de estas técnica genera una señal de marca de agua en la Transformación de Coseno Discontinuo (DCT), una wavelet o en otros dominios de transformación, con base en la sensibilidad del sistema humano visual (HVS) ante la respuesta a la frecuencia. Algunos sistemas operan en los coeficientes de transformación DCT cuantificados de imágenes/video comprimidos MPEG o JPEG, en donde el bit menos importante (LSB) de ciertos coeficientes de transformación se ajustan para coincidir con la paridad del bit de la señal de marca de agua. De conformidad con esto, existe la necesidad de un codificador y un decodificador con baja complejidad computacional para la inserción y detección de marca de aguas esencialmente no detectables visualmente.
BREVE DESCRIPCIÓN DE LA INVENCIÓN Estos y otras desventajas de la técnica previa son solucionadas por un aparato y método que proporcionan un cambio de canal rápido de contenido de video comprimido. De conformidad con los principios de la presente invención, se describe un decodificador para detectar contenido de video con marcas de agua, el decodificador incluye una unidad de detección para detectar bits de la huella dactilar digital en bloques de una corriente de bits de video como una función de la paridad del número de coeficientes codificados en el bloque, y una unidad de cuantificación invertida en comunicación de señal con la unidad de detección para cuantificar en forma invertida los coeficientes de la corriente de bits de video. ,. Estos y otros aspectos, características y ventajas de la presente invención serán evidentes a partir de la siguiente descripción detallada de las modalidades ejemplificativas, la cual se debe leer junto con los dibujos acompañantes.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La presente invención se comprenderá mejor de conformidad con las siguientes Figuras ejemplificativas, en donde: La Figura 1 es un diagrama de flujo para un codificador en bloque. La Figura 2 es un diagrama de flujo para un codificador en bloque con la inserción de la huella dactilar de conformidad con los principios de la presente invención. La Figura 3 muestra un diagrama de flujo para un codificador en bloque con la inserción de la huella dactilar forzada de conformidad con los principios de la presente invención. La Figura 4 muestra un diagrama de flujo para un codificador en bloque con la inserción de huella dactilar requerida de conformidad con los principios de la presente invención. La Figura 5 muestra un diagrama de flujo para un decodificador en bloque con la detección de huella dactilar de conformidad con los principios de la presente invención. La Figura 6 muestra un diagrama en bloque para un codificador de video que tiene un codificador en bloque para la inserción de huella dactilar de conformidad con los principios de la presente; invención; y La Figura 7 muestra un diagrama en bloque para un decodificador de video que tiene un decodificador en bloque para la detección de huella dactilar de conformidad con los principios de la presente invención.
DESCRIPCIÓN DETALLADA DE LA INVENCIÓN Las modalidades de la presente invención proporcionan un método y aparato con menor complejidad computacional para la inserción y detección de marca de aguas esencialmente no detectables en forma visual. En la siguiente descripción, un codificador y un decodificador se pueden llamar colectivamente como CODEC con propósito de simplificar, aunque las modalidades del método y aparato pueden tener la capacidad de solamente codificar, solamente decodificar o codificar y decodificar. Los elementos similares se pueden indicar con números similares que tienen dígitos específicos de las Figuras en la posición centésima de las diferentes figuras. Los términos "marca de aguas" y "huella dactilar" se utilizan en forma intercambiable. Las normas populares de compresión de video, como las MPEG-2 MPEG-4 y JVT contienen cuadros 1 intra-codificados, y cuadros P y B inter-codificados. Los puntos de acceso aleatorio en las corrientes de bits de video comprimido pueden ser posibles al agrupar las imágenes en grupos de imágenes (GOP) en MPEG-2 o en períodos de renovación del decodificador independiente (IDR). En estas normas, las imágenes codificadas se dividen en bloques no traslapados. Cada bloque se transforma, con el uso de la transformación de coseno discontinuo (DCT) o una transformación similar, se cuantifican y se codifican con longitud de marcha, de modo que solamente se codifican los coeficientes cuantificados no cero. El proceso de cuantificacíón puede ser uniforme o no uniforme, y puede emplear zonas muertas y/o de umbral. Por ejemplo, el software de referencia JVT JM emplea un umbral mediante el cual, cuando el número de coeficientes no cero después de una primera etapa del proceso de cuantificación es menor que el valor del umbral, T, se aplica una segunda etapa del proceso de cuantificación para forzar a todos los coeficientes en el bloque a ser cuantificado en cero. La presente invención ilustra los principios y varias modalidades de la presente invención. Por lo tanto, las personas experimentadas en la técnica podrán contemplar varios arreglos y disposiciones que aunque no se describen o muestran explícitamente en la presente, incorporan los principios de la invención y se encuentran incluidos dentro del alcance y espíritu de la misma. Todos los ejemplos y el lenguaje condicional utilizados aquí, tienen la intención de expresar los propósitos pedagógicos para ayudar al lector a comprender los principios y los conceptos otorgados por el inventor a la técnica, y se deben considerar sin limitación para los ejemplos y condiciones específicamente descritos aquí. También, todas las declaraciones que describen principios, aspectos y modalidades de la invención, así como los ejemplos específicos de la misma, tienen la intención de abarcar tanto los equivalentes estructurales como funcionales de la misma. Además, se tiene la intención de que tales equivalentes incluyan los equivalentes ya conocidos como los equivalentes desarrollados en un futuro, es decir, cualquier elemento desarrollado para llevar a cabo la misma función, sin importar su estructura. De este modo, por ejemplo, las personas experimentadas en la técnica podrán apreciar que los diagramas en bloque representan las vistas conceptuales de la circuitería ilustrativa que incorpora los principios de la invención. De manera similar, se debe observar que los diagramas de flujo, diagramas de transición de estado, pseudo códigos, y sus semejantes representan varios procesos que pueden representarse esencialmente en un medio legible por computadora y por ello pueden ser ejecutados por una computadora o con un procesador, ya sea que la computadora y el procesador se muestren o no explícitamente. Las funciones de los diferentes elementos mostrados en las Figuras pueden ser provistas con el uso de un hardware dedicado, así como con un hardware con la capacidad de ejecutar un software asociado con ei software apropiado. Cuando se proporcionan por un procesador, las funciones pueden ser provistas por un único procesador dedicado, por un único procesador compartido, o por una pluralidad de procesadores individuales, algunos de los cuales pueden ser compartidos. Además, el uso explícito del término "procesador" o "controlador" no debe ser considerado como refiriéndose exclusivamente a un hardware con la capacidad de ejecutar software, y puede implícitamente incluir, sin limitación un hardware procesador de señal digital ("DSP"), una memoria de solamente lectura ("ROM") para almacenar el software, una memoria de acceso aleatorio ("RAM") y un almacenamiento no volátil. Otro hardware convencional y/o personalizado, también se puede incluir. De igual forma, cualquier conmutador mostrado en ias Figuras es solamente conceptual. Su función puede ser llevada a cabo a través de la operación de un programa lógico, con lógicos dedicados, con la interacción de un control de programa y lógicos dedicados, o incluso en forma manual, o una técnica particular a ser seleccionada por el usuario, según se entienda mejor a partir del contexto.
Dentro de las reivindicaciones cualquier elemento expresado como un medio para llevar a cabo una función específica tiene la intención de abarcar cualquier forma para llevar a cabo esa función, por ejemplo, a) en combinación de elementos de circuito que lleven a cabo esa función o b) un software en cualquier forma, incluyendo, firmware, microcódigo o su semejante combinado con la circuitería apropiada para ejecutar ese software para llevar a cabo la función. La invención según se define por tales reivindicaciones reside en el hecho de que las funciones provistas por varios medios descritos se combinan y se llevan a cabo juntas en la manera en que se describe en las reivindicaciones. Por lo tanto, el solicitante considera cualquier medio que pueda proporcionar esas funciones como un equivalente a los mostrados aquí. Como se muestra en la Figura 1, un codificador en bloque se indica generalmente con el número 100 de referencia. El codificador 100 en bloque incluye un bloque 110 de inicio que pasa el control a un bloque 114 de función. El bloque 114 de función pronostica un bloque con el uso de intra o inter-predicción, que forma un bloque residual, y pasa el control a un bloque 116 de función. El bloque 116 de función, a su vez, transforma el bloque residual, que forma los coeficientes de transformación, y pasa el control a un bloque 118 de función. El bloque 118 de función cuantifica los coeficientes de transformación, forma coeficientes cuantificados y pasa el control a un bloque 120 de función. El bloque 120 de función, a su vez, inicíaliza una variable N con el número de coeficientes cuantificados no cero en el bloque y pasa el control a un bloque 122 de decisión. El bloque 122 de decisión verifica si N es cero y cuando N no es cero, pasa el control a un bloque 136 de función que codifica con entropía el bloque y entonces, pasa el control a un bloque 139 de fin. Sin embargo, cuando N es igual a cero, el bloque 122 de decisión para el control a un bloque 137 de función, que no codifica el bloque e indica un bloque no codificado con un patrón de bloque codificado (CBP) o al saltarse el macrobloque. El bloque 137 de función a su vez, pasa el control a un bloque 139 de fin. De este modo, la Figura 1 muestra un diagrama de flujo de un proceso de codificación de bloque para un codificador de video con base en bloques. Se forma una inter-intra predicción para el bloque, y se resta del bloque para formar un bloque residual. Para una inter-predicción, por lo general, se utiliza una compensación de movimiento. La intra-predicción se lleva a cabo diferente para diferentes normas de codificación, pero siempre utiliza la ¡nformación de los bloques vecinos o los macrobloques en la misma imagen codificada. El bloque residual entonces se transforma, con el uso de un bloque de transformación, para formar coeficientes de transformación. Los coeficientes de transformación se cuantifican para formar coeficientes cuantificados. El número de coeficientes cuantíficados, cuyos valores son no cero, N se cuentan. Cuando N es igual a cero, el bloque no se codifica. Cuando se codifican otros bloques en el mismo macrobloque, la no codificación del bloque se índica con el uso de un patrón de bloque codificado (CBP). Cuando todos los bloques en el mismo macrobloque no se codifican, el macrobloque se salta. Cuando el bloque va a ser codificado, los coeficientes no cero se codifican con entropía usando la codificación de longitud de marcha. Las modalidades de la presente invención proporcionan un método de baja complejidad para insertar y detectar una huella dactilar única en corrientes de video comprimido. Se describe un método para la inserción y detección de una huella dactilar digital frágil (o marca de agua) en una corriente de bits de video comprimido, con el fin de poder identificar el codificador utilizado para crear la corriente de bits de video comprimido. El método es particularmente apropiado para incluirse en una corriente, de bits MPEG AVC/ITU H.264. Un bit de un único código de identificación (huella dactilar) se incrusta dentro del bloque codificado en la corriente de bits al hacer coincidir la paridad del número de coeficientes codificados en el bloque con el valor del bit del código.
Esta modalidad permite incrustar una única huella dactilar dentro de una corriente de bits de video comprimido por medio del codificador de compresión de video, durante un proceso de codificación. Se crea una secuencia de huella dactilar única, FSEQ, de L bits de longitud, para identificar en forma única el codificador de video. Durante el proceso de codificación de compresión de video, un bit de la secuencia de la huella dactilar se incrusta dentro del bloque codificado, al forzar la paridad del número total de coeficientes codificados (no cero) para que el bloque coincida con el bit de la secuencia de huella dactilar. El número total de coeficientes se puede referir a los coeficientes AC solamente o a los coeficientes AC y DC. Para un bit 0, se debe codificar un número par de coeficientes no cero, mientras que para un bit 1 se debe codificar un número impar de los coeficientes no cero. Con referencia a la Figura 2, se indica un codificador en bloque con la inserción de huella dactilar con el número 200 de referencia. El codificador 200 en bloque incluye un bloque 210 de inicio que pasa el control a un bloque 214 de función. El bloque 214 de función pronostica un bloque con el uso de la intra o inter-predicción, lo que forma un bloque residual, y pasa el control a un bloque 216 de función. El bloque 216 de función, a su vez, transforma el bloque residual, forma los coeficientes de transformación y pasa el control a un bloque 218 de función. El bloque 218 de función cuantifica los coeficientes de transformación, forma coeficientes cuantificados y pasa el control a un bloque 220 de función. El bloque 220 de función, a su vez, inicializa una variable N con el número de coeficientes cuantificados no cero en el bloque, y pasa el control a un bloque 222 de decisión. El bloque 222 de decisión verifica si N es cero, y cuando N es igual a cero, pasa el control a un bloque 237 de función, que no codifica el bloque e indica el bloque no codificado con un patrón de bloque codificado (CBP) o al saltarse el macrobloque. El bloque 237 de función a su vez, pasa el control a un bloque 239 de fin. Cuando N es igual a cero, el bloque 222 de decisión pasa el control a un bloque 230 de función, que adquiere el siguiente bit de la secuencia F de huella dactilar, y pasa el control a un bloque 232 de decisión. El bloque 232 de decisión verifica si la secuencia de huella dactilar F es igual al modulo 2 de N, y cuando F es igual al módulo 2 de N, pasa el control a un bloque 236 de función, que codifica con entropía el bloque, y entonces pasa el control a un bloque 239 de fin. Sin embargo, cuando F no es igual al módulo 2 de N, el bloque 232 de decisión pasa el control a un bloque 234 de función, que re-cuantifica el bloque para forzar un nuevo valor de N, en donde F es igual al módulo 2 de N, y N es mayor que cero. El bloque 234 de función, a su vez, pasa el control a un bloque 236 de función, que se describe antes. De esta forma, la Figura 2 muestra un proceso de codificación en bloque para el codificador de video con base en bloque con inserción de huella dactilar. Se forma una ínter o intra-predicción para el bloque y se resta del bloque para formar un bloque residual. El bloque residual entonces se transforma, con el uso de una transformación en bloque, para formar coeficientes de transformación. Los coeficientes de transformación se cuantifican, para formar coeficientes cuantificados. El número de coeficientes cuantificados cuyos valores son no cero, N, se cuentan. Cuando N es igual a cero, el bloque no se codifica, y un bit de la secuencia de huella dactilar no se incrusta dentro de este bloque. Cuando N ? 0, el bloque se codifica, y un bit F de la secuencia de huella dactilar se incrusta dentro del bloque. Cuando N %2 (en donde % es el operador de módulo) es igual a F, no es necesaria ninguna acción para incrustar el bit F dentro del bloque, y se codifica con entropía. Cuando N% 2 no es igual a F, el bloque se re-cuantifica para forzar un nuevo valor de N, de modo que N%2 = F y N > 0. Cuando se codifican otros bloques en el mismo macrobloque, la no codificación de un bloque se indica con el uso de un patrón de bloque codificado (CBP). Cuando todos los bloques en el mismo macrobloque no se codifican, el macrobloque se salta. Cuando el bloque se va a codificar, los coeficientes no cero se codifican con entropía con el uso de una codificación de longitud de marcha. Cuando es necesaria la re-cuantificación del bloque, un codificador puede seleccionar cualquier método para re-cuantificar el bloque, de modo que el nuevo valor de N cumple con las condiciones de que N%2 = F y N > 0. El número de coeficientes no cero en el bloque puede aumentar o disminuir por uno para coincidir con el bit de la señal de huella dactilar al re-cuantificar el bloque. Es necesario que el proceso de re-cuantificación no genere bloques sin coeficientes no cero, ya que estos bloques no serán codificados, y por lo tanto, el detector de marca de agua no podrá determinar que este bloque tenía un bit de huella dactilar incrustado en el mismo.
De este modo, cuando el número de coeficientes no cero en el bloque es uno, el número debe aumentarse, mejor que disminuirse.
El valor de N se puede disminuir por uno al re-cuantificar en cero un coeficiente de transformación que originalmente correspondía a un coeficiente cuantificado no-cero. El codificador debe seleccionar el coeficiente de transformación con el menor valor o el coeficiente no cero de posición de frecuencia más alta para ser re-cuantifícado en cero, por ejemplo, para reducir al mínimo el efecto en la calidad del video comprimido. El valor de N puede aumentar al re-cuantificar un coeficiente cuantificado con valor de cero a un valor no cero, por ejemplo, - al ajustar en 1. El codificador puede seleccionar re-cuantificar en 1 el coeficiente de transformación en la posición que es una posición de frecuencia más alta en el orden de exploración hasta el último coeficiente cuantificado no cero de la primera etapa de cuantificación. En la norma de compresión JVT, cuando se utiliza una codificación con entropía CAVLC, los primeros se codifican en forma eficiente, de modo que al agregar un coeficiente no cero en esta manera, tendrá muy poco impacto en el número de bits requeridos para codificar este bloque. Se puede utilizar la misma estrategia con otros métodos de codificación con entropía, como el CABAC. Se predeterminada un patrón para seleccionar los bloques codificados a los cuales se insertará un bit de huella dactilar y se utiliza por el codificador y por el detector de huella dactilar. Los primeros bloque L codificados se pueden utilizar, para codificar la secuencia de L bits. De manera alternativa, cada M° bloque codificado, para cualquier valor predeterminado de M, se puede utilizar para codificar la secuencia de L bits en los bloques codificados L * M. También se pueden utilizar otros patrones. La secuencia de huella dactilar de L bit se puede repetir tantas veces en la secuencia de video o se inserta una sola vez. Una vez que se ha incrustado la secuencia L bit completa, el proceso de incrustación de huella dactilar puede detenerse hasta que se alcance un punto de reinicio específico. En una modalidad preferida, la secuencia de huella dactilar de L bit se repita para cada grupo de imágenes o IDR. Un codificador puede seleccionar requerir que la secuencia L bit completa sea incrustada dentro de algún número de imágenes de video, rebanadas o macrobloques, que corresponde a cierto número de bloques B. En una modalidad preferida, el codificador requiere que la secuencia L bit completa sea codificada en cada ¡magen I. Antes de la codificación de una imagen de video, mientras se conoce en cuántos bloques se divide la imagen de video, no se conoce cuántos de estos bloques serán clasificados como no codificados. Solamente los bloques clasificados como codificados se utilizan para incrustar un bit de huella dactilar. Con el fin de cumplir con la restricción de que la secuencia de huella dactilar del bit L completa se incrustada dentro del número deseado de bloques b, el codificador puede forzar a los bloques que originalmente no estaban codificados, para ser codificados, para que el bit de la huella dactilar se pueda incrustar dentro de ese bloque. Esto se realiza al re-cuantificar el bloque de modo que su nuevo número de coeficientes N no cero es mayor que cero.
Con referencia ahora a la Figura 3, un codificador en bloque con inserción de huella dactilar forzada se indica, por lo general, con el número 300 de referencia. El codificador 300 en bloque incluye un bloque 310 de inicio que pasa el control a un bloque 314 de función. El bloque 314 de función pronostica un bloque con el uso de la intra o inter-predicción, lo que forma un bloque residual y pasa el control a un bloque 316 de función. El bloque 316 de función, a su vez, transforma el bloque residual, forma los coeficientes de transformación y pasa el control a un bloque 318 de función. El bloque 318 de función cuantifica los coeficientes de transformación, forma coeficientes cuantificados y pasa el control a un bloque 320 de función. El bloque 320 de función a su vez, inicializa una variable N con el número de coeficientes cuantificados no cero en el bloque, y pasa el control a un bloque 330 de función, el cual adquiere el siguiente bit de la secuencia F de huella dactilar y pasa el control a un bloque 333 de decisión. El bloque 333 de decisión verifica si F de la secuencia de huella dactilar es igual al módulo 2 de N y si N es mayor que cero, y cuando ambas condiciones se cumplen, pasa el control a un bloque 336 de función, que codifica con entropía ese bloque y para el control a un bloque 339 de fin. Sin embargo, cuando F no es igual al módulo 2 de N o N no es mayor que cero, el bloque 333 de decisión pasa el control a un bloque 334 de función, que re-cuantifica el bloque para forzar un nuevo valor de N en donde F es igual al módulo 2 de N y N es mayor que cero. El bloque 334 de función, a su vez, pasa el control a un bloque 336 de función, que se describe antes. De este modo, la Figura 3 muestra un codificador en bloque con una inserción de huella dactilar forzada. Esto es, no se permite que el bloque se codifique, de modo que se garantiza que el bit de huella dactilar se incruste en ese bloque. Los primeros pasos son idénticos a los de la Figura 2. Se forma una inter o intra-predicción para ese bloque, y se resta del bloque para formar un bloque residual. El bloque residual entonces se transforma, con el uso de la transformación en bloque, para formar coeficientes de transformación. Los coeficientes de transformación se cuantifican, para formar coeficientes cuantificados. El número de coeficientes cuantificados cuyos valores son no cero, N se cuentan. Los siguientes pasos son diferentes de la Figura 2. Cuando N>0, y F = N%2, el bloque se puede codificar con entropía. Pero cuando no se alcanzan estas condiciones, el bloque se debe re-cuantificar para que el valor de N se cambie de modo que se cumplan las condiciones. A diferencia de la Figura 2, el paso de re-cuantificación se puede requerir cuando N = 0, es decir, cuando después de la cuantificación inicial, el bloque no ha sido codificado.
Un codificador que se requiere para incrustar la secuencia de huella dactilar de bit L completa dentro de los bloques B, puede mantener el rastro de la cuenta del bloque, y de la cuenta del bloque codificado, cbc. Entonces, cuando el número de bloques dejados para codificar ya no es mayor que el número de bits de huella dactilar dejados para incrustar, el codificador forzará a los bloques restantes para ser codificados, es decir, no se permite que sean clasificados como no codificados. Como se muestra en la Figura 4, un codificador en bloque con la inserción de huella dactilar requerida se indica, por lo general, con el número 400 de referencia. El codificador 400 en bloque incluye un bloque 410 de inicio que pasa el control a un bloque 412 de circuito de inicio, el cual inicializa e después incrementa un contador de circuito be entre cero y el valor B máximo. El bloque de circuito de inicio pasa el control a un bloque 414 de función. El bloque 414 de función pronostica un bloque con el uso de la intra o inter-predicción, lo que forma un bloque residual, y pasa el control a un bloque 416 de función. El bloque 416 de función, a su vez, transforma el bloque residual, lo que forma coeficientes de transformación, y pasa el control a un bloque 418 de función. El bloque 418 de función cuantifíca los coeficientes de transformación, forma coeficientes cuantificados y pasa el control a un bloque 420 de función. El bloque 420 de función inicializa una variable N con el número de coeficientes cuantificados no cero en el bloque y pasa el control a un bloque 430 de función. El bloque 430 de función obtiene el siguiente bit de la secuencia de huella dactilar F = FSEQ(cbc) y pasa el control a un bloque 422 de decisión. El bloque 422 de decisión verifica si N es cero y cuando N es igual a cero, pasa el control a un bloque 424 de decisión, el cual verifica si B menos be es mayor que el número de bits (L) de la secuencia de huella dactilar menos la cuenta del bloque codificado (cbc). Cuando la comparación es verdadera, el bloque 424 de decisión pasa el control a un bloque 437 de función, que no codifica el bloque y señala al bloque no codificado con un patrón de bloque codificado (CBP) o al saltarse el macrobloque. El bloque 437 de función, a su vez, pasa el control aun bloque 438 de circuito de fin, que pasa el control de regreso al bloque 412 de circuito de inicio cuando el contador be de circuito no ha alcanzado el valor B máximo, o pasa el control a un bloque 439 de fin, cuando el contador be de circuito ha alcanzado el valor B máximo. Cuando B menos be no es mayor que L menos cbc, el bloque 424 de decisión pasa el control a un bloque 426 de función, que re-cuantifica el bloque para forzar un nuevo valor de N, en donde F es igual al módulo 2 de N y N es mayor que cero. El bloque 426 de función, a su vez, pasa el control a un bloque 428 de función. El bloque 428 de función incrementa la cuenta del bloque codificado (cbc) y pasa el control a un bloque 436 de función en donde codifica con entropía el bloque y entonces pasa el control a un bloque 438 de circuito de fin. Sin embargo, cuando N no es igual a cero, el bloque 422 de decisión pasa el control a un bloque 432 de decisión. El bloque 432 de decisión verifica si F de la secuencia de huella dactilar es igual al módulo 2 de N, y cuando F es igual al módulo 2 de N, pasa el control al bloque 428 de función antes descrito. Sin embargo, cuando F no es igual al módulo 2 de N, el bloque 432 de decisión pasa el control a un bloque 426 de función, antes descrito. De este modo, la Figura 4 muestra un codificador con inserción de huella dactilar requerida que forma un circuito sobre los bloques B en una rebanada o cuadro, sobre los cuales se requieren la secuencia del bit L para ser incrustado. Un contador de circuito be se utiliza para la cuenta del bloque. Para cada bloque, los pasos iniciales son los mismos que para las Figuras 2 y 3. Se forma una inter o intra-predicción para el bloque y se resta del bloque para formar un bloque residual. El bloque residual entonces se transforma, con el uso de una transformación en bloque, para formar coeficientes de transformación. Los coeficientes de transformación se cuantifican, para formar coeficientes cuantificados. El número de coeficientes cuantificados no cero N, se cuentan. Cuando N = 0, se hace otra verificación, cuando B-bc, que es el número de los bloques restantes a ser procesados, es mayor que L-cbc, que es el número de bits de secuencia de huella dactilar restantes a ser incrustados, el bloque no se codifica. Esto es, cuando B-bc > L-cbc, el bloque no se codifica. Sin embargo, cuando B-bc no es mayor que L-cbc, el bloque actual se debe codificar para que se pueda incrustar un bit de huella dactilar, con el fin de cumplir con el requerimiento que todos los bits L sean incrustados en los bloques B. La variable cbc es la cuenta del bloque codificado, que rastrea la cantidad de bloques que han sido codificados, es decir, los bloques que no fueron clasificados como no codificados. Con referencia a la Figura 5, se indica un detector de huella dactilar por lo general con el número 500 de referencia. El detector 500 de huella dactilar incluye un bloque 540 de inicio, que pasa el control a un bloque 542 de circuito de inicio. El bloque 542 de circuito de inicio inicializa la variable cbc de circuito en cero, y la incrementa en iteraciones posteriores hasta un valor máximo de L. El bloque 542 de circuito de inicio pasa el control a un bloque de función 544, el cual ajusta una cuenta N igual al número de coeficientes cuantificados no cero en un bloque, y pasa el control a un bloque 546 de función. El bloque 546 de función, a su vez, obtiene el siguiente bit de la secuencia de huella dactilar, F = FSEQ(cbc), y pasa el control a un bloque 548 de decisión. El bloque 548 de decisión verifica si F es igual al módulo 2 de N. Cuando N no es igual al módulo 2 de N, el bloque 548 de decisión pasa el control a un bloque 556 de función, el cual determina que no se detectó una huella dactilar, y pasa el control a un bloque 558 de fin. Sin embargo, cuando N es igual al módulo 2 de N, el bloque 548 de decisión pasa el control a un bloque 550 de circuito de fin, que pasa el control de regreso a un bloque 542 de circuito de inicio cuando la variable cbc de circuito no es igual a L, o de otra forma, pasa el control a un bloque 552 de función. El bloque 552 de función determina que si se detectó una huella dactilar y pasa el control a un bloque 554 de fin. De esta forma, para detectar la huella dactilar en una corriente de bits de video comprimido, los primeros bloques L codificados se prueban para ver si la marca de agua incrustada coincide con la secuencia de huella dactilar del bit L, FSEQ: Cuando se utiliza un patrón que no incrusta un bit en los primeros bloques codificados L, como por ejemplo, uno que opera en cada M° bloque, el proceso se puede ajustar para seguir el mismo patrón. En la modalidad del detector de huella dactilar de la Figura 5, los primeros bloques codificados L se ponen en circuito, con cbc como un índice de circuito. Para cada bloque, el número de coeficientes cuantificados no cero, N, se cuenta. El siguiente bit de la secuencia de huella dactilar, F = FSEQ(cbc), entonces se compara con N%2. Cuando F=N%2, el circuito continua. Cuando en cualquier punto en el circuito F ?N%2, el proceso se termina, y la huella dactilar no se detecta. Cuando el circuito se completa con la condición de F = N%2, siempre se debe cumplir para ios bloques codificados L, el proceso se termina y la huella dactilar se detecta. Cuando L es suficientemente grande, los números impares de un patrón de la corriente de bits comprimida sin huella dactilar del número de coeficientes codificados después del patrón de la secuencia de huella dactilar es muy improbable, aproximadamente 1 en 2 ? L. La detección de la huella dactilar de un único grupo de bloques L codificados puede fallar cuando la corriente de bits ha cambiado en alguna forma de la forma en que se creó originalmente, es decir, cuando ocurren errores de canal. Para proporcionar un mayor grado de confiabilidad, el detector de huella dactilar puede verificar cada GOP o IDR de la corriente de bits codificada para buscar la huella dactilar.
Con referencia ahora a la Figura 6, se muestra un codificador de video ejemplificativo para la inserción de huella dactilar indicado por lo general con el número 600 de referencia. Una entrada para el codificador 600 se conecta en comunicación de señal con una entrada no invertida de un empalme sumador 610. La salida del empalme 610 sumador se conecta en comunicación de señal con un transformador 620 de bloque. El transformador 620 se conecta en comunicación de señal con un cuantificador 630, que alternativamente, incorpora un codificador de bloque para la inserción de huella dactilar, que se conecta en comunicación de señal con un incrustador 635 de marca de agua. Las personas experimentadas en la técnica podrán reconocer que el codificador 600 solamente necesita incluir uno del incrustador 635 de marca de agua y la porción de inserción de huella dactilar del cuantificador 630. La salida del incrustador 635 se conecta en comunicación de señal con un VLC (codificador de longitud variable) 640, en donde la salida del VLC 640 es una salida disponible en forma externa del codificador 600. La salida del cuantificador 630 también se conecta en comunicación de señal con un cuantificador 650 invertido. El cuantificador 650 invertido se conecta en comunicación de señal con un transformador 660 de bloque invertido, que a su vez, se conecta en comunicación de señal con un almacenamiento 670 de imágenes de referencia. Una primera salida del almacenamiento 670 de imágenes de referencia se conecta en comunicación de señal con una primera entrada de un calculador 680 de movimiento. La entrada dei codificador 600 también se conecta en comunicación de señal con una segunda entrada del calculador 680 de movimiento. La salida del calculador 680 de movimiento, que es indicativa de los vectores de movimiento, se conecta en comunicación de señal con una primera entrada de un compensador 690 de movimiento. Una segunda salida del almacenamiento 670 de imágenes de referencia se conecta en comunicación de señal con una segunda entrada del compensador 690 de movimiento. La salida del compensador 690 de movimiento, que es indicativa de la imagen de referencia compensada de movimiento, se conecta en comunicación de señal con una entrada invertida del empalme 610 sumador. Como se muestra en la Figura 7, un decodificador de video ejemplificativo para la detección de huella dactilar se indica por lo general, con el número de referencia 700. El decodificador 700 de video incluye un VLD (decodificador de longitud variable) 710 conectado en comunicación de señal con un detector 715 de marca de agua, que se conecta en comunicación de señal con un cuantificador 720 invertido, que alternativamente incorpora un decodificador de bloque para la detección de la huella dactilar. Como lo podrán reconocer las personas experimentadas en la técnica, el decodificador 700 solamente necesita incluir un detector 715 de marca de agua y la porción de detección de huella dactilar del cuantificador 720 invertido. El cuantificador 720 invertido se conecta en comunicación de señal con el transformador 730 invertido. El transformador 730 invertido se conecta en comunicación de señal con una primera terminal de entrada de un empalme 740 sumador, en donde la salida del empalme 740 sumador proporciona la salida del decodificador 700 de video. La salida del empalme 700 sumador se conecta en comunicación de señal con un almacenamiento 750 de imágenes de referencia. El almacenamiento 750 de imágenes de referencia se conecta en comunicación de señal con un compensador 760 de movimiento, el cual se conecta en comunicación de señal con una segunda terminal de entrada del empalme 740 sumador. Estas y otras características y ventajas de la presente invención pueden alcanzarse fácilmente por las personas experimentadas en la técnica con base en las enseñanzas de la misma. Se debe entender que los principios de la presente invención se pueden implementar en diferentes formas de hardware, software, firmware o procesadores de propósitos especiales o combinaciones de los mismos. De preferencia, los principios de la presente invención se pueden implementar en una combinación de hardware y software. Además, el software puede implementarse como un programa de aplicación incorporado tangiblemente en una unidad de almacenamiento de programa. El programa de aplicación se puede cargar, ejecutar por una máquina que comprenda la arquitectura apropiada. La máquina se puede implementar en una plataforma de computadora con un hardware como una o más unidades de procesamiento central ("CPU"), una memoria de acceso aleatorio ("RAM"), e interfaces de salida y enírada ("I/O"). La plataforma de computadora también puede incluir un sistema operativo y un código de microinstrucciones. Los diferentes procesos y funciones descritos aquí pueden ser parte del código de microinstrucción o parte del programa de aplicación o una combinación de los mismos, los cuales se pueden ejecutar con una CPU. Además, se pueden conectar otras unidades periféricas con la plataforma de computadora como una unidad de almacenamiento de datos adicional y una unidad de impresión. También, se debe entender que debido a que algunos componentes y métodos del sistema ilustrados en los dibujos acompañantes de preferencia, se implementan en un software, las conexiones reales entre los componentes del sistema o los bloques de función del proceso pueden diferir dependiendo de la manera en que se programe la presente invención. Habiendo proporcionado los principios de la misma, las personas experimentadas en la técnica podrán contemplar estas y otras implementaciones o configuraciones similares de la presente invención sin apartarse del espíritu y alcance de la presente invención. Aunque se han descrito las modalidades ilustrativas con referencia a los dibujos acompañantes, se debe entender que la presente invención no está limitada a estas modalidades, y que se pueden efectuar varios cambios y modificaciones por las personas experimentadas en la técnica sin apartarse del alcance y espíritu de la presente invención. Todos los cambios y modificaciones tienen la intención de estar incluidos dentro del alcance de la presente invención, como se establece en las reivindicaciones anexas.

Claims (14)

REIVINDICACIONES
1. Un método (500) para detectar una huella dactilar digital incrustada en una corriente de bits de video comprimido, el método está caracterizado porque comprende: recibir (546) la huella dactilar digital como un código de identificación única que tiene una secuencia de bits; y identificar (552) cada bit del código de identificación única desde un bloque codificado correspondiente de la corriente de bits de video comprimido al comparar el valor del bit del código de identificación única con la paridad del número de coeficientes codificados en el bloque correspondiente.
2. El método de conformidad con la reivindicación 1, caracterizado porque además comprende: contar (542) la longitud de la secuencia de bits; probar (548) cada bit de la secuencia de bits hasta la longitud contra la paridad del número de coeficientes codificados en cada bloque correspondiente para ver si los bits incrustados coinciden con la secuencia de huella dactilar.
3. El método de conformidad con la reivindicación 1, caracterizado porque además comprende seleccionar los bloques codificados correspondientes de la corriente de bits de video comprimido para ser verificados para un bit del código de identificación única de conformidad con el patrón de selección.
4. El método de conformidad con la reivindicación 3, caracterizado porque el patrón de selección comprende cada bloque consecutivo hasta el número de bits del código de identificación única.
5. El método de conformidad con la reivindicación 3, caracterizado porque el patrón de selección comprende cada bloque que tiene por lo menos un coeficiente no cero hasta el número de bits del código de identificación única.
6. El método de conformidad con la reivindicación 3, caracterizado porque el patrón de selección comprende cada N° bloque hasta el número de bits del código de identificación única.
7. El método de conformidad con la reivindicación 3, caracterizado porque el patrón de selección comprende cada N° bloque que tiene por lo menos un coeficiente no cero hasta el número de bits del código de identificación única.
8. El método de conformidad con la reivindicación 3, caracterizado porque el patrón de selección comprende cada N° bloque que tiene por lo menos un coeficiente no cero hasta el bloque cerca del fin de bloques codificados de la corriente de bits de video comprimido, cada bloque posterior hasta el número de bits del código de identificación única y el último bloque de la corriente de bits de video comprimido.
9. El método de conformidad con la reivindicación 1, caracterizado porque además comprende detectar múltiples copias de la huella dactilar digital en la corriente de bits de video comprimido.
10. El método de conformidad con la reivindicación 9, caracterizado porque se detecta una nueva copia de la huella dactilar digital para cada grupo de imágenes o para cada período de renovación del decodificador independiente.
11. El método de conformidad con la reivindicación 1, caracterizado porque el bloque codificado es por lo menos uno de un bloque, una rebanada, un macrobloque y una imagen.
12. El método de conformidad con la reivindicación 3, caracterizado porque el patrón de selección completo se repite cada imagen intra-codificada.
13. Un decodificador (700) de video para detectar una huella dactilar digital incrustada en una corriente de bits de video comprimido, el decodificador está caracterizado porque comprende: una unidad (715) de detección para detectar bits de la huella dactilar digital en bloques de la corriente de bits de video como una función de la paridad del número de coeficientes codificados en el bloque; y una unidad (720) de cuantificación invertida en comunicación de señal con la unidad de detección para cuantificar en forma invertida los coeficientes de la corriente de bits de video.
14. Un decodificador de video para detectar una huella dactilar digital incrustada en la corriente de bits de video comprimido, el decodificador está caracterizado porque comprende: un medio para recibir la huella dactilar digital como un código de identificación única que tiene una secuencia de bits; y un medio para identificar cada bit del código de identificación única desde un bloque codificado correspondiente de la corriente de bits de video comprimido al comparar el valor del bit del código de identificación única con la paridad del número de coeficientes codificados en el bloque correspondiente.
MXPA05013572A 2003-06-25 2004-06-23 Metodo de decodificacion y aparato para la insercion de marca de aguas en una corriente de bits de video comprimido. MXPA05013572A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US48230203P 2003-06-25 2003-06-25
PCT/US2004/020029 WO2005004493A1 (en) 2003-06-25 2004-06-23 Decoding method and apparatus for detection of watermarks in a compressed video bitstream

Publications (1)

Publication Number Publication Date
MXPA05013572A true MXPA05013572A (es) 2006-08-18

Family

ID=33563846

Family Applications (2)

Application Number Title Priority Date Filing Date
MXPA05013572A MXPA05013572A (es) 2003-06-25 2004-06-23 Metodo de decodificacion y aparato para la insercion de marca de aguas en una corriente de bits de video comprimido.
MXPA05013567A MXPA05013567A (es) 2003-06-25 2004-06-23 Metodo de codificacion y aparato para la insercion de marca de aguas en una corriente de bits de video comprimido.

Family Applications After (1)

Application Number Title Priority Date Filing Date
MXPA05013567A MXPA05013567A (es) 2003-06-25 2004-06-23 Metodo de codificacion y aparato para la insercion de marca de aguas en una corriente de bits de video comprimido.

Country Status (11)

Country Link
US (1) US20070053438A1 (es)
EP (2) EP1636995B1 (es)
JP (2) JP4726140B2 (es)
KR (2) KR101100843B1 (es)
CN (2) CN1810038B (es)
BR (2) BRPI0411663A (es)
DE (2) DE602004022548D1 (es)
ES (1) ES2330440T3 (es)
MX (2) MXPA05013572A (es)
MY (2) MY137898A (es)
WO (2) WO2005004493A1 (es)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101273479B1 (ko) * 2005-07-06 2013-06-14 톰슨 라이센싱 화상 시퀀스 및 로고를 포함하는 비디오 콘텐츠를 코딩하는 방법 및 디바이스
EP1932359A1 (en) * 2005-09-09 2008-06-18 Thomson Licensing Coefficient selection for video watermarking
US20090252370A1 (en) * 2005-09-09 2009-10-08 Justin Picard Video watermark detection
US8107669B2 (en) 2006-06-14 2012-01-31 Samsung Electronics Co., Ltd. Video watermarking apparatus in compression domain and method using the same
KR101213161B1 (ko) 2006-06-14 2012-12-17 삼성전자주식회사 압축영역에서의 비디오 워터마킹 장치 및 그 방법
US7653626B2 (en) * 2006-11-03 2010-01-26 Mediatek Inc. Method for detecting regularly appearing patterns
CN1988669B (zh) * 2006-11-21 2010-06-16 北京大学 流媒体监播中的数字标记构造及验证方法
US8467445B2 (en) * 2007-01-12 2013-06-18 Civolution B.V. Video watermarking
JP5277180B2 (ja) * 2007-03-23 2013-08-28 トムソン ライセンシング 符号化ビットストリームの修正
KR100873947B1 (ko) * 2007-05-30 2008-12-12 주식회사 엠엠칩스 H.264/avc 표준용 워터마크 삽입 방법 및 시스템
WO2008154041A1 (en) * 2007-06-14 2008-12-18 Thomson Licensing Modifying a coded bitstream
KR101571573B1 (ko) 2007-09-28 2015-11-24 돌비 레버러토리즈 라이쎈싱 코오포레이션 부가적인 정보 역량을 이용한 멀티미디어 코딩 및 디코딩
CN101399961B (zh) * 2007-09-28 2010-10-20 北京视博数字电视科技有限公司 数字指纹嵌入方法、数字视频分发系统及方法
CN101399962B (zh) * 2007-09-28 2010-12-01 北京视博数字电视科技有限公司 数字视频分发系统及方法
US8483282B2 (en) * 2007-10-12 2013-07-09 Qualcomm, Incorporated Entropy coding of interleaved sub-blocks of a video block
US8565472B2 (en) * 2007-10-30 2013-10-22 General Instrument Corporation Method, device and system for dynamically embedding watermark information into multimedia content
US20090110059A1 (en) * 2007-10-31 2009-04-30 General Instrument Corporation Method and system for transmitting end-user access information for multimedia content
EP2319244A1 (en) * 2008-08-19 2011-05-11 Thomson Licensing Cabac/avc compliant watermarking of syntax elements in compressed video
CN102187583B (zh) * 2008-08-19 2013-09-11 汤姆森特许公司 基于上下文的自适应二进制算术编码(cabac)的视频流兼容性
CN102132247B (zh) * 2008-08-19 2014-09-10 汤姆森特许公司 传播地图
US8948443B2 (en) * 2008-08-19 2015-02-03 Thomson Licensing Luminance evaluation
EP2314073B1 (en) * 2008-08-20 2014-04-30 Thomson Licensing Selection of watermarks for the watermarking of compressed video
US8340343B2 (en) * 2008-10-31 2012-12-25 General Instrument Corporation Adaptive video fingerprinting
JP5394212B2 (ja) * 2008-12-19 2014-01-22 トムソン ライセンシング データを挿入する方法、挿入されたデータを読み出す方法
CN102754124B (zh) 2010-02-09 2016-08-03 汤姆森许可贸易公司 使用传播图的水印检测
KR20180028430A (ko) * 2010-02-17 2018-03-16 한국전자통신연구원 초고해상도 영상을 부호화하는 장치 및 방법, 그리고 복호화 장치 및 방법
CN103385002A (zh) * 2010-02-17 2013-11-06 韩国电子通信研究院 用于对超高清图像进行编码的装置及其方法、以及解码装置及其方法
KR20120009618A (ko) * 2010-07-19 2012-02-02 에스케이 텔레콤주식회사 주파수변환단위 분할부호화 방법 및 장치와 이를 이용한 영상 부호화/복호화 방법 및 장치
CN101895766B (zh) * 2010-08-13 2012-03-14 北京算通科技发展股份有限公司 一种mpeg-2/h.264标准下视频流插入台标字幕的压缩域局部处理算法
JP5174878B2 (ja) * 2010-10-13 2013-04-03 国立大学法人信州大学 秘匿情報の抽出装置および書き替え装置
CN101980542B (zh) * 2010-11-16 2012-08-22 上海交通大学 基于时序振动和纠错码的视频数字指纹嵌入及其检测方法
EP2671386A4 (en) * 2011-02-04 2015-05-20 Jesse Bickmore UNIQUE WATERMARKS FOR DIGITAL MEDIA
KR101145110B1 (ko) * 2011-04-21 2012-05-15 아스텔 주식회사 연성 워터마크 삽입/추출 장치 및 방법
US9392301B2 (en) 2011-07-01 2016-07-12 Qualcomm Incorporated Context adaptive entropy coding for non-square blocks in video coding
JP5740239B2 (ja) * 2011-08-03 2015-06-24 日本放送協会 モード情報伝送置換装置、画像符号化装置、画像復号装置、及びこれらのプログラム
FR2982447A1 (fr) 2011-11-07 2013-05-10 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
FR2982446A1 (fr) * 2011-11-07 2013-05-10 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
EP3094094B1 (en) * 2012-01-20 2018-03-28 BlackBerry Limited Multiple sign bit hiding within a transform unit
KR101361524B1 (ko) * 2012-11-09 2014-02-25 주식회사 시공미디어 콘텐츠 자동 변환 처리를 통한 워터마크 삽입 장치 및 방법
KR101383639B1 (ko) 2013-11-07 2014-04-10 주식회사 알아이 이미지 블록 선택 기반의 데이터 은닉 장치 및 방법
US9946723B2 (en) * 2014-06-02 2018-04-17 Intel Corporation Data embedding in run length encoded streams
WO2017165242A1 (en) * 2016-03-21 2017-09-28 Acxiom Corporation Data watermarking and fingerprinting system and method
CN106101100B (zh) * 2016-06-14 2019-08-02 南京邮电大学 一种基于隐写分析的视频内容监管系统的实现方法
EP3602478B1 (en) * 2017-03-29 2021-12-08 Fundacio per a la Universitat Oberta de Catalunya Video watermarking

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6345145B1 (en) * 1995-08-25 2002-02-05 Sony Corporation Signal recording/reproducing method and apparatus, signal record medium and signal transmission/reception method and apparatus
JP4064506B2 (ja) * 1997-09-17 2008-03-19 パイオニア株式会社 電子透かし重畳方法及び検出方法並びに装置
AU743639B2 (en) * 1998-05-20 2002-01-31 Rovi Solutions Corporation Method and apparatus for watermark detection for specific scales and arbitrary shifts
TW395133B (en) * 1998-07-15 2000-06-21 Koninkl Philips Electronics Nv Detection of a watermark in a compressed video signal
JP2000050048A (ja) * 1998-07-29 2000-02-18 Konica Corp 画像処理装置
US6546113B1 (en) * 1999-03-02 2003-04-08 Leitch Technology International Inc. Method and apparatus for video watermarking
EP1087377B1 (en) * 1999-03-19 2007-04-25 Sony Corporation Additional information embedding method and its device, and additional information decoding method and its decoding device
KR100701446B1 (ko) 1999-07-15 2007-03-30 코닌클리케 필립스 일렉트로닉스 엔.브이. 보조 데이터를 정보 신호에 임베딩
US6748362B1 (en) * 1999-09-03 2004-06-08 Thomas W. Meyer Process, system, and apparatus for embedding data in compressed audio, image video and other media files and the like
WO2001067671A2 (en) * 2000-03-06 2001-09-13 Meyer Thomas W Data embedding in digital telephone signals
JP3778765B2 (ja) * 2000-03-24 2006-05-24 三洋電機株式会社 窒化物系半導体素子およびその製造方法
JP2001319416A (ja) * 2000-05-12 2001-11-16 Pioneer Electronic Corp 情報検出装置
US6430301B1 (en) * 2000-08-30 2002-08-06 Verance Corporation Formation and analysis of signals with common and transaction watermarks
JP2002135713A (ja) * 2000-10-26 2002-05-10 Nec Corp 画像データ処理装置および画像データ処理方法
JP2002171494A (ja) * 2000-12-01 2002-06-14 Matsushita Electric Ind Co Ltd 電子透かし情報埋込方法及び装置
US6563937B1 (en) * 2001-11-28 2003-05-13 Sony Corporation Method and apparatus to detect watermark that are resistant to arbitrary deformations
KR20040065573A (ko) * 2001-12-05 2004-07-22 코닌클리케 필립스 일렉트로닉스 엔.브이. 이미지 신호에 워터마크 임베딩 방법 및 장치
FR2846828B1 (fr) * 2002-10-31 2005-03-11 France Telecom Procede de tatouage d'un signal video, systeme et support de donnees pour la mise en oeuvre de ce procede, procede d'extraction du tatouage d'un signal video, systeme pour la mise en oeuvre de ce procede
FR2853792A1 (fr) * 2003-04-11 2004-10-15 France Telecom Procede de tatouage d'une sequence video a selection adaptative de la zone d'insertion du tatouage, procede de detection, dispositifs, support de donnees et programmes d'ordinateur correspondants
US7324662B2 (en) * 2004-05-21 2008-01-29 Nanyang Technological University Method, software, and device for hiding data in binary image, while preserving image quality

Also Published As

Publication number Publication date
JP2007525074A (ja) 2007-08-30
EP1636994B1 (en) 2009-08-12
KR101100843B1 (ko) 2012-01-02
WO2005004493A1 (en) 2005-01-13
EP1636995B1 (en) 2010-06-02
BRPI0411663A (pt) 2006-08-08
US20070053438A1 (en) 2007-03-08
MY137898A (en) 2009-03-31
DE602004022548D1 (de) 2009-09-24
KR20060027814A (ko) 2006-03-28
CN1806442A (zh) 2006-07-19
KR20060027810A (ko) 2006-03-28
ES2330440T3 (es) 2009-12-10
CN1810038B (zh) 2010-06-09
CN1810038A (zh) 2006-07-26
BRPI0411667A (pt) 2006-08-08
DE602004027486D1 (de) 2010-07-15
CN100496125C (zh) 2009-06-03
EP1636994A1 (en) 2006-03-22
MXPA05013567A (es) 2006-08-18
JP4726140B2 (ja) 2011-07-20
EP1636995A1 (en) 2006-03-22
KR101100811B1 (ko) 2012-01-02
MY139799A (en) 2009-10-30
JP4726141B2 (ja) 2011-07-20
JP2007525073A (ja) 2007-08-30
WO2005004494A1 (en) 2005-01-13

Similar Documents

Publication Publication Date Title
MXPA05013572A (es) Metodo de decodificacion y aparato para la insercion de marca de aguas en una corriente de bits de video comprimido.
US8315304B2 (en) Method and apparatus for encoding and decoding transform coefficients
KR101834825B1 (ko) 비디오 인코딩 및 디코딩에서 변환 선택을 위한 방법 및 장치
KR20100027384A (ko) 예측 모드 결정 방법 및 장치
KR20140027957A (ko) 데이터를 손실 압축-인코딩하기 위한 방법 및 장치와 데이터를 재구성하기 위한 대응하는 방법 및 장치
US8594189B1 (en) Apparatus and method for coding video using consistent regions and resolution scaling
CN103597838A (zh) 对末位有效系数的位置进行编码和解码的方法和设备
WO2008035842A1 (en) Apparatus and method for encoding and decoding using alternative converter according to the correlation of residual signal
KR20050089838A (ko) 선택된 매크로블록에 대한 스킵 모션 추정으로 비디오인코딩하는 방법
CN111684810A (zh) 数据编码和解码
JP2010098760A (ja) 細粒度スケーラブル・ビデオ用の動き補償
US20060257000A1 (en) Decoding method an apparatus for detection of watermarks in a compressed video bitsream
CN111052743B (zh) 视频编码中用于局部选择变换集的变换池
KR101490686B1 (ko) 비디오 인코딩 장치 및 방법
KR20100089546A (ko) 단계적인 영상 부호화, 복호화 방법 및 장치
JP2008502256A (ja) 移動されたオブジェクトにより引き起こされた電子透かし不規則性の補償
US8532179B2 (en) Method and device for optimizing the compression of a video stream
JP2010268505A (ja) ブロック動きビデオのコード化及びデコード化
KR20080008137A (ko) 영상 복원 장치 및 방법
Liu et al. A High Capacity Data Hiding Scheme in H. 264/AVC Encoder
Langelaar et al. Video Watermarking
JP2004363932A (ja) ディジタル信号符号化の量子化ステップサイズ決定方法およびディジタル信号符号化装置

Legal Events

Date Code Title Description
FG Grant or registration