# 自动翻译字幕的播放器
![效果图](https://github.com/Jezemy/VideoSubScanPlayer/blob/master/pic/display01.png?raw=true)
# 简单介绍
本项目作为本人的数字图像处理课程设计,是一个简陋的视频内嵌字幕识别播放器。
通过数字图像处理技术处理视频内嵌的字幕,然后通过卷积神经网络进行识别,并利用百度翻译接口进行翻译。
UI界面使用的是PYQT,深度学习框架是TensorFlow
图形处理主要使用OpenCV,多线程库使用的是vthread
# 支持功能
- 支持导入mp4,mov,avi,mkv格式的视频
- 支持处理视频下方的白色字幕
- 支持翻译字幕
- 支持将字幕导出
# 运行环境需求
- python3.6以上
- TensorFlow 2.0 以上(原版本是1.4版本,已将主要代码改成兼容1的代码,tf.compat.v1.xxx模式)
- OpenCV
- Pyqt
- Numpy
- VThread
- PIL
- Retrying
# 目录说明
### 文件夹
- image_process_tool 提供了分割视频字幕的工具
- model 训练好的模型
- icon 程序图标
- font 数据集字体
- video Test 用于测试的视频文件
### 文件
- baidu_translator.py 百度翻译API调用
- CNN_new.py 训练CNN模型
- font_data.py 根据字体font生成数据集
- expand_dataset.py 在生成的数据集基础上进行泛化
- VideoPlayer.py 视频播放器主程序
# 使用说明
下载这个[模型](https://pan.baidu.com/s/16ZYLcQlcK9N6J5TNSE_gHg),提取码是**elm4**, 解压后放入VideoSubScanPlayer/model/ 下
安装好依赖库后,在VideoSubScanPlayer文件夹下运行代码
```python
python VideoPlayer.py
```
# 开启翻译的方式
- 首先要有一个百度翻译接口,没有的话先[注册](https://api.fanyi.baidu.com/)
- 在开发者信息中得到App ID和密钥
- 修改baidu_translator.py中的部分代码
![修改1](https://github.com/Jezemy/VideoSubScanPlayer/blob/master/pic/instruction1.png?raw=true)
- 修改VideoPlayer.py中的部分代码
![修改2](https://github.com/Jezemy/VideoSubScanPlayer/blob/master/pic/instruction2.png?raw=true)
# 翻译效果图
![translated01.jpg](https://github.com/Jezemy/VideoSubScanPlayer/blob/master/pic/translated01.jpg?raw=true)
![translated02.jpg](https://github.com/Jezemy/VideoSubScanPlayer/blob/master/pic/translated02.jpg?raw=true)
# 不足与缺陷
- 由于图像处理算法的问题,因此对原视频字幕要求比较高,最好是字体清晰的白字黑底字幕,且字体间距不能太靠近。后续可能会改用其他算法。
- 模型的精准度还不够高,对于一些大小写很相似的字母不能有效区分出来
- 暂时不支持拖动,只能从头播放到尾,然后通过导出字幕的方式保留字幕信息。
- 需要使用百度翻译接口才可以翻译
# 附预览图
### 模块分布流程图
![process01.jpg](https://github.com/Jezemy/VideoSubScanPlayer/blob/master/pic/process01.jpg?raw=true)
### 图像处理流程图
![process02.jpg](https://github.com/Jezemy/VideoSubScanPlayer/blob/master/pic/process02.jpg?raw=true)
### 多线程处理流程图
![process03.jpg](https://github.com/Jezemy/VideoSubScanPlayer/blob/master/pic/process03.jpg?raw=true)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
python实现利用CNN卷积神经网络识别内嵌视频下方字幕的视频播放器+源码+项目文档+设计思路+效果展示,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 项目简介: 本项目作为本人的数字图像处理课程设计,是一个简陋的视频内嵌字幕识别播放器。 通过数字图像处理技术处理视频内嵌的字幕,然后通过卷积神经网络进行识别,并利用百度翻译接口进行翻译。 UI界面使用的是PYQT,深度学习框架是TensorFlow 图形处理主要使用OpenCV,多线程库使用的是vthread 支持功能 支持导入mp4,mov,avi,mkv格式的视频 支持处理视频下方的白色字幕 支持翻译字幕 支持将字幕导出
资源推荐
资源详情
资源评论
收起资源包目录
识别内嵌视频下方字幕的视频播放器.zip (60个子文件)
VideoSubScanPlayer-master
VideoSubScanPlayer
__init__.py 15B
font
STLITI.TTF 3.92MB
hylxtj.ttf 1.5MB
AGENCYR.TTF 58KB
ARIALUNI.TTF 22.2MB
sxslkj.ttf 5.43MB
STSONG.TTF 11.16MB
YaHei.Consolas.1.11b.ttf 13.81MB
calibri.ttf 1.57MB
calibrii.ttf 1.14MB
ywsfxsjt.ttf 6.93MB
YuGothM.ttc 13.12MB
fzcyjt.ttf 4.12MB
TCM_____.TTF 74KB
ERASMD.TTF 59KB
jsjs.ttf 4.98MB
fzxq.ttf 4.27MB
YuGothL.ttc 13.18MB
hyxbzztj.ttf 1.33MB
hydytj.ttf 4MB
mingliub.ttc 35.08MB
font_data.py 3KB
videoTest
video2.mp4 38.67MB
video.mp4 48.64MB
本目录为用于测试的视频片段.txt 0B
video3.mp4 46.63MB
1.jpg 388KB
CNN_new.py 18KB
baidu_translator.py 978B
expand_dataset.py 6KB
65_1.jpg 1KB
model
checkpoint 59B
.index 938B
本目录为训练好的CNN模型.txt 0B
.data-00000-of-00001 134B
.meta 71KB
image_process_tool
__init__.py 15B
cutFont.py 6KB
zoom.py 3KB
readVideo.py 663B
cut.py 3KB
视频预处理工具.txt 0B
icon
play_button.ico 66KB
stop_button.ico 66KB
open_button.ico 65KB
btn_extractSubtitle.ico 59KB
video.ico 49KB
VideoPlayer.py 17KB
pic
process03.jpg 54KB
process01.jpg 39KB
instruction1.png 25KB
instruction2.png 40KB
process02.jpg 24KB
translated01.jpg 33KB
translated02.jpg 44KB
VideoPlayer.png 997KB
display01.png 773KB
LICENSE 1KB
.gitignore 2KB
README.md 3KB
共 60 条
- 1
资源评论
梦回阑珊
- 粉丝: 4999
- 资源: 1644
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功