视频时间轴及字幕提取工具-python
项目描述 视频时间轴及字幕提取工具
视频时间轴及字幕提取工具。通过帧差法自动识别视频中字幕的出现/消失时间点,生成字幕时间轴,再结合 OCR 技术识别字幕文本,最终输出标准的 .srt 字幕文件。
项目功能
字幕时间轴识别:通过帧差法判断相邻帧是否相同,得出字幕出现与消失的时间点;再通过计算帧的 SSIM(结构相似性)合并相同的时间轴,避免重复。
字幕区域处理:用户可框选字幕区域并调整二值化阈值,得到只包含字幕的图片,提升 OCR 精度。
OCR 字幕识别:调用百度 OCR 接口对二值化后的字幕图片进行文字识别(支持中英文等多种语言)。
结果输出:将时间轴与识别出的文本组合,生成带时间轴的 .srt 字幕文件,输出到 output 文件夹。
GUI 交互:提供视频预览、字幕区域调整、参数调节、滚动条查看不同帧效果等可视化操作界面。
运行环境:Windows 系统;Python 3.x(建议 3.7 及以上)
开发工具:PyCharm
启动入口:index.pyw
外部依赖:需要申请百度 OCR 的 API Key / Secret Key
(https://console.bce.baidu.com/ai/#/ai/ocr/app/create) 在百度智能云创建文字识别应用, 在应用列表页面可以看到 API Key 和 Secret Key
项目技术
语言:Python
GUI 框架:tkinter + ttkthemes(使用 arc 主题)
图像/视频处理:OpenCV(opencv-python)、Pillow、scikit-image、scipy(用于帧差法与 SSIM 计算)
网络请求:requests(调用百度 OCR HTTP 接口)
OCR 服务:百度智能云文字识别 API
核心模块:
config.py:配置管理
cv.py:OpenCV 视频/帧处理工具
ocr.py / ocrapi.py:OCR 识别与 API 封装
gui.py:主窗口 GUI
gl.py:全局对象容器
以上系统源码经过技术整理与调试,确保能正常运行



