为视频字幕发愁?来认识你的新解决方案
你是否曾经需要从视频内容中提取有意义的字幕,却发现这个过程繁琐又耗时?无论你是内容创作者、研究人员、开发者,还是无障碍倡导者,ViT Captioner 都是一款开源工具,可以将视频帧转换为有用的文本描述。
什么是 ViT Captioner?
ViT Captioner 是一个 Python 包,它使用 ViT-GPT2 图像字幕生成模型从视频中提取关键帧,并生成自然语言字幕。它连接了计算机视觉与自然语言处理,能够为视频中视觉上重要的时刻生成描述。
生成结果可用作字幕、结构化元数据,或带字幕的关键帧图片,便于审阅和索引。
主要功能
- 智能关键帧提取:使用 Katna 识别有意义的画面,并在需要时回退到均匀采样。
- 图像字幕生成:使用 ViT-GPT2 模型生成描述性字幕。
- 灵活的输出格式:创建 SRT 字幕文件、JSON 数据和带字幕的图片。
- 时间线可视化:在交互式时间线上显示关键帧和时间戳。
- 适合批量处理的工作流:包含进度指示器和资源感知处理。
- 对开发者友好的 API:提供 Python 接口,便于集成到其他应用中。
- 命令行界面:支持从终端快速为视频生成字幕。
真实应用场景
- 内容创作者 可以生成字幕草稿,并提升视频的可发现性。
- 研究人员 可以用帧级描述来总结和检查视频数据集。
- 开发者 可以为应用添加轻量级的视频理解功能。
- 教育工作者 可以让教学视频更易于回顾和搜索。
- 媒体档案管理员 可以根据视觉内容为视频合集建立索引。
实际效果
ViT Captioner 可以生成如下 SRT 字幕文件:
1
00:00:00,000 --> 00:00:00,922
a piece of meat on a plate on a counter
2
00:00:00,922 --> 00:00:01,844
a piece of meat is being cooked in a pan
它还可以创建结构化 JSON 数据和带字幕的关键帧图片,让你更容易检查模型在每个选定时间戳看到的内容。
开始使用
使用 pip 安装这个包:
pip install vit-captioner
从命令行为视频生成字幕:
vit-captioner caption-video -V /path/to/video.mp4 -N 10 -v
使用 Python API 集成到你自己的工作流中:
from vit_captioner.captioning.video import VideoToCaption
converter = VideoToCaption("/path/to/video.mp4", num_frames=10, verbose=True)
converter.convert()
为了获得可复现的结果,请在本地检查已安装的软件包版本和可用命令选项:
vit-captioner --help
python -c "import vit_captioner; print(vit_captioner.__version__)"
构建在开源基础之上
ViT Captioner 构建于多个开源项目之上:
- nlpconnect/vit-gpt2-image-captioning,用于图像字幕生成
- Katna,用于关键帧提取
- PyTorch 和 Hugging Face Transformers,用于模型推理
试试 ViT Captioner
ViT Captioner 可在 GitHub 和 PyPI 获取:
如果你觉得它有用,欢迎给它点星,也欢迎贡献代码。
