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
Links
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000001514 detection method Methods 0.000 title claims abstract description 15
- 238000004891 communication Methods 0.000 claims abstract description 24
- 238000013139 quantization Methods 0.000 abstract description 10
- 230000006870 function Effects 0.000 description 77
- 230000009466 transformation Effects 0.000 description 29
- 238000003780 insertion Methods 0.000 description 17
- 230000037431 insertion Effects 0.000 description 17
- 230000008569 process Effects 0.000 description 17
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 16
- 238000010586 diagram Methods 0.000 description 8
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011002 quantification Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/0021—Image watermarking
- G06T1/0042—Fragile watermarking, e.g. so as to detect tampering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
- H04N19/467—Embedding additional information in the video signal during the compression process characterised by the embedded information being invisible, e.g. watermarking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/18—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/48—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2201/00—General purpose image data processing
- G06T2201/005—Image watermarking
- G06T2201/0052—Embedding 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)
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.
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)
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)
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 |
-
2004
- 2004-06-23 KR KR1020057024612A patent/KR101100843B1/ko active IP Right Grant
- 2004-06-23 CN CN2004800174949A patent/CN1810038B/zh not_active Expired - Fee Related
- 2004-06-23 DE DE602004022548T patent/DE602004022548D1/de not_active Expired - Lifetime
- 2004-06-23 MX MXPA05013572A patent/MXPA05013572A/es active IP Right Grant
- 2004-06-23 WO PCT/US2004/020029 patent/WO2005004493A1/en active Application Filing
- 2004-06-23 JP JP2006517553A patent/JP4726140B2/ja not_active Expired - Fee Related
- 2004-06-23 DE DE602004027486T patent/DE602004027486D1/de not_active Expired - Lifetime
- 2004-06-23 EP EP04776922A patent/EP1636995B1/en not_active Expired - Fee Related
- 2004-06-23 ES ES04755901T patent/ES2330440T3/es not_active Expired - Lifetime
- 2004-06-23 MX MXPA05013567A patent/MXPA05013567A/es active IP Right Grant
- 2004-06-23 WO PCT/US2004/020030 patent/WO2005004494A1/en active Application Filing
- 2004-06-23 US US10/558,039 patent/US20070053438A1/en not_active Abandoned
- 2004-06-23 BR BRPI0411663-1A patent/BRPI0411663A/pt not_active IP Right Cessation
- 2004-06-23 CN CNB2004800165687A patent/CN100496125C/zh not_active Expired - Fee Related
- 2004-06-23 JP JP2006517554A patent/JP4726141B2/ja not_active Expired - Fee Related
- 2004-06-23 KR KR1020057024754A patent/KR101100811B1/ko active IP Right Grant
- 2004-06-23 EP EP04755901A patent/EP1636994B1/en not_active Expired - Fee Related
- 2004-06-23 BR BRPI0411667-4A patent/BRPI0411667A/pt not_active IP Right Cessation
- 2004-06-25 MY MYPI20042511A patent/MY137898A/en unknown
- 2004-06-25 MY MYPI20042509A patent/MY139799A/en unknown
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 |