Cómo sacar automáticamente el texto de un video

Actualmente estoy experimentando con After Effects y Premiere para ver de qué tipo de cosas extrañas podrían ser capaces y esperaba que alguien tuviera alguna idea sobre una idea que tuve.

En esta situación, tengo algo de texto, como algunos subtítulos o incluso un código de tiempo, que está grabado en el metraje. No tengo ninguno de los archivos de proyecto para este metraje, lo único con lo que tengo que trabajar es el video final.

¿Hay alguna forma de que Adobe Premiere o After Effects reconozcan qué texto está en la pantalla automáticamente? Puntos de bonificación si luego puede tomar esta información e introducirla en un nuevo elemento de título.

PD Todo esto es asumiendo que el texto del video de origen es de buena calidad (es decir, el texto es estático, se distingue decentemente del video detrás de él y no es demasiado pequeño).

Puede exportar los cuadros como una secuencia de cuadros y luego usar el software OCR en los cuadros. Sin embargo, este sería un trabajo para shell scripting o un lenguaje de programación en lugar de AE ​​o PP.
@stib si agrega esto como respuesta y proporciona algunos enlaces al software sugerido, lo aceptaré.

Respuestas (1)

No conozco ninguna solución existente para esto en Premiere o AE.

Sin embargo, si sabe un poco sobre programación, es posible que pueda escribir un script usando OpenCV que ejecute Tesseract OCR en cuadros de video y salga con el texto que desea. Una vez que tenga el texto y los códigos de tiempo, definitivamente podría escribir un guión para crear los títulos en los códigos de tiempo apropiados dentro de AE ​​o Premiere.

(Me di cuenta de estas herramientas de código abierto ya que actualmente estoy creando una aplicación móvil que ejecuta OCR en documentos).

Consulte los documentos de reconocimiento de texto de escena para OpenCV, si desea probar esa ruta.

Entonces, para este método, necesitaría generar una serie de fotogramas fijos, ¿correcto? ¿O tesseract acepta video? Si no acepta video, ¿cómo vincularía fácilmente el número de cuadro a un código de tiempo? ¿Solo cuenta los marcos?
OpenCV puede manejar video, y los documentos de reconocimiento de texto de escena que señalé muestran cómo llamar a Tesseract en un marco a través de OpenCV. Tienen un código de muestra de C ++ que puede ayudarlo a comenzar, pero OpenCV también se puede usar desde Python, si le resulta más cómodo.
En cuanto al código de tiempo, OpenCV funciona con un número entero de fotogramas, pero puede usarlo directamente al crear secuencias de comandos en AE (y supongo que Premiere), suponiendo que la velocidad de fotogramas de la secuencia coincida.