Skip to content

ReLuckyLucy/Depth_Yolo_Module

Repository files navigation

logo

Depth_Yolo_Module

基于DepthFM模块与Yolo模块的单目视觉3d感知目标检测

GitHub GitHub top language GitHub release (latest by date including pre-releases) GitHub last commit

GitHub code size in bytes GitHub repo size GitHub stars

项目介绍

DepthFM

DepthFM是一种最先进的、多功能的、快速的单目深度估计模型。DepthFM 非常高效,可以在单个推理步骤中合成逼真的深度图。除了传统的深度估计任务外,DepthFM 还展示了下游任务(如深度修复和深度条件合成)的最新功能。

DepthFM通过强图像先验从基础图像合成扩散模型 (Stable Diffusion v2-1) 到流动匹配模型的成功转移。它不是从噪声开始,而是直接从输入图像映射到深度图。

Yolo

Yolo(You Only Look Once)是一种流行的物体检测和图像分割模型,由华盛顿大学的约瑟夫-雷德蒙(Joseph Redmon)和阿里-法哈迪(Ali Farhadi)开发。YOLO 于 2015 年推出,因其高速度和高精确度而迅速受到欢迎。

Yolo 支持各种视觉人工智能任务,如检测、分割、姿态估计、跟踪和分类。其先进的架构确保了卓越的速度和准确性,使其适用于各种应用,包括边缘设备和云 API。

开始使用

通过 Conda 创建环境(推荐):

conda create --name dfm_yolo python=3.11

conda activate dfm

pip install -r requirements.txt

由于默认下载的pytorch总是会下载到cpu版本,建议是手动输入

pip install torch==2.2.0 torchvision==0.17.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu121

模型权重下载:

wget https://ommer-lab.com/files/depthfm/depthfm-v1.ckpt -P checkpoints/
wget https://github.com/ultralytics/assets/releases/download/v8.3.0/yolo11n.pt

验证安装

运行以下命令检查关键依赖版本:

python -c "import torch; print(f'PyTorch: {torch.__version__}, CUDA: {torch.version.cuda}')"
python -c "import xformers; print(f'xFormers: {xformers.__version__}')"
python -c "import numpy; print(f'NumPy: {numpy.__version__}')"

输出应类似:

PyTorch: 2.2.0+cu121, CUDA: 12.1
xFormers: 0.0.24
NumPy: 1.26.0

注意事项

  1. GPU 驱动要求

  2. Windows 特定问题

    • 如果 Conda 安装失败,优先使用 environment.yml 中的 pip 安装方式。
    • 确保已安装 Visual Studio Build Tools(C++ 编译环境)。
  3. 显存优化

    • 在代码中添加以下配置减少显存占用:
      import os
      os.environ["PYTORCH_CUDA_ALLOC_CONF"] = "expandable_segments:True"

项目结构

Depth_Yolo_Module/
├── app.py                 # 主应用程序入口
├── gradio_depth_app.py    # DepthFM深度估计模块封装
├── gradio_yolo_app.py     # YOLOv11目标检测模块封装
├── checkpoints/           # 预训练模型存放目录
│   ├── depthfm-v1.ckpt    # DepthFM模型权重
│   └── yolov11.pt         # YOLOv11模型权重
├── examples/              # 示例图片
│   └── img/
│       ├── dog.jpg
└── README.md              # 项目文档

参考文献

  1. DepthFM: Fast Monocular Depth Estimation with Flow Matching
  2. YOLOv11: An Incremental Improvement for Object Detection

启动

使用gradio库

python3 app.py

app.py内已经包含了两个模块

若只想运行其中一个,则可以运行下面的

  • gradio_yolo_app.py
  • gradio_depth_app.py

About

基于DepthFM模块与Yolo模块的单目视觉3d感知目标检测

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published