利用现有模型处理面部视频获取特征向量(3)

下一步在没有conda的ubuntu装miniconda3

bash 复制代码
mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm ~/miniconda3/miniconda.sh

source ~/miniconda3/bin/activate
conda init --all

装完后,下载video_features的包,并创建虚拟环境

bash 复制代码
git clone https://github.com/v-iashin/video_features.git
cd video_features

conda env create -f conda_env.yml

启动虚拟环境,运行程序,为此我还把视频复制到服务器上面了。这样跑起来更方便。先来试个水

bash 复制代码
conda activate video_features
cd video_features 
python main.py \
    feature_type=r21d \
    device="cuda:0" \
    video_paths="[/home/ubuntu/short/0.mp4,/home/ubuntu/short/1.mp4,/home/ubuntu/short/2.mp4,/home/ubuntu/short/3.mp4,/home/ubuntu/short/4.mp4,/home/ubuntu/short/5.mp4,/home/ubuntu/short/6.mp4]"

但是还是被Killed了????

bash 复制代码
feature_type: r21d
model_name: r2plus1d_18_16_kinetics
stack_size: null
step_size: null
extraction_fps: null
device: on_extraction: print
output_path: ./output/r21d/r2plus1d_18_16_kinetics
tmp_path: ./tmp/r21d/r2plus1d_18_16_kinetics
keep_tmp_files: false
show_pred: false
config: null
video_paths:
- /home/ubuntu/short/0.mp4
- /home/ubuntu/short/1.mp4
- /home/ubuntu/short/2.mp4
- /home/ubuntu/short/3.mp4
- /home/ubuntu/short/4.mp4
- /home/ubuntu/short/5.mp4
- /home/ubuntu/short/6.mp4
file_with_video_paths: null

Device: cuda:0
The number of specified videos: 7
  0%|                                                                                      | 0/7 [00:00<?, ?it/s]
Killed

显示的原因还是out of memory,说是需要一百多个G。我才发现服务器的gpu就只有48g,我之前说的一个T,是硬盘内存,不是运行内存。1T的gpu,现在估计还没有这玩意儿吧?有的话得有多贵啊!!看来我把我们组想得太有钱了,富可敌国哈哈哈哈

师弟还帮我跑了一下,还是不行,果然还是视频有问题。视频有点大了,要么缩短时长,要么降低视频分辨率,要么两者都做一下,看一看会不会好一些。好了,师弟告诉我,只要把分辨率降低就能运行了。

我再附上缩短视频的代码,免得我忘记了,老是想要找可以免费剪辑视频的在线网页,但是通常没有免费又好使的。还是代码使得顺手。

python 复制代码
from moviepy import VideoFileClip, CompositeVideoClip
import os

input_os =  "C:/Users/DDDCY/Desktop/mp4"
##视频输入绝对路径
output_os = "C:/Users/DDDCY/Desktop/short"
##处理后的视频输出绝对路径
video_names = os.listdir(input_os)
for video in video_names:
    clip =CompositeVideoClip([VideoFileClip(input_os+"/"+video).subclipped(5,35)])
## (5,35)是想要截取的视频范围,也即截取5s~35s中的30s
    clip.write_videofile(output_os+"/"+video)

下面是降低视频分辨率的代码

python 复制代码
from moviepy import VideoFileClip
import os

input_os =  "C:/Users/DDDCY/Desktop/short"
output_os = "C:/Users/DDDCY/Desktop/low"

video_names = os.listdir(input_os)
for video in video_names:
    clip = VideoFileClip(input_os+"/"+video)
    new_clip = clip.resized((360, 640))
## (360,640)是希望得到的视频分辨率
    new_clip.write_videofile(output_os+"/"+video)

等处理完了我再在服务器上跑一跑

相关推荐
AI技术控几秒前
Transformer 的 Encoder 和 Decoder 模块介绍:从结构原理到大模型应用实践
人工智能·python·深度学习·自然语言处理·transformer
Codebee1 分钟前
日抛型软件的双链路设计——从"日抛"到"认知进化"的范式革命
人工智能
KaMeidebaby8 分钟前
卡梅德生物技术快报|单克隆抗体人源化 PEG 修饰质控方法体系构建与验证
服务器·前端·数据库·人工智能·算法·百度·新浪微博
LaughingZhu9 分钟前
Product Hunt 每日热榜 | 2026-05-16
人工智能·经验分享·深度学习·神经网络·产品运营
wuxinyan12310 分钟前
工业级大模型学习之路015:RAG零基础入门教程(第十一篇):系统重构与代码规范化
人工智能·python·学习·重构·rag
灵机一物14 分钟前
灵机一物AI原生电商小程序、PC端(已上线)-【技术深度解析】Bun 6 天 AI 重写 96 万行代码:从 Zig 迁移 Rust 全流程与行业影响
开发语言·人工智能·rust
wuxinyan12314 分钟前
工业级大模型学习之路014:RAG零基础入门教程(第十篇):系统性能与资源优化
人工智能·学习·rag
STLearner16 分钟前
CVPR 2026 | 时空时序论文总结(天气预报,交通模拟,域自适应等)
论文阅读·人工智能·深度学习·神经网络·机器学习·计算机视觉·数据挖掘
小程故事多_8016 分钟前
AI重构DevOps,智能增强而非替代,人始终是最终决策者
人工智能·重构·devops
大鸣王潮202421 分钟前
flow_grpo vs Flow-Factory GRPO 实现对比
人工智能·深度学习·神经网络