news 2026/6/15 7:17:44

FastDepth:嵌入式系统上的快速单目深度估计

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
FastDepth:嵌入式系统上的快速单目深度估计

FastDepth:嵌入式系统上的快速单目深度估计

【免费下载链接】fast-depthICRA 2019 "FastDepth: Fast Monocular Depth Estimation on Embedded Systems"项目地址: https://gitcode.com/gh_mirrors/fa/fast-depth

FastDepth 是一个专门为嵌入式系统优化的单目深度估计算法,由 MIT 研究团队开发。该项目在保持高精度的同时,显著提升了深度估计的速度,特别适合在 NVIDIA Jetson TX2 等嵌入式平台上部署。

项目概述

FastDepth 基于 MobileNet 架构,通过深度可分离卷积、跳跃连接和网络剪枝等技术,实现了在资源受限设备上的实时深度感知。该项目在 ICRA 2019 会议上发表,提供了完整的训练模型和评估代码。

系统要求

要运行 FastDepth 项目,需要满足以下要求:

  • 安装 PyTorch(推荐版本 v0.4.1)并配备 CUDA GPU
  • 安装 HDF5 格式库和相关依赖
  • 下载预处理好的 NYU Depth V2 数据集

环境配置

sudo apt-get update sudo apt-get install -y libhdf5-serial-dev hdf5-tools pip3 install h5py matplotlib imageio scikit-image opencv-python

数据集准备

NYU Depth V2 数据集需要约 32GB 存储空间:

mkdir data; cd data wget http://datasets.lids.mit.edu/fastdepth/data/nyudepthv2.tar.gz tar -xvf nyudepthv2.tar.gz && rm -f nyudepthv2.tar.gz cd ..

预训练模型

FastDepth 提供了多个预训练模型:

  • MobileNet-NNConv5
  • MobileNet-NNConv5(深度可分离)
  • MobileNet-NNConv5(深度可分离),带跳跃连接
  • MobileNet-NNConv5(深度可分离),带跳跃连接,剪枝版

最终推荐模型是mobilenet-nnconv5-skipadd-pruned,该模型在编码器和解码器之间使用深度可分离层和跳跃连接,并通过 NetAdapt 进行网络剪枝。

模型下载

mkdir results; cd results wget -r -np -nH --cut-dirs=2 --reject "index.html*" http://datasets.lids.mit.edu/fastdepth/results/ cd ..

模型评估

评估过程需要有效的 PyTorch 安装和 NYU Depth v2 数据集副本。建议在配备 CUDA GPU 的主机上进行评估。

评估命令

python3 main.py --evaluate [path_to_trained_model]

评估代码将报告模型的 delta1 精度指标以及以毫米为单位的 RMSE。

嵌入式部署

FastDepth 使用 TVM 编译器堆栈将训练好的模型编译为可在 NVIDIA Jetson TX2 上部署的格式。模型在主机上进行交叉编译,然后在 TX2 上部署。

TVM 运行时安装

在目标嵌入式设备上构建 TVM 运行时:

git clone --recursive https://github.com/dmlc/tvm cd tvm git reset --hard ab4946c8b80da510a5a518dca066d8159473345f git submodule update --init cp cmake/config.cmake .

修改config.cmake文件:

set(USE_CUDA OFF) -> set(USE_CUDA [path_to_cuda]) set(USE_LLVM OFF) -> set(USE_LLVM [path_to_llvm-config])

构建运行时:

make runtime -j2 export PYTHONPATH=$PYTHONPATH:~/tvm/python

运行编译后的模型

在设备上运行编译后的模型:

cd deploy python3 tx2_run_tvm.py --input-fp data/rgb.npy --output-fp data/pred.npy --model-dir ../../results/tvm_compiled/tx2_cpu_mobilenet_nnconv5dw_skipadd_pruned/ python3 tx2_run_tvm.py --input-fp data/rgb.npy --output-fp data/pred.npy --model-dir ../../results/tvm_compiled/tx2_gpu_mobilenet_nnconv5dw_skipadd_pruned/ --cuda True

