Detección de corte

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

Se conoce como detección de corte a la detección automática de cortes en vídeo digital.

Propósito[editar]

La detección de corte es un recurso empleado en la postproducción de vídeo mediante computadora que le ahorra al operario la lenta tarea de buscar los cortes a mano. La detección automática de cortes también es uno de los pilares fundamentales del campo del archivado automático de vídeo, cuyo objetivo consiste en producir índices para grandes archivos de material de vídeo. La detección de corte puede ayudar tanto en la tarea de clasificar los vídeos como a la hora de elegir imágenes para una previsualización.

Cortes bruscos y suaves[editar]

Un corte duro.
En un corto suave por encadenado las escenas se unen mediante un efecto de transparencia.

Se pueden diferenciar dos tipos de corte, los duros (conocidos en en inglés como hard cut) o suave (en inglés soft cut). Los cortes duros dan fin a la escena súbita y abruptamente, dando paso en el siguiente fotograma a la próxima escena. En contraste, en un corte suave la primera escena se desvanece gradualmente dando paso a la escena siguiente.

Mientras que con los algoritmos modernos se pueden detectar los cortes duros con muy buenos resultados, los cortes suaves siguen suponiendo un desafío para el procesamiento de imagen. El cambio brusco del contenido completo de la imagen en un corte duro puede detectarse con facilidad con técnicas simples como la diferencia de histogramas. El cambio gradual del contenido en un cambio suave da lugar a errores frecuentes de los algoritmos de detección actuales, pues confunden con facilidad escenas con movimiento de los objetos filmados y los cortes suaves.

Proceso[editar]

Proceso de detección de cortes consta de dos fases:

  • Cuantización. Todos los fotogramas del vídeo digital se comparan con sus sucesores. De esta forma se asigna un valor a cada par de fotogramas sucesivos, que debe de tomar valores altos en presencia de cortes y pequeños en su ausencia.
  • Filtrado. A continuación los valores asignados a cada par se comparan con un valor umbral, y se rechazan los pares cuyo valor está por debajo del umbral. En los pares que han quedado por encima del umbral se supone que hay un corte.
Schnitterkennung. (1) Detección de corte duro. (2) Fallo al detectar un corte suave por encadenado. (3) Una transición por encadenado en la que la escena siguiente aparece por la derecha y desplaza a la anterior da lugar erróneamente a la detección de dos cortes.

Esta aproximación es vulnerable a errores. Como cualquier sobrepasamiento del umbral será interpretado como corte, éste debe de elegirse con cuidado. Por lo general se determina su valor óptimo por métodos estadísticos y confirmado por tests posteriores.

Un proceso de detección de corte se compone de dos partes, que se pueden optimizar independientemente. La cuantización se debe optimizar de forma que que los valores queden muy distribuidos, y también que las diferencias de los valores entre los cortes y los no-cortes sean tan grandes como sea posible. El filtrado puede ser diseñado para ser permisivo, de forma que los cortes suaves no sean erróneamente detectados como muchos cortes sucesivos.

Cuantización[editar]

La optimización del filtrado no es una tarea sencilla. Se han diseñado muchos algoritmos para acometerla, con más o menos ventajas.

La Suma de diferencias absolutas es probablemente la aproximación más evidente de evaluar las diferencias entre dos fotogramas: Los valores de color de una imagen se comparan pixel a pixel con los de la siguiente y se suman los valores absolutos de las diferencias. El resultado es un número positivo que representa lo grandes que son las diferencias punto a punto entre dos imágenes. El algoritmo es muy sensible a pequeños cambios y da lugar a valores altos en ocasiones en las que no hay ningún corte, especialmente en movimientos rápidos de cámara, explosiones o al encenderse una luz en una escena que previamente era oscura. Por otra parte no reacciona a la mayoría de cortes suaves, en los que los cambios se producen demasiado lentamente y por tanto el valor de las diferencias entre píxeles de fotogramas sucesivos no crece sustancialmente. Sin embargo, este proceso se aplica con frecuencia, gracias a que los cortes duros se pueden detectar con seguridad y es muy rápido, tanto de implementar como en su ejecución.

El método de diferencia de histogramas es una variacón menor de la suma de diferencias absolutas. En lugar de comparar las imágenes pixel a pixel entre, se comparan los histogramas. Un histograma almacena para cada color primario (rojo, verde, azul) o su luminancia el número de píxeles de una imagen que tienen cada valor. La diferencia de histogramas proporciona una medida de cómo el contenido total de la imagen se diferencia del de otra. Este método presenta la desventaja de que es posible que dos imágenes completamente diferentes tengan histogramas muy similares e incluso idénticos—por ejemplo, un fotograma que muestra el mar y la arena de la playa, y otro que representa un cielo y un campo de trigo. No hay ninguna garantía de que se puedan detectar los cambios duros con seguridad. Por otra parte, el método de la diferencia de histogramas es menos sensible a errores debidos a pequeñas diferencias en la imagen debidas a movimientos de cámara o de los objetos capturados.

El método de Edge Change Ratio (térmno inglés para «tasa de cambio de bordes») aporta información sobre las diferencias de contenido entre dos imágenes. Primero se buscan los contornos de todos los objetos de la imagen. Entonces se comparan los bordes de los objetos de las dos imágenes y se determina la proporción de bordes de objetos del primer fotograma que desaparecen y la cantidad de objetos nuevos que aparecen en el siguiente fotograma. Se debe de calcular también cómo de grandes son las diferencias entre los objetos representados. La Edge Change Ratio es uno de los mejores indicadores de la presencia de cortes. Es muy susceptible a los cortes duros y algunas formas de cambios suaves se pueden detectar también con seguridad. Sin embargo tiene la desventaja de fallar en algunas transiciones, como por ejemplo cuando van apareciendo franjas que forman parte de la nueva escena, hasta que llenan la imagen y se completa el corte.[1]

Otra posibilidad es combinar los diferentes métodos y ponderar sus resultados.

Filtrado[editar]

El filtrado simple por umbral puede extenderse, de forma que se combinen varios valores que exceden el umbral en un solo punto que identifica al corte. Para esto se debe elige una distancia mínima que pueden tener dos valores que excedan el umbral para que el sistema los interprete como dos cortes diferentes y en estos casos se escoge del intervalo de frames un sólo punto—normalmente el que tiene el valor mayor del intervalo.

Medida de calidad[editar]

Hay tres evaluadores de la calidad de un sistema automático de detección de cortes. Llamando C a la cantidad de cortes correctamente detectados, M al número de cortes que no se detectaron y F a la suma de cortes falsamente detectados—cortes detectados que en realidad no se producen—se pueden emplear estos tres evaluadores:

  • Precision. La cantidad de cortes correctamente detectados de entre los que el algoritmo encontró.

P={C \over C + F}

  • Recall. La cantidad de cortes detectados de entre los que había.

V={C \over C + M}

  • F1. Una combinación de los métodos anteriores que tiene en cuenta tanto la Precision como el Recall.

F1={2 \cdot P \cdot V \over P + V}

Estas medidas de calidad arrojan como resultado un número entre 0 y 1. Cuanto mayor es el resultado, mejor es el detector.

Referencias[editar]

  1. Véase por ejemplo el inicio de este vídeo [1]

Bibliografía[editar]

  • R. Steinmetz: Multimedia-Technologie. Springer, Berlín, Julio 2000. ISBN 3-540-67332-6.