添加项目描述文件
This commit is contained in:
parent
7c7a4368af
commit
cab9e438c5
|
@ -0,0 +1,89 @@
|
||||||
|
此仓库是ICDD实验室的视频摘要生成项目根目录。
|
||||||
|
|
||||||
|
# 环境配置
|
||||||
|
|
||||||
|
本节介绍项目环境的安装与配置流程。
|
||||||
|
|
||||||
|
## 创建虚拟环境
|
||||||
|
|
||||||
|
如果使用的是```conda```,可以使用以下命令创建并激活虚拟环境:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ conda init bash
|
||||||
|
$ conda deactivate
|
||||||
|
$ conda create --name vsumm python=3.10
|
||||||
|
$ conda activate vsumm
|
||||||
|
```
|
||||||
|
|
||||||
|
如果使用的是```venv```,首先需要安装[Python 3.10](https://www.python.org/downloads/release/python-3100/),并创建并激活虚拟环境:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ python --version # 确保当前正在使用的是python 3.10
|
||||||
|
$ python -m venv venv/
|
||||||
|
$ source venv/Scripts/activate
|
||||||
|
```
|
||||||
|
|
||||||
|
## 安装项目的依赖包
|
||||||
|
|
||||||
|
首先安装```ffmpeg```。如果是实验室的服务器环境,可以直接使用以下命令安装软件包:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ apt install ffmpeg
|
||||||
|
```
|
||||||
|
|
||||||
|
如果是个人的Windows开发环境,需要从官方网站[ffmpeg](https://ffmpeg.org/)下载二进制发布包,并配置环境变量。
|
||||||
|
|
||||||
|
在控制台中,使用如下指令验证安装是否成功:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ ffmpeg
|
||||||
|
ffmpeg version 7.0-full_build-www.gyan.dev Copyright (c) 2000-2024 the FFmpeg developers
|
||||||
|
# ...
|
||||||
|
```
|
||||||
|
|
||||||
|
接下来安装```torch```与```torchvision```。项目使用的版本是:```torch-2.1.0+cu118-cp310```与```torchvision-0.16.0+cu118-cp310```,可以在[官方的下载连接]()找到下载地址;下载完成后,使用以下指令安装2个软件包:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ pip install <下载的whl文件路径>
|
||||||
|
```
|
||||||
|
|
||||||
|
之后,就可以安装项目的其他依赖包:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ pip install -r requirements.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
# 启动服务器
|
||||||
|
|
||||||
|
在项目的根目录下,激活虚拟环境后,使用以下指令启动服务器:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ python main.py
|
||||||
|
```
|
||||||
|
|
||||||
|
或者:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
$ uvicorn main:app
|
||||||
|
```
|
||||||
|
|
||||||
|
之后,可以访问```http://localhost:8000/home```进入主页。
|
||||||
|
|
||||||
|
# 当前使用的数据集
|
||||||
|
|
||||||
|
当前使用的两个数据集分别是:[TVSUM](https://pan.baidu.com/s/1j6p5itt5aslhrp-cDxpwdw&pwd=a5h2)与[SumMe](https://pan.baidu.com/s/1gM8oXlqnYUTxKpL2aCzVhQ&pwd=dw5t)
|
||||||
|
|
||||||
|
# 当前项目进度
|
||||||
|
|
||||||
|
项目使用的模型来自:[DSNet](https://github.com/li-plus/DSNet)的anchor-free版本。
|
||||||
|
|
||||||
|
```master```分支是一期项目的工作。当前开发进度是:完成主页界面与前后端接口设计、部署模型并完成推理流程。
|
||||||
|
|
||||||
|
当前工作存在以下不足:
|
||||||
|
|
||||||
|
1. 在上传文件并生成摘要后,没有设计“历史记录”页面。这导致在刷新页面后,无法查看此前已经生成的摘要
|
||||||
|
2. 一次只能上传一个文件并执行推理。这是因为官方提供的推理方法给定的Batch为1,暂未调研提高Batch之后带来的影响
|
||||||
|
3. 当前使用的```opencv```暂不支持```H264```编解码,因此需要在推理结束后使用```ffmpeg```再次转码,以支持在线预览摘要视频
|
||||||
|
4. 当前使用的摘要方法使用```opencv```逐帧写入视频文件(与官方版本保持一致),因此生成的视频不包含音轨
|
||||||
|
|
||||||
|
|
3
main.py
3
main.py
|
@ -140,5 +140,8 @@ async def generate_file(id: str = Form(...)):
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
os.makedirs(ServerConfig.videos_upload_path, exist_ok=True)
|
||||||
|
os.makedirs(ServerConfig.videos_play_path, exist_ok=True)
|
||||||
|
os.makedirs(ServerConfig.h5s_root_path, exist_ok=True)
|
||||||
uvicorn.run(app=app)
|
uvicorn.run(app=app)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue