AI个人学习
和实操指南
讯飞绘镜

HumanOmni:分析人类视频情感和动作的多模态大模型

综合介绍

HumanOmni 是由 HumanMLLM 团队开发的一个开源多模态大模型,托管在 GitHub 上。它专注于分析人类视频,能同时处理画面和声音,帮助理解情感、动作和对话内容。项目用了 240 万个以人为中心的视频片段和 1400 万条指令数据进行预训练,还用 5 万个手工标注的视频片段(含 10 万多条指令)进行微调。HumanOmni 分三个分支处理面部、身体和互动场景,能根据输入动态调整融合方式。它是业界首个以人类为中心的多模态模型,性能超过许多同类模型。团队还推出了基于它的 R1-Omni,首次结合强化学习提升推理能力。代码和部分数据集都开放,方便研究者和开发者使用。

HumanOmni:分析人类视频情感和动作的多模态大模型-1


 

功能列表

  • 情感识别: 分析视频中的面部表情和声音语调,判断人物情绪,如开心、生气或悲伤。
  • 面部表情描述: 识别并描述人物面部细节,比如微笑或皱眉。
  • 动作理解: 分析视频中人物的动作,描述他们在做什么,比如走路或挥手。
  • 语音处理: 从音频中提取内容,支持语音识别和语调分析。
  • 多模态融合: 结合画面和声音,理解复杂场景,提供更准确的分析。
  • 动态分支调整: 用面部、身体、互动三个分支处理不同场景,自动调整权重。
  • 开源支持: 提供代码、预训练模型和部分数据集,支持二次开发。

 

使用帮助

HumanOmni 适合有技术基础的用户,比如开发者或研究者。以下是安装和使用步骤,详细到可以直接上手。

安装流程

要运行 HumanOmni,需要先准备好环境。以下是具体步骤:

  1. 检查硬件和软件要求
    • 操作系统:支持 Linux、Windows 或 macOS。
    • Python:需要 3.10 或更高版本。
    • CUDA:建议 12.1 或更高(若用 GPU)。
    • PyTorch:需要 2.2 或更高版本,支持 CUDA。
    • 硬件:推荐 NVIDIA GPU,CPU 也能用但速度慢。
  2. 下载代码
    打开终端,输入命令下载项目:
git clone https://github.com/HumanMLLM/HumanOmni.git
cd HumanOmni
  1. 创建虚拟环境
    用 Conda 创建独立环境,避免冲突:
conda create -n humanOmni python=3.10 -y
conda activate humanOmni
  1. 安装依赖
    项目有个 requirements.txt 文件,列出了所需库。运行以下命令安装:
pip install --upgrade pip
pip install -r requirements.txt
pip install flash-attn --no-build-isolation
  1. 下载模型权重
    HumanOmni 有三种模型:
  • HumanOmni-Video:处理视频,7B 参数。
  • HumanOmni-Audio:处理音频,7B 参数。
  • HumanOmni-Omni:融合视频和音频,7B 参数(简称 HumanOmni)。
    从 Hugging Face 或 ModelScope 下载,比如:
  • HumanOmni-7B
  • HumanOmni-7B-Video
    下载后放到项目文件夹。
  1. 验证安装
    用测试命令检查环境:
python inference.py --modal video --model_path ./HumanOmni_7B --video_path test.mp4 --instruct "Describe this video."

如果输出视频描述,安装就成功了。

功能操作流程

HumanOmni 的核心是分析视频和音频。以下是主要功能的详细操作。

1. 情感识别

  • 步骤
  • 准备一个含人物的视频(比如 sample.mp4)。
  • 运行命令:
python inference.py --modal video_audio --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "Which emotion is most obvious?"
  • 模型会输出情绪,比如 “angry” 或 “happy”。
  • 注意
  • 视频要清晰,人物表情和声音需可辨识。
  • 长视频可能需要更多计算时间。

2. 面部表情描述

  • 步骤
  • 输入视频,运行:
python inference.py --modal video --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "What’s the major facial expression?"
  • 输出可能是 “smile” 或 “frown”,带简单描述。
  • 建议
  • 用 10-30 秒的短视频测试效果更好。

3. 动作理解

  • 步骤
  • 输入视频,运行:
python inference.py --modal video --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "Describe the major action in detail."
  • 输出动作描述,比如 “a person is walking”。
  • 技巧
  • 确保动作明显,避免背景杂乱。

4. 语音处理

  • 步骤
  • 输入含音频的视频,运行:
python inference.py --modal audio --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "What did the person say?"
  • 输出语音内容,比如 “Dogs are sitting by the door”。
  • 注意
  • 音频要清楚,无杂音效果最佳。

5. 多模态融合

  • 步骤
  • 输入视频和音频,运行:
python inference.py --modal video_audio --model_path ./HumanOmni_7B --video_path sample.mp4 --instruct "Describe this video."
  • 模型会结合画面和声音,给出完整描述。
  • 优势
  • 能捕捉情绪和动作的关联,分析更全面。

6. 自定义数据集训练

  • 步骤
  • 准备 JSON 格式的数据文件,包含视频路径和指令对话。比如:
[
{
"video": "path/to/video.mp4",
"conversations": [
{"from": "human", "value": "What’s the emotion?"},
{"from": "gpt", "value": "sad"}
]
}
]
  • 下载 HumanOmni-7B-Video 和 HumanOmni-7B-Audio 权重。
  • 运行训练脚本:
bash scripts/train/finetune_humanomni.sh
  • 用途
  • 可以用自己的视频数据优化模型。

常见问题解决

  • 运行报错:检查 Python 和 PyTorch 版本是否匹配。
  • 模型加载失败:确认路径正确,磁盘空间够用(模型约 10GB)。
  • 结果不准:换清晰的视频或调整指令表述。

通过这些步骤,用户可以轻松安装和使用 HumanOmni,体验它的强大功能。

 

应用场景

  1. 教育研究
    分析课堂视频,识别学生的情绪和参与度,帮助老师调整教学方式。
  2. 医疗辅助
    通过患者表情和语调,辅助医生判断心理状态,比如焦虑或抑郁。
  3. 影视制作
    分析角色情感和动作,生成字幕或剧情描述,提升创作效率。
  4. 社交分析
    用于会议视频,理解参与者的情绪和行为,优化沟通效果。

 

QA

  1. 支持哪些文件格式?
    支持 MP4 格式,音频需嵌入视频中。
  2. 需要联网吗?
    不需要。下载代码和模型后可离线使用。
  3. 模型性能如何?
    在情感理解上,HumanOmni 的 DFEW 数据 UAR 达 74.86%,远超 GPT4-O 的 50.57%。动作理解平均得分 72.6,高于 Qwen2-VL-7B 的 67.7。
  4. 普通人能用吗?
    需要基础编程能力。如果不懂代码,建议请技术人员帮忙。
未经允许不得转载:首席AI分享圈 » HumanOmni:分析人类视频情感和动作的多模态大模型

首席AI分享圈

首席AI分享圈专注于人工智能学习,提供全面的AI学习内容、AI工具和实操指导。我们的目标是通过高质量的内容和实践经验分享,帮助用户掌握AI技术,一起挖掘AI的无限潜能。无论您是AI初学者还是资深专家,这里都是您获取知识、提升技能、实现创新的理想之地。

联系我们
zh_CN简体中文