性能结果

FastDepth 在 NYU Depth v2 数据集上与其他先进方法进行了比较。运行时间在 NVIDIA Jetson TX2 最大性能模式下测量。

方法输入尺寸MACs [G]RMSE [m]delta1CPU [ms]GPU [ms]
Eigen et al. [NIPS 2014]228×3042.060.9070.61130023
Eigen et al. [ICCV 2015](AlexNet)228×3048.390.7530.697140096
Laina et al. [3DV 2016](UpProj)228×30442.70.5730.8113900319
FastDepth(本文工作)224×2240.370.6040.771375.6

FastDepth在Jetson TX2 GPU上的性能对比

FastDepth深度估计效果可视化对比

项目优势

  1. 高效性能:相比传统方法,FastDepth 在 TX2 GPU 上实现了 5.6ms 的推理时间
  2. 轻量化设计:仅需 0.37 G MACs,适合资源受限设备
  3. 精度平衡:在保持较高精度的同时显著提升速度

应用场景

FastDepth 特别适用于以下场景:

  • 机器人导航与环境感知
  • 自动驾驶辅助系统
  • AR/VR场景深度理解
  • 智能监控与安防系统

总结

FastDepth 为嵌入式系统上的实时深度估计提供了一个高效解决方案。通过优化的网络架构和编译技术,该项目在精度和速度之间达到了良好的平衡,是嵌入式计算机视觉应用的理想选择。

对于需要在实际嵌入式设备上部署深度估计功能的开发者来说,FastDepth 提供了一个完整的工作流程,从模型训练到部署都有详细的指导和支持。

【免费下载链接】fast-depthICRA 2019 "FastDepth: Fast Monocular Depth Estimation on Embedded Systems"项目地址: https://gitcode.com/gh_mirrors/fa/fast-depth

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 11:35:48

还在用WebSocket实现即时通讯?试试MQTT吧,真香!

“还在用WebSocket实现即时通讯?试试MQTT吧,真香!”——这句话在2025年已经不是段子,而是很多团队的真实写照。 过去五年,我亲眼见过至少10个中大型项目把「WebSocket Socket.io/WS自研」全部推倒,换成MQ…

作者头像 李华
网站建设 2026/6/15 11:35:00

Houdini Engine for Unreal终极指南:程序化工作流程与实时渲染实战

Houdini Engine for Unreal插件将Houdini强大的程序化工作流程无缝集成到Unreal Engine中,让艺术家能够直接在编辑器内交互式调整参数,实现无需烘焙的实时渲染效果。本文通过问题导向的方式,深入解析如何在实际项目中最大化利用这一工具链。 …

作者头像 李华
网站建设 2026/6/15 11:36:34

三级防护+多语言支持:Qwen3Guard-Gen-8B如何重塑AI安全格局?

三级防护多语言支持:Qwen3Guard-Gen-8B如何重塑AI安全格局? 【免费下载链接】Qwen3Guard-Gen-8B 项目地址: https://ai.gitcode.com/hf_mirrors/Qwen/Qwen3Guard-Gen-8B 核心问题:AI安全防护的三大瓶颈 随着大模型应用场景的不断扩展…

作者头像 李华
网站建设 2026/6/14 12:25:15

WSL命令完全指南:从基础安装到高级管理

WSL命令完全指南:从基础安装到高级管理 【免费下载链接】WSL Source code behind the Windows Subsystem for Linux documentation. 项目地址: https://gitcode.com/gh_mirrors/wsl3/WSL 前言 Windows Subsystem for Linux (WSL) 是微软推出的革命性功能&am…

作者头像 李华
网站建设 2026/6/15 11:35:58

3个关键步骤:彻底掌握Docker容器技术的实战指南

3个关键步骤:彻底掌握Docker容器技术的实战指南 【免费下载链接】udemy-docker-mastery Docker Mastery Udemy course to build, compose, deploy, and manage containers from local development to high-availability in the cloud 项目地址: https://gitcode.c…

作者头像 李华