☰
如何本地运行Video-Depth-Anything-Base-MLX:从0到1的入门快速指南
2026/10/18 1:15:28 网站建设 项目流程

【免费下载链接】Video-Depth-Anything-Base-MLX

项目地址:https://ai.gitcode.com/hf_mirrors/mlx-community/Video-Depth-Anything-Base-MLX
点击查看免费下载

想在Mac 上本地运行 Video-Depth-Anything-Base-MLX吗?它是字节跳动 Video Depth Anything 的MLX 移植版,专门用于视频单目深度估计:给一段视频,逐帧输出一致的深度图。本文带你从 0 到 1 完成模型获取、环境安装和首次推理,全程不依赖云端。

它是什么:为什么选择在本地跑

🎬 传统深度估计模型(如 Video Depth Anything)通常依赖 PyTorch + NVIDIA GPU,而Video-Depth-Anything-Base-MLX将权重与结构转换成了MLX 格式,可以直接在Apple Silicon(M 系列芯片)上高效推理。

它的核心特点:

特点说明
架构DINOv2 视觉骨干 + DPT 头 + AnimateDiff 风格时序运动模块
输出每帧一张深度图(相对深度,非米制绝对深度)
精度权重为 fp32,Metal 加速下与 PyTorch 参考结果相对误差约 1%
长视频支持可处理任意长度视频,帧间深度保持时序一致

模型类型与结构参数定义在 config.json 中:编码器为vitb,num_frames为 32,metric为false(即输出相对深度,而非米制深度)。

第一步:获取模型文件

仓库只需用一行命令克隆到本地:

git clone https://gitcode.com/hf_mirrors/mlx-community/Video-Depth-Anything-Base-MLX

克隆完成后,目录结构非常简洁,四个文件各司其职:

文件作用
model.safetensors模型权重文件(fp32)
config.json模型结构配置(编码器、通道数、帧数等)
preprocessor_config.json预处理配置,输入尺寸为 518
README.md项目说明与用法示例

💡 只需克隆一次,权重文件较大,建议在网络良好时进行;克隆成功后即可断网使用。

第二步:安装环境,准备运行

本地运行 Video-Depth-Anything-Base-MLX 的环境要求其实只有两条:一台 Apple Silicon 的 Mac(M1 及以上)和Python 环境。

安装两个依赖即可:

pip install mlx mlx-vlm
  • mlx:Apple 官方的机器学习框架,提供 Metal GPU 加速
  • mlx-vlm:加载与推理库,内置了video_depth_anything模型的实现

⚠️ 注意:MLX 目前仅支持 Apple 芯片,Windows/Intel Mac 无法直接运行。

第三步:3 行代码完成首次推理

推理流程可以拆成三步:加载模型 → 读取视频帧 → 执行推理。完整示例来自 README.md:

from mlx_vlm import load from mlx_vlm.models.video_depth_anything.generate import ( VideoDepthPredictor, read_video_frames, ) # 1. 加载模型(可直接指向本地克隆的仓库目录) model, processor = load("Video-Depth-Anything-Base-MLX") predictor = VideoDepthPredictor(model, processor) # 2. 读取视频帧(最长 300 帧,目标帧率 15fps) frames, fps = read_video_frames("input.mp4", max_len=300, target_fps=15) # 3. 推理,得到 (T, H, W) 形状的 float32 深度序列 depths = predictor.infer(frames)

把input.mp4换成你自己的视频文件即可。depths的每个时间步就是一帧的灰度深度图,值越大代表离镜头越远,用任意图像库保存成图片就能直观查看。

关键参数与输入约束

📌 首次运行前,这几个约束务必确认,能避免绝大多数报错:

约束项要求出处
输入张量格式channel-last:(B, T, H, W, 3)README.md
高宽限制H 和 W 必须是 14 的倍数README.md
预处理输入尺寸518preprocessor_config.json
最大处理帧数max_len=300(可按需调整)README.md
时序窗口帧数32 帧config.json

关于精度:在 Metal GPU 上,输出与 PyTorch 参考实现约 1% 的相对误差(fast-math 导致);在 CPU 上误差可低至约 1e-5。对可视化、分割等应用来说完全够用。

常见问题 FAQ

Q1:输出是绝对深度(米)吗?

不是。config.json中metric为false,输出的是相对深度(近小远大),不能直接当真实距离使用,但帧间一致性很好,适合立体感渲染、背景分离等场景。

Q2:长视频能处理吗?

可以。read_video_frames通过max_len和target_fps控制采样帧数,模型对任意长度视频保持时序一致的深度输出。

Q3:第一次运行特别慢?

正常现象——首次推理需要编译 MLX 内核,后续帧会明显加速。

许可证提醒

⚠️ 本模型采用CC-BY-NC-4.0协议(与源模型一致),仅限非商业用途。用于商业产品前请仔细阅读 README.md 中的 License 条款。

写在最后

至此,你已完成 Video-Depth-Anything-Base-MLX 的完整本地部署:克隆仓库 → 安装 mlx-vlm → 三行代码出深度图。整个过程无需云 GPU,一台 M 系列 Mac 就能跑通。后续你可以尝试调整target_fps观察时序一致性,或把深度结果叠加回原视频,制作"3D 立体感"特效视频。

【免费下载链接】Video-Depth-Anything-Base-MLX

项目地址:https://ai.gitcode.com/hf_mirrors/mlx-community/Video-Depth-Anything-Base-MLX
点击查看免费下载

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询