简体中文 | English
Video-subtitle-extractor (VSE) 是一款将视频中的硬字幕提取为外挂字幕文件(srt格式)的软件。 主要实现了以下功能:
- 提取视频中的关键帧
- 检测视频帧中文本的所在位置
- 识别视频帧中文本的内容
- 过滤非字幕区域的文本
- 去除水印、台标文本、原视频硬字幕,可配合:video-subtitle-remover (VSR)
- 去除重复字幕行,生成srt字幕文件/txt文本文件
若需要生成txt文本,可以在backend/config.py中设置
GENERATE_TXT=True
- 支持视频字幕批量提取
- 多语言:支持简体中文(中英双语)、繁体中文、英文、日语、韩语、越南语、阿拉伯语、法语、德语、俄语、西班牙语、葡萄牙语、意大利语等87种语言的字幕提取
- 多模式:
- 快速:(推荐)使用轻量模型,快速提取字幕,可能丢少量字幕、存在少量错别字
- 自动:(推荐)自动判断模型,CPU下使用轻量模型;GPU下使用精准模型,提取字幕速度较慢,可能丢少量字幕、几乎不存在错别字
- 精准:(不推荐)使用精准模型,GPU下逐帧检测,不丢字幕,几乎不存在错别字,但速度非常慢
请优先使用快速/自动模式,如果前两种模式存在较多丢字幕轴情况时,再使用精准模式
项目特色:
- 采用本地进行OCR识别,无需设置调用任何API,不需要接入百度、阿里等在线OCR服务即可本地完成文本识别
- 支持GPU加速,GPU加速后可以获得更高的准确率与更快的提取速度
使用说明:
-
有使用问题请加群讨论,QQ群:210150985、816881808
-
点击【打开】后选择视频文件,调整字幕区域,点击【运行】
- 单文件提取:打开文件的时候选择单个视频
- 批量提取:打开文件的时候选择多个视频,确保每个视频的分辨率、字幕区域保持一致
-
去除水印文本/替换特定文本:
如果视频中出现特定的文本需要删除,或者特定的文本需要替换,可以编辑
backend/configs/typoMap.json
文件,加入你要替换或去除的内容
{
"l'm": "I'm",
"l just": "I just",
"Let'sqo": "Let's go",
"Iife": "life",
"威筋": "威胁",
"性感荷官在线发牌": ""
}
这样就可以把文本中出现的所有“威筋”替换为“威胁”,所有的“性感荷官在线发牌”文本删除
- 视频以及程序路径请不要带中文和空格,否则可能出现未知错误!!!
如:以下存放视频和代码的路径都不行
D:\下载\vse\运行程序.exe(路径含中文)
E:\study\kaoyan\sanshang youya.mp4 (路径含空格)
- 直接下载压缩包解压运行,如果不能运行再按照下面的教程,尝试源码安装conda环境运行
下载地址:
- Windows 绿色版本v2.0.0(CPU): vse_windows_cpu_v2.0.0.zip 提取码:vse2
推荐使用,启动速度较快
- Windows 单文件版本v2.0.0(CPU): vse.exe 提取码:rl02
双击直接运行,每次打开时会有一点慢,若出现误报毒,使用绿色版
- Windows GPU版本v2.0.0(GPU): vse_windows_gpu_v2.0.0.7z 提取码:vse2
仅供具有Nvidia显卡的用户使用(AMD的显卡不行),提取速度非常快
- MacOS 版本v0.1.0(CPU): vse_macOS_CPU.dmg 提取码:7gbo
PS: 若无法下载,请前往 Release 下载
有任何改进意见请在ISSUES和DISCUSSION中提出
- GUI版:
- 点击查看视频教程 👇
PS: Google Colab只能运行CLI版本
(1)切换到源码所在目录:
cd <源码所在目录>
例如:如果你的源代码放在D盘的tools文件下,并且源代码的文件夹名为video-subtitle-extractor,就输入
cd D:/tools/video-subtitle-extractor-main
(2)创建激活conda环境
conda create -n videoEnv python=3.12
conda activate videoEnv
请确保你已经安装 python 3.12+,使用conda创建项目虚拟环境并激活环境 (建议创建虚拟环境运行,以免后续出现问题)
-
安装依赖:
pip install -r requirements.txt
-
安装CUDA和cuDNN
请确保有拥有Nvidia的显卡,30系列以上的显卡驱动可能不支持 cuda 11.2及以下版本的安装
如果安装cuda 10.2,请对应安装7.6.5的cuDNN,并使用对应cuda版本的paddlepaddle,请不要使用cuDNN v8.x 和 cuda 10.2的组合
如果安装cuda 11.2,请对应安装8.1.1的cuDNN,并使用对应cuda版本的paddlepaddle
如果安装cuda 11.6,请对应安装8.4.0的cuDNN,并使用对应cuda版本的paddlepaddle
如果安装cuda 11.8,请对应安装8.6.0的cuDNN,并使用对应cuda版本的paddlepaddle
如果安装cuda 12.0,请对应安装8.9.1的cuDNN,并使用对应cuda版本的paddlepaddle
Linux用户
wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda_11.7.0_515.43.04_linux.run
sudo sh cuda_11.7.0_515.43.04_linux.run
1. 输入accept
2. 选中CUDA Toolkit 11.7(如果你没有安装nvidia驱动则选中Driver,如果你已经安装了nvidia驱动请不要选中driver),之后选中install,回车
3. 添加环境变量
在 ~/.bashrc 加入以下内容
# CUDA
export PATH=/usr/local/cuda-11.7/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
使其生效
source ~/.bashrc
国内:cudnn-linux-x86_64-8.4.1.50_cuda11.6-archive.tar.xz 提取码:57mg
国外:cudnn-linux-x86_64-8.4.1.50_cuda11.6-archive.tar.xz
tar -xf cudnn-linux-x86_64-8.4.1.50_cuda11.6-archive.tar.xz
mv cudnn-linux-x86_64-8.4.1.50_cuda11.6-archive cuda
sudo cp ./cuda/include/* /usr/local/cuda-11.7/include/
sudo cp ./cuda/lib/* /usr/local/cuda-11.7/lib64/
sudo chmod a+r /usr/local/cuda-11.7/lib64/*
sudo chmod a+r /usr/local/cuda-11.7/include/*
Windows用户
cuda_11.7.0_516.01_windows.execudnn-windows-x86_64-8.4.0.27_cuda11.6-archive.zip
< 9F8C div class="markdown-heading" dir="auto">