Python视频字幕识别——pytesseract

一、整体思路和第三方库的安装

识别视频字幕文本的思路是:先对视频进行切帧(这里可以使用之前用到的视频分镜方法,更准确地得到字幕不同的帧),再针对图像定位字幕文本的位置。然后利用灰度化、中值滤波、边缘化检测等基于OpenCV的图像处理方法对文字部分进行处理。之后用第三方库pytesseract的算法将文字提取出来。

这里需要用到的第三方库是tesseract。首先下载安装包,下载地址:

https://digi.bib.uni-mannheim.de/tesseract/  

 下载好后需要配置变量环境,在环境变量中加入该包:

 Python视频字幕识别——pytesseract_第1张图片

然后输入命令pip3 install pytesseract,将该包安装到python中。

二、代码部分

import pytesseract
import cv2
import numpy as np
from scipy import stats
import os
import matplotlib.pyplot as plt

print(os.getcwd())
if __name__ == '__main__':
    path = "./video/cut2.mp4"  #原视频字幕有英文会影响识别正确率
    print(path)
    cap = cv2.VideoCapture(path)
    frame_count = int(cap.get(cv2.CAP_PROP_FRAME_COUNT)) #把帧数转化为整数
    print(frame_count)
    
    i=0
    while i

提取结果:

Python视频字幕识别——pytesseract_第2张图片

 

 

你可能感兴趣的:(python,音视频,开发语言,图像处理)