VCED 可以通过你的文字描述来自动识别视频中相符合的片段进行视频剪辑。该项目基于跨模态搜索与向量检索技术搭建,通过前后端分离的模式,帮助你快速的接触新一代搜索技术。
如果你喜欢本项目欢迎给一个
QuickStart - 项目结构 - 文档 - Learning Roadmap - 反馈 - 参与贡献 - 关注我们 - License
QuickStart
通过 docker 启动
# 拉取项目
cd ~
git clone https://github.com/kainstan/vced.git
# 进入项目目录
cd ~/vced
# 通过shell脚本启动
./startup.sh
通过源代码启动
说明
本项目依赖以下环境,在进行具体的安装之前请确保你的电脑已经安装好这些依赖
- 创建 python3.9 环境
- 安装 rust, ffmpeg
- 安装 clip
pip install git+https://github.com/openai/CLIP.git
下面的Shell脚本已做相应的操作,一键执行即可。
Jina 暂不支持在 Windows 安装,如需在 Windows 上安装 Jina 请通过 WSL 方式,详情见:Jina 轻松学 —— Windows中安装Jina
Shell脚本安装环境
注意:安装期间可能需要人工干预选择安装选项或时区等(并不是每个小伙伴都会出现时区选择)
# 拉取项目
cd ~
git clone https://github.com/kainstan/vced.git
# 进入项目目录
cd ~/vced
# 通过shell脚本启动
./startup.sh native
启动 server
# 进入 server 文件夹
cd ~/vced/code/service
# 启动服务端
python app.py
启动 web
前端我们通过 Streamlit 搭建。Streamlit 是一个 Python Web 应用框架,但和常规 Web 框架,如 Flask/Django 的不同之处在于,它不需要你去编写任何客户端代码(HTML/CSS/JS),只需要编写普通的 Python 模块,就可以在很短的时间内创建美观并具备高度交互性的界面。
# 进入 web 文件夹
cd ~/vced/code/web
# 启动服务端
streamlit run app.py
Streamlit默认启动的端口为8501,也可以通过 localhost:8501
进行访问
项目结构
├── code/service
├── customClipImage (通过 CLIP 模型处理上传的视频)
├── customClipText (通过 CLIP 模型处理输入的文字)
├── customIndexer (创建向量数据的索引)
├── videoLoader (对上传的视频进行处理)
├── workspace (用于存储生成的向量数据)
├── app.py (后端主程序)
├── code/web
├── data (用于存储上传的视频)
│ ├── videos (用于存储剪辑好的视频片段)
├── app.py (前端主程序)
├── Dockerfile
├── requirements.txt
文档
如果你想在本地查阅文档可以通过以下方式实现
- 将项目下载到本地
- 用浏览器打开 docs/build/html/index.html
如果你对文档内容有修改想要查看最新的内容可以通过以下方式
# 进入 docs 文件夹
cd docs
# 安装相关依赖
pip install -r requirements.txt
# 编译
make html
然后就可以在public
文件夹下双击index.html
即可看到文档,如下所示
Learning Roadmap
内容学习路线详见:Roadmap
反馈
- 如果你发现任何问题,请提交 Issue.
参与贡献
- 如果你想参与到项目中来欢迎查看项目的 Issue 查看没有被分配的任务并提交 PR
如果你对 Datawhale 很感兴趣并想要发起一个新的项目,欢迎查看 Datawhale 贡献指南。
当前贡献者
姓名 | 职责 | 简介 |
---|---|---|
苏鹏 | 项目负责人 | https://linktr.ee/subranium |
十一 | Jina 教程内容贡献者 | Github |
席颖 | Jina 教程内容贡献者 | Github |
范致远 | 跨模态模型教程内容贡献者 | Github |
崔腾松 | 项目后端教程内容贡献者 | CSDN |
韩颐堃 | 项目后端教程内容贡献者 | Homepage |
吴祥 | 项目前端教程内容贡献者 | CSDN |
边圣陶 | Docker 部署教程内容贡献者 | https://www.bianst.cn |
Made with contrib.rocks.
特别感谢
特别感谢以下项目与作者,其中 B 站 UP 主人工智能小黄鸭给本项目提供了灵感,而且本项目的基础代码来自于 ArthurKing01。
再次感谢以上项目与作者,同时感谢 Jina AI 对本项目的支持,Jina AI 是一家神经搜索公司,致力于帮助企业和开发者轻松搭建多模态、跨模态应用。
关注我们
License
VCED is licensed under GNU General Public License v3.0