ES2938868T3 - Sistema y método para detectar contenido repetido, incluidos comerciales, en un flujo de datos de vídeo utilizando el reconocimiento automatizado de contenido basado en audio y basado en vídeo - Google Patents
Sistema y método para detectar contenido repetido, incluidos comerciales, en un flujo de datos de vídeo utilizando el reconocimiento automatizado de contenido basado en audio y basado en vídeo Download PDFInfo
- Publication number
- ES2938868T3 ES2938868T3 ES19717053T ES19717053T ES2938868T3 ES 2938868 T3 ES2938868 T3 ES 2938868T3 ES 19717053 T ES19717053 T ES 19717053T ES 19717053 T ES19717053 T ES 19717053T ES 2938868 T3 ES2938868 T3 ES 2938868T3
- Authority
- ES
- Spain
- Prior art keywords
- segments
- content
- video
- segment
- engine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/783—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/7834—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using audio features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/783—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
- G06F16/7847—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using low-level visual features of the video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/812—Monomedia components thereof involving advertisement data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/84—Generation or processing of descriptive data, e.g. content descriptors
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Se proporcionan métodos y aparatos para detectar posible contenido repetitivo, como comerciales, en un flujo de datos de video al recibir uno o más flujos de datos de video, analizar cada flujo de datos de video en una pluralidad de segmentos, crear huellas dactilares de audio de cada segmento, almacenar la pluralidad de huellas digitales de audio en una base de datos, e identificando cualquier huella digital de audio en uno o más flujos de datos de video recibidos y analizados que coincidan con las huellas digitales de audio en la base de datos que se almacenaron previamente a partir de flujos de datos de video que se recibieron y analizaron previamente. Luego se crean huellas dactilares de video para estos mismos pares de segmentos y se realiza un análisis de similitud. (Traducción automática con Google Translate, sin valor legal)
Description
DESCRIPCIÓN
Sistema y método para detectar contenido repetido, incluidos comerciales, en un flujo de datos de vídeo utilizando el reconocimiento automatizado de contenido basado en audio y basado en vídeo
Antecedentes de la invención
Los comerciales publicitarios de televisión existen en prácticamente todos los flujos de datos de vídeo, subsidiando parte o la totalidad del costo de proporcionar el contenido al espectador. La capacidad de identificar dónde se encuentran los comerciales en el flujo de datos de vídeo se ha convertido en un objetivo importante por dos razones principales. Primero, los anunciantes que pagan para colocar los comerciales desean verificar que los comerciales realmente se reprodujeron, ya sea "transmitiéndolos" durante una transmisión o "transmitiéndolos" durante una sesión de visualización basada en Internet. El proceso de auditoría se puede mejorar en gran medida si se pueden identificar los comerciales a medida que se reproducen, de modo que pueda haber una grabación para documentar la transmisión o transmisión. En segundo lugar, la tecnología integrada en un dispositivo de reproducción de vídeo, o que se ejecuta simultáneamente con un dispositivo de reproducción de vídeo, puede "saltar" comerciales, suponiendo que la ubicación de los comerciales pueda identificarse con precisión para que no se omita ninguna programación. Algunas tecnologías convencionales para identificar dónde existen comerciales en un flujo de datos de vídeo se describen en un artículo titulado "Automatic Detection of TV Commercials" (Satterwhite, B.; Marques, O.; Potentials, IEEE, Volume 23, Issue 2, Abril-May 2004 pp. 9-12). Satterwhite y otros describe dos categorías principales de métodos para detectar anuncios publicitarios, a saber, "detección basada en características" y "detección basada en reconocimiento". La detección basada en funciones utiliza las características generales de los comerciales incrustados en un flujo de medios para detectar su posible presencia. La detección basada en el reconocimiento funciona al tratar de hacer coincidir los comerciales con los que ya se aprendieron. Algunas características generales (heurísticas) de los comerciales y las pausas comerciales incluyen las siguientes:
i. Se muestran múltiples cuadros de negro al principio y al final de cada bloque comercial y entre cada comercial en el bloque. No hay audio durante estos fotogramas.
ii. Si una red muestra un logotipo en la esquina de la pantalla, el logotipo no aparecerá durante los comerciales.
iii. La duración suele ser un incremento de 15 segundos, hasta 90 segundos.
iv. Los comerciales tienen mucha "acción", medida por un número relativamente mayor de cortes por minuto entre fotogramas en comparación con un programa de televisión.
v. Las pausas comerciales tienden a ocurrir al mismo tiempo en cada episodio de una serie de televisión determinada.
Es más, US2004194130A1 enseña la detección de segmentos tales como anuncios en una señal de vídeo y la sustitución de los segmentos detectados con partes de reemplazo tales como anuncios dirigidos.
La tecnología convencional para identificar dónde existen anuncios publicitarios en un flujo de datos de vídeo tiene numerosas desventajas que limitan su eficacia. En consecuencia, existe la necesidad de nuevos enfoques para identificar dónde existen anuncios publicitarios en un flujo de datos de vídeo. La presente invención satisface tal necesidad.
También hay casos en los que es deseable identificar el "contenido repetido" en los flujos de datos de vídeo. La presente invención también satisface esta necesidad.
Resumen de la presente invención
Se proporcionan métodos y aparatos para detectar posible contenido repetitivo, como comerciales, en un flujo de datos de vídeo al recibir uno o más flujos de datos de vídeo, analizar cada flujo de datos de vídeo en una pluralidad de segmentos, crear huellas dactilares de audio de cada segmento, almacenar la pluralidad de huellas dactilares de audio en una base de datos, e identificando cualquier huella dactilar de audio en uno o más flujos de datos de vídeo recibidos y analizados que coincidan con las huellas dactilares de audio en la base de datos que se almacenaron previamente a partir de flujos de datos de vídeo que se recibieron y analizaron previamente. Luego se crean huellas dactilares de vídeo solo para estos mismos pares de segmentos y se realiza un análisis de similitud. Los resultados del análisis de huellas dactilares de vídeo se utilizan para determinar las acciones posteriores que debe tomar una plataforma de procesamiento de contenido que realiza el procesamiento de reconocimiento del contenido asociado con los segmentos identificados como contenido potencialmente repetitivo.
Breve descripción de los dibujos
Ahora se describirán realizaciones preferidas de la presente invención a modo de ejemplo con referencia a los dibujos adjuntos:
Las Figuras 1 a la 4 muestran una descripción general de una realización preferida de la presente invención para detectar anuncios en un flujo de datos de vídeo.
La Figura 5 es un diagrama esquemático de un sistema para implementar un ejemplo.
Las Figuras 6 y 7 son diagramas de flujo para implementar ejemplos.
La Figura 8 es un diagrama esquemático de un sistema para implementar otro ejemplo.
La Figura 9 es un diagrama esquemático de un sistema para implementar la presente invención.
La Figura 10 es un diagrama de flujo para implementar la invención como se ilustra en la Figura 9.
Descripción detallada del invento
Cierta terminología se usa aquí solo por conveniencia y no debe tomarse como una limitación de la presente invención.
Las palabras "un" y "una", tal como se utilizan en las reivindicaciones y en las partes correspondientes de la memoria descriptiva, significan "al menos uno".
I. Definiciones
Las siguientes definiciones se proporcionan para promover la comprensión de la presente invención.
flujo de datos de vídeo (también conocido indistintamente como "flujo de TV" y "flujo de canal de TV"): un flujo de datos de vídeo incluye (i) una señal de transmisión de TV convencional, generalmente entregada a través de una red de cable o fibra óptica a través de un conjunto caja superior, CableCARD ® o similar a un televisor, (ii) una señal de transmisión de televisión por aire (OTA) y (iii) servicios de transmisión que entregan contenido de vídeo a un dispositivo de televisión que está conectado a la red doméstica de un espectador. Un flujo de datos de vídeo también puede denominarse "flujo de datos audiovisuales" o "flujo audiovisual", ya que un flujo de datos de vídeo normalmente incluye audio.
segmento (también conocido indistintamente como "segmento de contenido"): un segmento es una parte de un flujo de datos de vídeo que abarca un período de tiempo. El segmento incluye los contenidos del flujo de datos de vídeo dentro de ese período de tiempo.
representación de segmento: una representación de un segmento que puede ser utilizada fácilmente por un motor de búsqueda para una comparación prácticamente instantánea con una base de datos almacenada de representaciones de segmentos. En una realización preferida, la representación del segmento es una firma digital del segmento, como una huella dactilar del segmento. Sin embargo, otros tipos de representaciones de segmentos están dentro del alcance de las reivindicaciones.
representación de segmento vecino: una representación de segmento que está al lado o muy cerca de otra representación de segmento con respecto a las marcas de tiempo de los segmentos correspondientes. "Vecino" tal como se usa en el presente documento no requiere necesariamente una adyacencia inmediata. Es decir, puede haber un pequeño intervalo de tiempo entre los segmentos correspondientes ocupados por otros segmentos.
comercial (también denominado indistintamente como "anuncio" o "anuncios"): un "comercial" es un anuncio de un producto o servicio, y también incluye publicidad para contenido de tipo de programa, conocido en la industria de la televisión como "promoción". Por lo tanto, un comercial se distingue del "contenido de tipo de programa". Un ejemplo de "contenido de tipo de programa" es un programa de televisión.
pausa comercial (también denominada indistintamente como "bloque de contenido comercial", "bloque comercial", "bloque de anuncios" o "espacio de anuncios"): cada pausa comercial incluye una pluralidad de comerciales individuales sucesivos. Es decir, los comerciales se transmiten uno al lado del otro en un conjunto o grupo. Las pausas comerciales se intercalan durante un programa de televisión. La duración total de las pausas comerciales emitidas durante un programa de televisión casi siempre es significativamente más corta que la duración del programa de televisión. Del mismo modo, la duración de una pausa comercial casi siempre es significativamente más corta que la duración de los segmentos del programa de televisión que preceden y siguen a la pausa comercial. Un canal de televisión típico transmite alrededor de 20 minutos de contenido comercial por hora. Un formato común para una pausa comercial es mostrar primero anuncios nacionales, seguidos de anuncios regionales/locales y concluir con promociones.
clip: el flujo de datos de vídeo se puede recortar entre una hora de inicio y una hora de finalización para capturar un segmento de interés, generalmente un comercial potencial que aún no se ha identificado.
contenido repetitivo: el contenido repetitivo es cualquier contenido que aparece más de una vez durante un período de tiempo de interés. Los ejemplos de contenido repetido incluyen comerciales y contenido de tipo de programa (por ejemplo, un programa de televisión) que se retransmite. El período de tiempo de interés puede ser finito o infinito.
II. Divulgación detallada
Las Figuras 1 a la 4 muestran una descripción general de una realización preferida de la presente invención para detectar anuncios en un flujo de datos de vídeo. En este ejemplo, el flujo de datos de vídeo es un flujo de TV en vivo
(por ejemplo, un canal de TV) en el que se intercalan cortes comerciales durante un programa de TV normal. Aquí, cada corte comercial incluye tres comerciales.
Una de las diferencias entre los comerciales y el contenido del tipo de programa (por ejemplo, un programa de televisión) es que el contenido de los comerciales a menudo se repite como se muestra en las Figuras 1 y 2. De hecho, los comerciales casi siempre se repiten poco después de la emisión inicial, ya que normalmente se muestran como parte de una campaña publicitaria coordinada. Un comercial puede repetirse en el mismo canal de televisión y/o en un canal de televisión diferente, especialmente en el caso de anuncios nacionales. Los bloques cuadrados de colores en las Figuras 1 y 2 son comerciales que se transmiten repetidamente. La Figura 2 también identifica el contenido del tipo de programa de televisión que no se repite. En este ejemplo simplificado, el programa de televisión no se repite. Sin embargo, durante un período de tiempo más largo (por ejemplo, una semana o un mes), algunos programas de televisión se repetirán al ser retransmitidos. Sin embargo, en un marco de tiempo más corto (por ejemplo, un día o una semana), es posible que el programa de televisión no se repita. Por lo tanto, en un marco de tiempo más corto, se puede hacer una observación general de que los comerciales se transmiten o transmiten repetidamente, mientras que los programas de televisión no se repiten con tanta frecuencia. Este hecho, junto con el hecho de que los comerciales son más cortos que los programas de televisión, puede aprovecharse para detectar y recortar comerciales de los flujos de datos de vídeo.
La Figura 3 muestra una descripción general del proceso implementado por los siguientes pasos que se correlacionan con los cinco flujos de contenido numerados de la Figura 3:
1. Reciba un flujo de datos de vídeo (flujo de TV sin formato).
2. Divida el flujo de datos de vídeo en pequeños segmentos de contenido de tamaño finito (c1, c2, c3,... cx, cy, cz son los segmentos de contenido).
3. Haga coincidir continuamente todos y cada uno de los segmentos de contenido nuevo con un grupo de segmentos de contenido previamente almacenados de flujos de datos de vídeo que se emitieron anteriormente o se transmitieron en el pasado reciente. Por ejemplo:
• c7 y cz coincidieron con c1
• c9 coincidió con c2
• cx coincidió con c4
4. Cualquier contenido que se observe que aparece repetidamente en un flujo de datos de vídeo puede declararse como comercial. Por ejemplo, c1, c2 y c4 son probablemente comerciales.
5. Cualquier contenido que no se repita (en el pasado reciente) puede declararse como contenido de tipo programa (por ejemplo, un programa de televisión). Por ejemplo, c3, c5, c6, c8,...cy son probablemente contenido de tipo programa.
La Figura 4 muestra una descripción general de los componentes del sistema para implementar el proceso descrito anteriormente, en el que los siguientes pasos se correlacionan con los cuatro flujos de contenido numerados de la Figura 3:
1. Un sistema (que se muestra con más detalle en la Figura 5) recibe un flujo de datos de vídeo (flujo de TV sin procesar).
2. El sistema divide el flujo de datos de vídeo en pequeños segmentos de contenido de tamaño finito (c1, c2, c3,... cx, cy, cz son los segmentos de contenido).
3. El sistema introduce continuamente los segmentos de contenido en una base de datos de contenido que permite realizar búsquedas y que indexa los segmentos de contenido.
4. El sistema busca continuamente (en paralelo) una coincidencia para todos y cada uno de los segmentos de contenido en la base de datos de contenido que, en una realización preferida, contiene solo contenido transmitido o transmitido recientemente.
Las Figuras 1-4 muestran solo un flujo de datos de vídeo. Sin embargo, una pluralidad de flujos de datos de vídeo (por ejemplo, cientos de canales de TV) se procesan preferiblemente de manera simultánea de la misma manera. Dado que los comerciales pueden transmitirse en varios canales de televisión, un comercial emitido por primera vez en un primer canal puede volver a transmitirse en un canal diferente poco después. Por lo tanto, el sistema está diseñado para ingerir y procesar simultáneamente múltiples flujos de datos de vídeo.
La Figura 5 muestra un diagrama esquemático de un sistema 500 para implementar un ejemplo sin la creación de huellas dactilares de audio. La Figura 9, por otro lado, ilustra la invención. Los componentes del sistema incluyen un motor de procesamiento de vídeo 502 que incluye un motor de análisis sintáctico 504, un motor de procesamiento de segmentos 506 y un motor de búsqueda 508; una base de datos 510; una memoria 512 (almacenamiento persistente); y una plataforma de procesamiento de contenido 516. Los flujos de datos de vídeo actuales 518l a 518n alimentan el motor de procesamiento de vídeo 502 y la memoria 512. El motor de procesamiento de vídeo 502 realiza al menos las siguientes funciones:
1. Analiza los flujos de datos de vídeo actuales en una pluralidad de segmentos.
2. Crea una representación de cada segmento. La representación es una firma digital del segmento, es decir, una huella dactilar del segmento.
3. Comunica las representaciones de segmento a la base de datos 510.
4. Identifica, usando el motor de búsqueda 508, cualquier representación de segmento en los flujos de datos de vídeo recibidos y analizados que coincidan con las representaciones de segmento en la base de datos 510 que se almacenaron previamente a partir de flujos de datos de vídeo que se recibieron y analizaron previamente.
5. Comunica las representaciones de segmentos emparejados a la plataforma de procesamiento de contenido 516.
La base de datos 510 almacena las representaciones de segmentos y sus respectivas marcas de tiempo que indican cuándo se emitió o transmitió el segmento relacionado. En una realización preferida, las representaciones de segmento recién recibidas se almacenan en la base de datos 510 durante aproximadamente 7 a aproximadamente 14 días. Este período de tiempo es suficiente para detectar retransmisiones de casi todos los comerciales que se muestran en las estaciones de televisión de los Estados Unidos, suponiendo que se reciban flujos de datos de vídeo de casi todas las estaciones de televisión. Un marco de tiempo más corto, como 6 horas, también es factible para detectar la mayoría de los comerciales en estas mismas condiciones. El período de tiempo más corto tiene la ventaja de reducir la cantidad de almacenamiento requerida por la base de datos 510, así como la sobrecarga de procesamiento requerida por el motor de búsqueda 508.
La base de datos 510 también almacena un recuento de "aciertos" para cada representación de segmento. Una representación de segmento que tiene un recuento de visitas superior a "1" se considera candidata para repetir contenido. Como se usa aquí, un "acierto" es una instancia en la que una muestra (por ejemplo, una representación de segmento) del flujo de datos de vídeo coincide con una parte de una muestra previamente almacenada en la base de datos 510. Tal como se usa aquí, "recuento de aciertos" es el número de veces que la muestra previamente almacenada coincide con una muestra recién recibida del flujo de datos de vídeo.
La plataforma de procesamiento de contenido 516 realiza el procesamiento de reconocimiento. La plataforma 516 usa las marcas de tiempo de las representaciones de segmentos coincidentes para recuperar porciones de contenido seleccionadas de los flujos de datos de vídeo originales de la memoria 512 para usar en el procesamiento de reconocimiento. Para garantizar que se recupera todo el comercial de la memoria 512, se recupera preferiblemente el contenido de los segmentos adyacentes suficientes para cubrir la duración del comercial probable más largo. En un ejemplo, esto sería 1 minuto antes y después de la marca de tiempo del segmento. Sin embargo, otros procesos de recuperación están dentro del alcance de la presente invención.
Una vez que la plataforma 516 ha recortado correctamente un anuncio, la identificación y los metadatos apropiados se asocian con el clip. La Figura 3 de la Patente de Estados Unidos No. 9,628,836 (Kalampoukas y otros), muestra un ejemplo de cómo se almacenan los anuncios con información de identificación y metadatos. Una vez que se reconoce un comercial, se puede registrar en una biblioteca de comerciales conocidos. Además, se puede realizar un seguimiento de la emisión del anuncio con fines de auditoría, como es bien conocido en la técnica. La información sobre la fuente original del comercial se almacena en la memoria 512.
El generador de índices y el buscador de contenido de la Figura 4 son componentes del motor de búsqueda 508. La base de datos de contenido que se puede buscar en la Figura 4 es la base de datos 510 de la Figura 5.
La Figura 6 es un diagrama de flujo de un ejemplo para detectar automáticamente comerciales potenciales en un flujo de datos de vídeo que contiene segmentos de contenido de tipo de programa y contenido comercial, en el que el contenido de tipo de programa tiene una duración significativamente mayor que la duración de un comercial, y en el que las representaciones de segmentos del flujo de datos de vídeo se mantienen en una base de datos.
PASO 600: Recibir uno o más flujos de datos de vídeo en un motor de procesamiento de vídeo.
PASO 602: Analizar, mediante el motor de procesamiento de vídeo, cada flujo de datos de vídeo en una pluralidad de segmentos. Cada segmento tiene una duración de tiempo predefinida que es menor que la duración de un comercial promedio.
PASO 604: Crear una representación de cada segmento.
PASO 606: Almacenar la pluralidad de representaciones de segmento en una base de datos. La base de datos incluye registros de la base de datos. Cada registro incluye una representación de segmento y una marca de tiempo asociada que representa la hora en que se emitió o transmitió el segmento.
PASO 608: Identificar, mediante un motor de búsqueda, cualquier representación de segmento en uno o más flujos de datos de vídeo recibidos y analizados que coincidan con representaciones de segmento en la base de datos que se almacenaron previamente a partir de flujos de datos de vídeo que se recibieron y analizaron previamente. El motor de procesamiento de vídeo designa el contenido de cada una de las representaciones de segmentos identificados como parte de uno o más comerciales potenciales.
La Figura 7 es un diagrama de flujo de un ejemplo para detectar posible contenido repetitivo en un flujo de datos de vídeo, en el que las representaciones de segmentos del flujo de datos de vídeo se mantienen en una base de datos.
PASO 700: Recibir uno o más flujos de datos de vídeo en un motor de procesamiento de vídeo.
PASO 702: Analizar, mediante el motor de procesamiento de vídeo, cada flujo de datos de vídeo en una pluralidad de segmentos.
PASO 704: Crear una representación de cada segmento.
PASO 706: Almacenar la pluralidad de representaciones de segmento en una base de datos. La base de datos incluye registros de la base de datos. Cada registro incluye una representación de segmento y una marca de tiempo asociada que representa la hora en que se emitió o transmitió el segmento.
PASO 708: Identificar, mediante un motor de búsqueda, cualquier representación de segmento en uno o más flujos de datos de vídeo recibidos y analizados que coincidan con representaciones de segmento en la base de datos que se almacenaron previamente a partir de flujos de datos de vídeo que se recibieron y analizaron previamente. El motor de procesamiento de vídeo designa el contenido de cada una de las representaciones de segmentos identificados como parte del contenido repetido.
III. Consideraciones adicionales
A. Segmentos de contenido
En una realización preferida, los segmentos de contenido tienen una duración de aproximadamente 2 segundos a aproximadamente 10 segundos, y más preferiblemente, aproximadamente 4 segundos. Sin embargo, la duración de los segmentos de contenido puede ser mayor o menor según la implementación y el caso de uso particulares.
B. Motor de búsqueda 508
Los motores de búsqueda que realizan el tipo de reconocimiento descrito anteriormente son bien conocidos en la técnica y están incorporados en sistemas de reconocimiento de contenido automatizado (ACR). Un tipo de sistema ACR que tiene dicho motor de búsqueda usa huellas dactilares de audio dentro de señales de vídeo para realizar el reconocimiento de contenido. Un sistema ACR de audio disponible en el mercado lo fabrica Audible Magic Corporation, Los Gatos, California. Otro sistema ACR de audio disponible comercialmente es Gracenote Entourage™ disponible comercialmente de Gracenote, Inc., Emeryville, California. Otros sistemas ACR se describen en Patentes de Estados Unidos No. 2011/0289114 (Yu et al.), 2013/0071090 (Berkowitz y otros), y 2013/0205318 (Sinha y otros). En consecuencia, los detalles del motor de búsqueda 508 y la base de datos 510 con respecto al procesamiento de reconocimiento no se describen con más detalle.
Como es bien conocido en la técnica, los motores de búsqueda asociados con los sistemas ACR realizan las comparaciones sobre representaciones de contenido, tales como huellas dactilares del contenido. Por lo tanto, en una realización, la base de datos 510 mantiene representaciones de segmentos en forma de huellas dactilares de segmentos para compararlas con huellas dactilares de contenido analizado en el flujo de datos de vídeo entrante. Como también es bien conocido en la técnica, una "huella dactilar" se compone normalmente de una cadena de huellas dactilares individuales, cada una de las cuales captura una duración muy pequeña del audio y/o vídeo del contenido.
Una realización preferida de la presente invención descrita anteriormente utiliza un sistema ACR de audio para realizar las funciones del motor de búsqueda 508. Sin embargo, es bien conocido en la técnica que los sistemas ACR pueden usar vídeo, así como combinaciones de audio y vídeo para realizar la comparación y el reconocimiento de contenido (segmento), y el alcance de la presente invención incluye tales combinaciones.
En realizaciones alternativas de la presente invención, el motor de búsqueda 508 puede usar otros tipos de procesos de coincidencia además de ACR. Por ejemplo, ciertos tipos de etiquetas (por ejemplo, huellas dactilares) se pueden incrustar en los datos de vídeo que se pueden explotar para la comparación de segmentos. En una realización, un locutor o anunciante puede insertar una o más etiquetas en la señal audiovisual para un programa o comercial específico. El mismo programa o comercial transmitido o transmitido en una fecha posterior tendría la misma etiqueta o más. Si el motor de procesamiento de vídeo 502 está programado para detectar dichas etiquetas, pueden almacenarse en la base de datos 510 y explotarse por el motor de búsqueda 508 de la misma manera que se describió anteriormente con respecto a las representaciones de segmento.
C. Representaciones de segmentos vecinos
Como se discutió anteriormente en la sección Definiciones, una representación de segmento vecino es una representación de segmento que está al lado o muy cerca (no necesariamente adyacente) de otra representación de segmento con respecto a las marcas de tiempo de los segmentos correspondientes. Las representaciones de segmentos vecinos son útiles para identificar el contenido de programas repetidos, como episodios repetidos de programas o retransmisiones de programas, a través de los siguientes pasos:
1. Identificar, mediante el motor de búsqueda, cualquier pluralidad de representaciones de segmentos vecinos que
(i) Coinciden con las representaciones de segmentos almacenadas previamente en la base de datos, y (ii) tener una longitud de segmento total significativamente más larga que la duración de tiempo de un comercial promedio, en el que la longitud de segmento total es la duración de tiempo total desde la primera hasta la última representación de segmento vecina según se determina a partir de las marcas de tiempo respectivas.
2. Eliminar como representación de segmento de un comercial potencial la pluralidad de representaciones de segmento vecinas identificadas.
D. Transmisión de datos de audio
En una realización alternativa, el sistema descrito anteriormente se puede usar para detectar comerciales potenciales en un flujo de datos de audio, que puede incluir (i) una señal de audio de transmisión convencional, como AM/FM o radio satelital, o (ii) servicios de transmisión que entregar contenido de audio al dispositivo de un usuario que está conectado a una red. El mismo sistema descrito anteriormente se puede utilizar para implementar esta realización en la que el flujo de datos de audio se procesa de la misma manera que la parte de audio del flujo de datos de vídeo y los segmentos son segmentos de audio, y en el que el motor de búsqueda 508 utiliza ACR basado en audio.
E. Contenido del programa breve
En algunos tipos de programación, como partes de un juego deportivo, el flujo de datos de vídeo no imitará el paradigma de las Figuras 1 y 2, donde el contenido del tipo de programa tiene una duración significativamente mayor que la duración de un comercial. En cambio, el contenido del tipo de programa puede tener una duración de tiempo similar, o incluso más corta, que la duración de un comercial. El alcance de la presente invención incluye la capacidad de procesar este tipo de flujo de datos de vídeo de la misma manera que se ha descrito anteriormente. F. Biblioteca de comerciales conocidos
En una realización alternativa, los segmentos del flujo de datos de vídeo actual pueden compararse con segmentos en una biblioteca de comerciales conocidos para eliminar la necesidad de procesar tales segmentos usando el sistema en la Figura 5 si se detecta una coincidencia basada en esta comparación. Dicho de otra manera, si el flujo de datos de vídeo actual incluye un comercial conocido, no hay necesidad de procesar segmentos del comercial para determinar si constituye contenido repetido y, por lo tanto, califica como un comercial potencial.
La Figura 8 muestra un sistema 800 para detectar dichos anuncios conocidos. Los flujos de datos de vídeo actuales 818l... 818n se ingresan al motor de procesamiento de vídeo 802 que incluye un motor de análisis 804, un motor de procesamiento de segmentos 806 y un motor de búsqueda 808. El motor de búsqueda 808 compara las representaciones de segmentos emitidas por el motor de procesamiento de segmentos 806 con las representaciones de segmentos recibidas de la base de datos 810 que incluye una biblioteca de comerciales conocidos 812. Las coincidencias representan comerciales probablemente conocidos.
Una vez detectados, los segmentos asociados con el comercial probablemente conocido no se procesan utilizando los componentes del sistema de la Figura 5 que detectan contenido potencial repetido. El sistema 800 de la Figura 8 puede funcionar en paralelo con el sistema 500 de la Figura 5 y puede compartir componentes y elementos de procesamiento similares. Por ejemplo, el sistema 800 puede usar el motor de procesamiento de vídeo 502 y la base de datos 810 para detectar primero si el flujo de datos de vídeo actual incluye un comercial probablemente conocido. Si es así, el motor de procesamiento de vídeo 502 no realiza ningún procesamiento adicional para determinar si existe contenido repetitivo intentando hacer coincidir las representaciones de segmentos previamente almacenadas con las representaciones de segmentos actuales. Si no, el motor de procesamiento de vídeo 502 funciona como se describe anteriormente para determinar si existe contenido repetido intentando hacer coincidir las representaciones de segmentos previamente almacenadas con las representaciones de segmentos actuales.
G. Uso de ACR basado en vídeo y ACR basado en audio en combinación para ACR mejorado
En algunos casos, los comerciales potenciales detectados por los procesos descritos anteriormente arrojarán resultados falsos, como cuando una canción u otra banda sonora aparece en dos segmentos que son completamente diferentes entre sí. Si bien los resultados falsos probablemente se detectarán cuando la plataforma de procesamiento de contenido 516 realice el procesamiento de reconocimiento posterior, sería deseable marcar o filtrar los resultados falsos antes del procesamiento de reconocimiento posterior para reducir la carga de trabajo realizada por la plataforma de procesamiento de contenido.
En la invención, los comerciales potenciales detectados se analizan adicionalmente mediante un proceso ACR basado en vídeo.
La Figura 9 muestra un diagrama esquemático de un sistema 900 para la presente invención en el que los comerciales potenciales detectados se analizan adicionalmente mediante un proceso ACR basado en vídeo.
Los componentes del sistema 900 son similares a los mostrados en la Figura 5, incluyendo los siguientes elementos correspondientes: motor de procesamiento de vídeo 902 que tiene un motor de análisis sintáctico 904, un motor de procesamiento de segmentos 906 y un motor de búsqueda 908; una base de datos 910; una memoria 912 (almacenamiento persistente); y una plataforma de procesamiento de contenido 916. El motor de procesamiento de vídeo 902 y la memoria 912 reciben flujos de datos de vídeo actuales 918l a 918n. Sin embargo, la Figura 9, que ilustra la invención, difiere de la Figura 5, que simplemente ilustra un ejemplo, al menos en los siguientes aspectos: 1. Las representaciones de segmentos en la base de datos 910 son huellas dactilares de audio, y la coincidencia que ocurre en el motor de búsqueda 908 opera con huellas dactilares de audio, y el motor de procesamiento de vídeo 902 realiza una comparación posterior de las coincidencias (por ejemplo, comerciales potenciales) usando huellas dactilares de vídeo para obtener una puntuación de similitud antes de enviar cualquier segmento de vídeo a la plataforma de procesamiento de contenido 916. Solo con fines ilustrativos, el motor de procesamiento de vídeo 902 se muestra dos veces en la Figura 9, una para mostrar su papel en el proceso de análisis de huellas dactilares de audio y la segunda vez para mostrar su papel en el proceso de análisis de huellas dactilares de vídeo.
2. Se usa un motor de reglas 920 para determinar cómo, o si, la plataforma de procesamiento de contenido 916 procesará los segmentos repetidos identificados en base a la puntuación de similitud.
La Figura 10 es un diagrama de flujo para implementar la invención como se muestra en la Figura 9.
PASO 1000: Recibir uno o más flujos de datos de vídeo.
PASO 1002: Analizar cada flujo de datos de vídeo en una pluralidad de segmentos, teniendo cada segmento una duración de tiempo predefinida que es menor que la duración de tiempo de un comercial promedio.
PASO 1004: Crear una primera representación de cada segmento (una huella dactilar de audio).
PASO 1006: Almacenar la pluralidad de representaciones del primer segmento (huellas dactilares de audio) en una base de datos.
PASO 1008: Identifique cualquier huella dactilar de audio en uno o más flujos de datos de vídeo recibidos y analizados que coincidan con las huellas dactilares de audio en la base de datos que se almacenaron previamente a partir de flujos de datos de vídeo que se recibieron y analizaron previamente.
PASO 1010: Cree representaciones de segundo segmento (huellas dactilares de vídeo) de los segmentos que corresponden a la huella dactilar de audio coincidente.
PASO 1012: Comparar las huellas dactilares de vídeo de los segmentos y las huellas dactilares de vídeo de los respectivos segmentos coincidentes y determinar una puntuación de similitud entre las mismas.
PASO 1014: Determinar, utilizando reglas programadas en un motor de reglas que recibe la puntuación de similitud, las acciones posteriores que debe tomar una plataforma de procesamiento de contenido que realiza el procesamiento de reconocimiento del contenido asociado con los segmentos coincidentes identificados.
El sistema 900 de la Figura 9 funciona de la siguiente manera:
1. El motor de procesamiento de vídeo 902 crea representaciones de segmentos adicionales de los segmentos que corresponden a los segmentos repetidos identificados como resultado del proceso ACR basado en audio descrito anteriormente. De ahora en adelante, las representaciones de segmento utilizadas en el proceso ACR basado en vídeo se denominan "representaciones de segundo segmento", mientras que los segmentos utilizados en el proceso ACR basado en audio descrito anteriormente se denominan "representaciones de primer segmento". Es decir, para cada par de segmentos coincidentes en el proceso ACR basado en audio, se utiliza un par de segmentos coincidentes correspondientes en el proceso ACR basado en vídeo y se crean representaciones de segundo segmento en forma de una o más huellas dactilares de vídeo de los segmentos.
Como se discutió anteriormente con respecto a la Figura 3: c7 y cz coincidieron con c1; c9 coincidió con c2; y cx coinciden con c4
Cualquier contenido que se observe que aparece repetidamente en un flujo de datos de vídeo puede declararse como comercial. Por ejemplo, c1, c2 y c4 son probablemente comerciales.
El proceso ACR basado en vídeo crea además una o más huellas dactilares de vídeo de cada uno de los siguientes segmentos (es decir, cada segmento puede tener una o más huellas dactilares de vídeo):
c1, c7 y cz
c2 y c9
c4 y cx
2. El motor de procesamiento de vídeo 902 realiza una comparación de las huellas dactilares de vídeo y las huellas dactilares de vídeo de los respectivos segmentos coincidentes y determina una puntuación de similitud entre ellos. Por ejemplo, la una o más huellas dactilares de vídeo del segmento c2 se comparan con una o más huellas dactilares de vídeo del segmento c9. Un alto grado de similitud indica que es incluso más probable que los
segmentos sean segmentos repetidos de lo que se creía anteriormente a partir del análisis ACR basado en audio y, por lo tanto, es incluso más probable de lo que se creía anteriormente a partir del análisis ACR basado en audio que fueran partes de comerciales potenciales. Esto aumenta en gran medida el nivel de confianza inicial, por ejemplo, en una magnitud (por ejemplo, 90 % de certeza (10 % mal identificado) a 99 % de certeza (1 % mal identificado)) o más. Considere nuevamente el ejemplo en el que una canción u otra banda sonora aparece en dos segmentos que son completamente diferentes entre sí. Si bien el análisis ACR basado en audio identificará estos segmentos como potencialmente coincidentes, es muy poco probable que el vídeo correspondiente sea similar, y esto será detectado por el análisis ACR basado en vídeo.
3. El motor de reglas 920 recibe las puntuaciones de similitud y usa reglas programadas para determinar las acciones posteriores que debe tomar la plataforma de procesamiento de contenido 916 que realiza el procesamiento de reconocimiento del contenido asociado con los segmentos identificados por el análisis ACR basado en audio que tienen segmentos repetidos que son probable que sean parte de comerciales potenciales. La determinación realizada por el motor de reglas 920 se basa en la puntuación de similitud.
Un ejemplo de reglas programadas es el siguiente:
i. Si la puntuación de similitud está por encima de un nivel de umbral predeterminado para la similitud (por ejemplo, por encima del 95 %), el motor de reglas 920 instruye al motor de procesamiento de vídeo 902 para comunicar electrónicamente el contenido de los segmentos a la plataforma de procesamiento de contenido 916 para el procesamiento de reconocimiento posterior utilizando identificación de metadatos sobre el contenido de los segmentos.
ii. Si la puntuación de similitud está en o por debajo de un primer nivel de umbral predeterminado y es mayor que un segundo nivel de umbral predeterminado (por ejemplo, en o por debajo del 95 % y superior al 20 %) para la similitud, el motor de reglas 920 instruye al motor de procesamiento de vídeo 902 para comunicar el contenido de los segmentos a la plataforma de procesamiento de contenido 916 para el procesamiento de reconocimiento posterior utilizando la identificación manual de metadatos sobre el contenido de los segmentos.
iii. Si la puntuación de similitud está por debajo del segundo nivel de umbral predeterminado para la similitud (por ejemplo, por debajo del 20 %), el motor de reglas 920 instruye al motor de procesamiento de vídeo 902 para que no comunique electrónicamente el contenido de los segmentos a la plataforma de procesamiento de contenido 916 para el procesamiento de reconocimiento posterior. De esta manera, la plataforma de procesamiento de contenido 916 no realiza ninguna identificación de metadatos en los segmentos.
Los niveles de umbral predeterminados pueden ser diferentes a los descritos anteriormente, y puede haber más o menos reglas programadas que en el ejemplo anterior. El objetivo del motor de reglas 920 es hacer una suposición informada sobre si los segmentos deben someterse a una revisión automática o manual para la identificación de metadatos, o ninguna revisión en absoluto si es probable que el segmento no sea ni siquiera un segmento repetitivo y, por lo tanto, no es probable que sea un comercial.
Por ejemplo, en otra realización, las reglas programadas pueden consistir en las dos reglas siguientes:
i. Si la puntuación de similitud está por encima de un nivel de umbral predeterminado para la similitud (por ejemplo, por encima del 95 %), el motor de reglas 920 instruye al motor de procesamiento de vídeo 902 para comunicar electrónicamente el contenido de los segmentos a la plataforma de procesamiento de contenido 916 para el procesamiento de reconocimiento posterior utilizando identificación de metadatos sobre el contenido de los segmentos. Esta es la misma regla i. como anteriormente.
ii. Si la puntuación de similitud está en o por debajo del nivel de umbral (por ejemplo, en o por debajo del 95 % de similitud, el motor de reglas 920 instruye al motor de procesamiento de vídeo 902 para comunicar electrónicamente el contenido de los segmentos a la plataforma de procesamiento de contenido 916 para el procesamiento de reconocimiento posterior utilizando la identificación manual de metadatos sobre el contenido de los segmentos.
En este ejemplo alternativo, todos los segmentos identificados por el proceso ACR basado en audio están sujetos al menos a una identificación de metadatos manual sobre el contenido de los segmentos. Este conjunto de reglas protege contra escenarios en los que el ACR basado en vídeo podría haber fallado y muestra poca o similitud.
En otra realización, las reglas programadas pueden consistir en las dos reglas siguientes:
i. Si la puntuación de similitud está por encima de un nivel de umbral predeterminado para la similitud (por ejemplo, por encima del 95 %), el motor de reglas 920 instruye al motor de procesamiento de vídeo 902 para comunicar electrónicamente el contenido de los segmentos a la plataforma de procesamiento de contenido 916 para el procesamiento de reconocimiento posterior utilizando identificación de metadatos sobre el contenido de los segmentos. Esta es la misma regla i. como anteriormente.
ii. Si la puntuación de similitud está en o por debajo del nivel de umbral (por ejemplo, en o por debajo del 95 % de similitud, el motor de reglas 920 instruye al motor de procesamiento de vídeo 902 para que no
comunique electrónicamente el contenido de los segmentos a la plataforma de procesamiento de contenido 916 para su procesamiento de reconocimiento posterior. De esta manera, la plataforma de procesamiento de contenido 516 no realiza ninguna identificación de metadatos en los segmentos.
Esta realización alternativa puede ser adecuada en entornos en los que el ACR basado en vídeo funciona con un grado de precisión extremadamente alto. La experiencia a lo largo del tiempo dicta el mejor conjunto de reglas para optimizar escenarios de falsos positivos y falsos negativos frente a la identificación manual de metadatos, que requiere más tiempo y trabajo.
Cuando se usa ACR basado en vídeo para aumentar el proceso ACR basado en audio, el contenido de un número predefinido de representaciones de segmento adyacentes en el tiempo a las representaciones de segmento identificadas como segmentos que probablemente se repiten aún se comunica a la plataforma de procesamiento de contenido para el procesamiento de reconocimiento posterior en el de la misma manera que se describió anteriormente con respecto al proceso ACR estrictamente basado en audio.
La ACR basada en vídeo es bien conocida en la técnica y, por lo tanto, no se describe con detalle en este documento. Los sistemas ACR basados en vídeo realizan análisis de imágenes en cuadros de vídeo y crean huellas dactilares de vídeo de los cuadros de vídeo, que luego se comparan con huellas dactilares de vídeo previamente almacenadas de manera similar a ACR basado en audio. Puede usarse cualquier plataforma ACR basada en vídeo adecuada para implementar las realizaciones descritas anteriormente. Un ejemplo de un programa comercialmente disponible que puede realizar ACR basado en vídeo es el software Gracenote vídeo ACR.
"Video" se usa a menudo en el contexto de incluir componentes de audio y vídeo. Sin embargo, para mayor claridad, el ACR basado en vídeo y las huellas dactilares de vídeo utilizadas aquí no contienen ningún componente de audio y, por lo tanto, no hay redundancia de información de audio que pueda capturarse en el ACR basado en audio en las huellas dactilares de vídeo.
La identificación de metadatos automatizados es bien conocida en la técnica y, por lo tanto, no se describe más aquí. Uno de los ejemplos de un programa comercialmente disponible que puede realizar una identificación automática de metadatos incluye GOOGLE® Cloud Vision API.
La presente invención puede implementarse con cualquier combinación de hardware y software. Si se implementa como un aparato implementado por ordenador, la presente invención se implementa utilizando medios para realizar todos los pasos y funciones descritos anteriormente.
Cuando se implementa en software, el código de software para el motor de procesamiento de vídeo 502, 802, 902 y su motor de búsqueda 508, 808, 908 se puede ejecutar en cualquier procesador adecuado o conjunto de procesadores, ya sea proporcionado en una sola ordenador o distribuido entre múltiples ordenadores.
La presente invención también puede incluirse en un artículo de fabricación (por ejemplo, uno o más productos de programas informáticos tangibles, no transitorios) que tenga, por ejemplo, medios de almacenamiento legibles por ordenador. El medio de almacenamiento tiene almacenado un código de programa legible por ordenador que está codificado con instrucciones para su ejecución por parte de un procesador para proporcionar y facilitar los mecanismos de la presente invención. El artículo de fabricación puede incluirse como parte de un sistema informático o venderse por separado.
Los medios de almacenamiento pueden ser cualquier medio conocido, como la memoria de un ordenador, uno o más disquetes, discos compactos, discos ópticos, cintas magnéticas, memorias flash, configuraciones de circuitos en matrices de puertas programables en campo u otros dispositivos semiconductores, u otro medio de almacenamiento informático tangible. Los medios de almacenamiento pueden ser transportables, de modo que el programa o los programas almacenados en ellos puedan cargarse en uno o más ordenadores diferentes u otros procesadores para implementar varios aspectos de la presente invención, como se ha comentado anteriormente.
El(los) ordenador(s) utilizado(s) aquí para el motor de procesamiento de vídeo 502, 802, 902 y su motor de búsqueda 508, 808 pueden incorporarse en cualquiera de varias formas, tales como un ordenador montada en bastidor, un ordenador de escritorio, un ordenador portátil, o una tableta. Además, un ordenador puede integrarse en un dispositivo que generalmente no se considera un ordenador pero que tiene capacidades de procesamiento adecuadas, incluido un asistente digital personal (PDA), un teléfono inteligente o cualquier otro dispositivo electrónico portátil, móvil o fijo adecuado.
El motor de procesamiento de vídeo 502, 802, 902 no es un ordenador de propósito general, sino que es una máquina informática especializada que realiza una miríada de funciones de procesamiento de vídeo que no son propias de un ordenador de propósito general, sin la adición de programación especializada.
El motor de procesamiento de vídeo 502, 802, 902; base de datos 510, 810, 910; la memoria 512, 912 y la plataforma de procesamiento de contenido 516, 916 pueden estar interconectadas por una o más redes en cualquier
forma adecuada, incluso como una red de área local o una red de área amplia, como una red empresarial o Internet. Dichas redes pueden basarse en cualquier tecnología adecuada y pueden funcionar de acuerdo con cualquier protocolo adecuado y pueden incluir redes inalámbricas, redes cableadas o redes de fibra óptica.
Los diversos métodos o procesos descritos en este documento pueden codificarse como software ejecutable en uno o más procesadores que emplean cualquiera de una variedad de sistemas operativos o plataformas. Además, dicho software se puede escribir utilizando cualquiera de una serie de lenguajes de programación adecuados y/o herramientas de programación o secuencias de comandos, y también se puede compilar como código de lenguaje de máquina ejecutable o código intermedio que se ejecuta en un marco o máquina virtual.
Los términos "programa" o "software" se usan aquí en un sentido genérico para referirse a cualquier tipo de código de ordenador o conjunto de instrucciones ejecutables por ordenador que se pueden emplear para programar un ordenador u otro procesador para implementar varios aspectos de la presente invención como se discutió anteriormente. No es necesario que el programa informático resida en un único ordenador o procesador, sino que puede distribuirse de forma modular entre varios ordenadores o procesadores diferentes para implementar diversos aspectos de la presente invención.
Las instrucciones ejecutables por ordenador pueden tener muchas formas, como módulos de programa, ejecutadas por una o más ordenadores u otros dispositivos. Generalmente, los módulos de programa incluyen rutinas, programas, objetos, componentes, estructuras de datos y similares, que realizan tareas particulares o implementan tipos de datos abstractos particulares. La funcionalidad de los módulos de programa puede combinarse o distribuirse según se desee en varias realizaciones.
Las estructuras de datos pueden almacenarse en medios legibles por ordenador en cualquier forma adecuada. Para simplificar la ilustración, se puede mostrar que las estructuras de datos tienen campos que están relacionados a través de la ubicación en la estructura de datos. Tales relaciones también pueden lograrse asignando almacenamiento para los campos con ubicaciones en un medio legible por ordenador que transmita la relación entre los campos. Sin embargo, se puede usar cualquier mecanismo adecuado para establecer una relación entre la información en los campos de una estructura de datos, incluso mediante el uso de punteros, etiquetas u otros mecanismos que establezcan una relación entre los elementos de datos.
Las realizaciones preferidas de la presente invención pueden implementarse como métodos, de los cuales se han proporcionado ejemplos. Los actos realizados como parte de los métodos podrán ser ordenados en cualquier forma idónea. En consecuencia, se pueden construir realizaciones en las que los actos se realizan en un orden diferente al ilustrado, lo que puede incluir la realización de algunos actos simultáneamente, incluso aunque tales actos se muestran realizados secuencialmente en las realizaciones ilustrativas.
Claims (12)
- REIVINDICACIONESi. Un método automatizado para detectar comerciales potenciales en uno o más flujos de datos de vídeo que contienen (i) segmentos de contenido de tipo programa y (ii) contenido comercial, el método que comprende: (a) analizar, mediante el motor de procesamiento de vídeo, cada flujo de datos de vídeo en una pluralidad de segmentos, teniendo cada segmento una duración de tiempo predefinida que es menor que la duración de tiempo de un comercial promedio;(b) crear, mediante un motor de procesamiento de vídeo, una representación del primer segmento de cada segmento, siendo la representación del primer segmento de cada segmento una o más huellas dactilares de audio;(c) identificar, mediante un motor de búsqueda que utiliza reconocimiento de contenido automatizado (ACR) basado en audio y las huellas dactilares de audio de los segmentos, cualquier segmento repetido que probablemente sea parte de comerciales potenciales, cada uno de los segmentos repetidos corresponde a diferentes segmentos de los flujos de datos de vídeo que coinciden entre sí en base a sus respectivas huellas dactilares de audio;(d) crear, mediante el motor de procesamiento de vídeo, representaciones de segundo segmento de solo los segmentos que corresponden a los segmentos repetidos identificados en el paso (c), siendo las representaciones de segundo segmento de los segmentos una o más huellas dactilares de vídeo de los segmentos y una o más huellas dactilares de vídeo de los respectivos segmentos coincidentes;(e) comparar las huellas dactilares de vídeo de los segmentos y las huellas dactilares de vídeo de los respectivos segmentos coincidentes en el motor de procesamiento de vídeo y determinar una puntuación de similitud entre ellos, en donde la comparación de huellas dactilares de vídeo se realiza solo en los segmentos que corresponden a los segmentos repetidos identificados en el paso (c); y(f) determinar, utilizando reglas programadas en un motor de reglas que recibe la puntuación de similitud, las acciones posteriores que debe tomar una plataforma de procesamiento de contenido que realiza el procesamiento de reconocimiento del contenido asociado con los segmentos identificados en el paso (c), en donde la determinación hecha por el motor de reglas se basa en la puntuación de similitud.
- 2. El método de la reivindicación 1 que comprende además:(g) para los segmentos que tienen una puntuación de similitud por encima de un nivel de umbral predeterminado para la similitud, el motor de reglas instruye al motor de procesamiento de vídeo para comunicar electrónicamente el contenido de dichos segmentos a la plataforma de procesamiento de contenido para el procesamiento de reconocimiento posterior; y(h) realizar la identificación automatizada de metadatos sobre el contenido de dichos segmentos en la plataforma de procesamiento de contenido.
- 3. El método de la reivindicación 2, en donde para cada segmento comunicado electrónicamente a la plataforma de procesamiento de contenido, el método comprende además:(i) comunicar electrónicamente el contenido de un número predefinido de segmentos adyacentes en el tiempo al segmento, siendo suficiente el número de segmentos para capturar la duración total de un comercial.
- 4. El método de la reivindicación 1 que comprende además:(g) para los segmentos que tienen una puntuación de similitud igual o inferior a un primer nivel de umbral predeterminado para la similitud y superior a un segundo nivel de umbral predeterminado, el motor de reglas instruye al motor de procesamiento de vídeo para comunicar electrónicamente el contenido de dichos segmentos a la plataforma de procesamiento de contenido para su posterior procesamiento de reconocimiento; y(h) realizar la identificación manual de metadatos sobre el contenido de dichos segmentos en la plataforma de procesamiento de contenido.
- 5. El método de la reivindicación 4, en donde para cada segmento comunicado electrónicamente a la plataforma de procesamiento de contenido, el método comprende además:(i) comunicar electrónicamente el contenido de un número predefinido de segmentos adyacentes en el tiempo al segmento, siendo suficiente el número de segmentos para capturar la duración total de un comercial.
- 6. El método de la reivindicación 1 que comprende además:(g) para los segmentos que tienen una puntuación de similitud en o por debajo de un segundo nivel de umbral predeterminado para la similitud, el motor de reglas instruye al motor de procesamiento de vídeo para que no comunique electrónicamente dichos segmentos a la plataforma de procesamiento de contenido para el procesamiento de reconocimiento posterior, en donde no se realiza ninguna identificación de metadatos en los contenidos de dichos segmentos por la plataforma de procesamiento de contenidos.
- 7. Un sistema automatizado para detectar comerciales potenciales en uno o más flujos de datos de vídeo que contienen (i) segmentos de contenido de tipo programa y (ii) contenido comercial, el método que comprende: (a) un motor de procesamiento de vídeo configurado para:(i) analizar cada flujo de datos de vídeo en una pluralidad de segmentos, teniendo cada segmento una duración de tiempo predefinida que es menor que la duración de un comercial promedio, y (ii) crear una representación del primer segmento de cada segmento, siendo la representación del primer segmento de cada segmento una o más huellas dactilares de audio;(b) un motor de búsqueda configurado para identificar cualquier segmento repetitivo que probablemente sea parte de comerciales potenciales utilizando el reconocimiento de contenido automatizado (ACR) basado en audio y las huellas dactilares de audio de los segmentos, cada uno de los segmentos repetidos corresponde a diferentes segmentos del flujo de datos de vídeo que coinciden entre sí en base a sus respectivas huellas dactilares de audio,el motor de procesamiento de vídeo configurado además para:(iii) crear representaciones de segundo segmento solo de los segmentos que corresponden a los segmentos identificados como segmentos repetidos, siendo las representaciones de segundo segmento de los segmentos una o más huellas dactilares de vídeo de los segmentos y una o más huellas dactilares de vídeo de los respectivos segmentos coincidentes, y(iv) comparar las huellas dactilares de vídeo de los segmentos y las huellas dactilares de vídeo de los respectivos segmentos coincidentes en el motor de procesamiento de vídeo y determinar una puntuación de similitud entre ellos, en donde la comparación de huellas dactilares de vídeo se realiza solo en los segmentos que corresponden a los segmentos identificados como segmentos repetidos; (c) una plataforma de procesamiento de contenido que realiza el procesamiento de reconocimiento del contenido asociado con los segmentos identificados como segmentos repetidos; y(d) un motor de reglas que incluye reglas programadas y configurado para determinar las acciones posteriores que debe realizar la plataforma de procesamiento de contenido, en donde el motor de reglas recibe la puntuación de similitud y está configurado para determinar las acciones posteriores basándose en la puntuación de similitud.
- 8. El sistema automatizado de la reivindicación 7, en donde para los segmentos que tienen una puntuación de similitud por encima de un nivel de umbral predeterminado para la similitud, el motor de reglas está configurado además para instruir al motor de procesamiento de vídeo para que comunique electrónicamente el contenido de dichos segmentos a la plataforma de procesamiento de contenido para su procesamiento de reconocimiento posterior, en donde la plataforma de procesamiento de contenido está configurada para realizar una identificación automatizada de metadatos en el contenido de dichos segmentos.
- 9. El sistema automatizado de la reivindicación 8, en donde para cada segmento comunicado electrónicamente a la plataforma de procesamiento de contenido, el motor de procesamiento de vídeo está configurado además para:(iv) comunicar electrónicamente el contenido de un número predefinido de segmentos adyacentes en el tiempo al segmento, siendo suficiente el número de segmentos para capturar la duración total de un comercial.
- 10. El sistema automatizado de la reivindicación 7, en donde para los segmentos que tienen una puntuación de similitud igual o inferior a un primer nivel de umbral predeterminado de similitud y superior a un segundo nivel de umbral predeterminado de similitud, el motor de reglas está configurado además para instruir al motor de procesamiento de vídeo para que comunique electrónicamente el contenido de dichos segmentos a la plataforma de procesamiento de contenido para el procesamiento de reconocimiento posterior, en donde la plataforma de procesamiento de contenido está configurada para realizar la identificación manual de metadatos en el contenido de dichos segmentos.
- 11. El sistema automatizado de la reivindicación 10 en donde para cada segmento comunicado electrónicamente a la plataforma de procesamiento de contenido, el motor de procesamiento de vídeo está configurado además para:(iv) comunicar electrónicamente el contenido de un número predefinido de segmentos adyacentes en el tiempo al segmento, siendo suficiente el número de segmentos para capturar la duración total de un comercial.
- 12. El sistema automatizado de la reivindicación 7, en donde para los segmentos que tienen una puntuación de similitud en o por debajo de un segundo nivel de umbral predeterminado para la similitud, el motor de reglas está configurado además para instruir al motor de procesamiento de vídeo para que no comunique electrónicamente dichos segmentos a la plataforma de procesamiento de contenido para procesamiento de reconocimiento posterior, en donde la plataforma de procesamiento de contenido no realiza ninguna identificación de metadatos sobre el contenido de tales segmentos.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/941,478 US10346474B1 (en) | 2018-03-30 | 2018-03-30 | System and method for detecting repeating content, including commercials, in a video data stream using audio-based and video-based automated content recognition |
PCT/US2019/024267 WO2019191221A1 (en) | 2018-03-30 | 2019-03-27 | System and method for detecting repeating content, including commercials, in a video data stream using audio-based and video-based automated content recognition |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2938868T3 true ES2938868T3 (es) | 2023-04-17 |
Family
ID=66102789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES19717053T Active ES2938868T3 (es) | 2018-03-30 | 2019-03-27 | Sistema y método para detectar contenido repetido, incluidos comerciales, en un flujo de datos de vídeo utilizando el reconocimiento automatizado de contenido basado en audio y basado en vídeo |
Country Status (4)
Country | Link |
---|---|
US (1) | US10346474B1 (es) |
EP (1) | EP3776263B1 (es) |
ES (1) | ES2938868T3 (es) |
WO (1) | WO2019191221A1 (es) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11449545B2 (en) | 2019-05-13 | 2022-09-20 | Snap Inc. | Deduplication of media file search results |
CN112437340B (zh) * | 2020-11-13 | 2023-02-21 | 广东省广播电视局 | 一种音视频中确定有无变种长广告的方法及系统 |
EP4109913A1 (en) * | 2021-06-23 | 2022-12-28 | HURRA Communications GmbH | Method and system for optimizing the detection of a specific position within a data stream |
US11516522B1 (en) | 2021-07-02 | 2022-11-29 | Alphonso Inc. | System and method for identifying potential commercial breaks in a video data stream by detecting absence of identified persons associated with program type content in the video data stream |
EP4312430A1 (en) * | 2022-07-28 | 2024-01-31 | HURRA Communications GmbH | Method and system for receiving a data stream and optimizing the detection of a specific position within the data stream |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7065544B2 (en) | 2001-11-29 | 2006-06-20 | Hewlett-Packard Development Company, L.P. | System and method for detecting repetitions in a multimedia stream |
US7064796B2 (en) | 2001-12-21 | 2006-06-20 | Eloda Inc. | Method and system for re-identifying broadcast segments using statistical profiles |
US7398000B2 (en) | 2002-03-26 | 2008-07-08 | Microsoft Corporation | Digital video segment identification |
US20040237102A1 (en) * | 2003-03-07 | 2004-11-25 | Richard Konig | Advertisement substitution |
US20040226035A1 (en) | 2003-05-05 | 2004-11-11 | Hauser David L. | Method and apparatus for detecting media content |
WO2005079510A2 (en) | 2004-02-17 | 2005-09-01 | Auditude.Com, Inc. | Generation of a media content database by correlating repeating media content in media streams |
US7614064B2 (en) | 2004-08-23 | 2009-11-03 | Microsoft Corporation | Determining program boundaries through viewing behavior |
KR100707189B1 (ko) | 2005-04-29 | 2007-04-13 | 삼성전자주식회사 | 동영상의 광고 검출 장치 및 방법과 그 장치를 제어하는컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록매체 |
ES2386977T3 (es) * | 2005-11-29 | 2012-09-10 | Google Inc. | Aplicaciones sociales e interactivas para medios masivos |
CA2660674A1 (en) | 2008-03-27 | 2009-09-27 | Crim (Centre De Recherche Informatique De Montreal) | Media detection using acoustic recognition |
US8260055B2 (en) | 2009-03-27 | 2012-09-04 | The Nielsen Company (Us), Llc | Methods and apparatus for identifying primary media content in a post-production media content presentation |
US8595781B2 (en) | 2009-05-29 | 2013-11-26 | Cognitive Media Networks, Inc. | Methods for identifying video segments and displaying contextual targeted content on a connected television |
US8930980B2 (en) | 2010-05-27 | 2015-01-06 | Cognitive Networks, Inc. | Systems and methods for real-time television ad detection using an automated content recognition database |
US8457771B2 (en) | 2009-12-10 | 2013-06-04 | At&T Intellectual Property I, L.P. | Automated detection and filtering of audio advertisements |
US8489600B2 (en) | 2010-02-23 | 2013-07-16 | Nokia Corporation | Method and apparatus for segmenting and summarizing media content |
US9508194B1 (en) | 2010-12-30 | 2016-11-29 | Amazon Technologies, Inc. | Utilizing content output devices in an augmented reality environment |
US8793274B2 (en) | 2011-08-08 | 2014-07-29 | Lei Yu | System and method for auto content recognition |
US8737813B2 (en) | 2011-09-16 | 2014-05-27 | Nbcuniversal Media, Llc | Automatic content recognition system and method for providing supplementary content |
US8949872B2 (en) | 2011-12-20 | 2015-02-03 | Yahoo! Inc. | Audio fingerprint for content identification |
US8832723B2 (en) | 2012-02-07 | 2014-09-09 | Turner Broadcasting System, Inc. | Method and system for a synchronous event manager for automatic content recognition |
US8996810B2 (en) * | 2012-12-10 | 2015-03-31 | Facebook, Inc. | System and method of detecting cache inconsistencies |
WO2015038749A1 (en) | 2013-09-13 | 2015-03-19 | Arris Enterprises, Inc. | Content based video content segmentation |
US9369780B2 (en) | 2014-07-31 | 2016-06-14 | Verizon Patent And Licensing Inc. | Methods and systems for detecting one or more advertisement breaks in a media content stream |
US9967619B2 (en) * | 2014-12-01 | 2018-05-08 | Google Llc | System and method for associating search queries with remote content display |
US9973662B2 (en) | 2015-01-13 | 2018-05-15 | Arris Enterprises Llc | Detection of solid color frames for determining transitions in video content |
US9699504B2 (en) * | 2015-09-28 | 2017-07-04 | Rovi Guides, Inc. | Systems and methods for identifying a source of media content based on a log of content identifiers |
US9628836B1 (en) | 2016-11-02 | 2017-04-18 | Alphonso Inc. | System and method for removing erroneously identified TV commercials detected using automatic content recognition |
-
2018
- 2018-03-30 US US15/941,478 patent/US10346474B1/en active Active
-
2019
- 2019-03-27 WO PCT/US2019/024267 patent/WO2019191221A1/en active Application Filing
- 2019-03-27 EP EP19717053.3A patent/EP3776263B1/en active Active
- 2019-03-27 ES ES19717053T patent/ES2938868T3/es active Active
Also Published As
Publication number | Publication date |
---|---|
US10346474B1 (en) | 2019-07-09 |
EP3776263A1 (en) | 2021-02-17 |
EP3776263B1 (en) | 2022-11-30 |
WO2019191221A1 (en) | 2019-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2938868T3 (es) | Sistema y método para detectar contenido repetido, incluidos comerciales, en un flujo de datos de vídeo utilizando el reconocimiento automatizado de contenido basado en audio y basado en vídeo | |
US11971919B2 (en) | Systems and methods for partitioning search indexes for improved efficiency in identifying media segments | |
US10614137B2 (en) | System and method for detecting repeating content, including commercials, in a video data stream | |
US11659255B2 (en) | Detection of common media segments | |
US20170019719A1 (en) | Detection of Common Media Segments | |
US9628836B1 (en) | System and method for removing erroneously identified TV commercials detected using automatic content recognition | |
US20240298056A1 (en) | Systems and Methods for Automated Extraction of Closed Captions in Real Time or Near Real-Time and Tagging of Streaming Data for Advertisements | |
US11102526B1 (en) | System and method for selectively replacing commercials that are in a video data stream with alternative commercials | |
JP2021519557A (ja) | ローカルコマーシャル挿入機会の識別のための方法、コンピュータ可読記憶媒体及び装置 | |
US10805681B2 (en) | System and method for detecting unknown TV commercials from a live TV stream | |
US9148708B2 (en) | Automated statutory warning system to display disclaimers | |
WO2019191228A1 (en) | Detection of potential commercial by detection and analysis of transitions in video content |