首页
/ 【亲测免费】 FoundationStereo项目安装与配置指南

【亲测免费】 FoundationStereo项目安装与配置指南

2026-01-30 04:21:03作者:郜逊炳

1. 项目基础介绍

FoundationStereo是一个为零样本立体匹配任务设计的开源项目。该项目旨在通过使用大量多样化的合成训练数据集和自动自我筛选流程,来提高立体匹配算法的零样本泛化能力。主要编程语言为Python。

2. 项目使用的关键技术和框架

该项目采用以下关键技术和框架:

  • 深度学习模型:用于处理立体图像对并生成密集视差图。
  • 视觉基础模型:通过侧调特征骨干网络,将丰富的单目先验知识迁移至立体匹配任务,减少仿真到现实的差距。
  • 长距离上下文推理:用于有效的成本体积滤波。
  • ONNX/TensorRT:用于加速推理过程(实验性质)。

3. 项目安装和配置准备工作

在开始安装之前,请确保您的系统中已安装以下软件:

  • Python 3.x
  • Conda或Miniconda
  • Git
  • CUDA(与您的NVIDIA GPU兼容的版本)
  • cuDNN
  • NCCL

3.1 安装步骤

以下为详细安装步骤:

步骤 1:克隆项目仓库

打开命令行窗口,运行以下命令克隆项目:

git clone https://github.com/NVlabs/FoundationStereo.git
cd FoundationStereo

步骤 2:创建并激活Conda环境

在项目根目录下,使用以下命令创建并激活Conda环境:

conda env create -f environment.yml
conda activate foundation_stereo

步骤 3:下载预训练模型权重

从项目提供的链接下载预训练模型权重,并将其放置在项目目录下的./pretrained_models/文件夹中。

步骤 4:运行示例

在项目目录下,运行以下命令来测试示例:

python scripts/run_demo.py --left_file ./assets/left.png --right_file ./assets/right.png --ckpt_dir ./pretrained_models/model_best_bp2.pth --out_dir ./test_outputs/

请确保输入的左右图像是经过校正和去畸变的。

注意事项:

  • 输入的左右图像应该是校正和去畸变过的,确保左右图像间的极线是水平的。
  • 不要交换左右图像的位置,左图像应来自左侧摄像头。
  • 推荐使用无损失压缩的PNG文件格式。
  • 本方法在立体RGB图像上效果最佳,但也可用于单色或红外立体图像。

步骤 5:ONNX/TensorRT推理(可选,实验性质)

如果需要使用ONNX/TensorRT进行推理加速,请按照以下步骤操作:

  1. 替换代码中的Flash attention(具体步骤见项目说明)。
  2. 运行以下命令生成ONNX模型:
export XFORMERS_DISABLED=1
python scripts/make_onnx.py --save_path ./output/foundation_stereo.onnx --ckpt_dir ./pretrained_models/23-51-11/model_best_bp2.pth --height 480 --width 640 --valid_iters 22
  1. 将ONNX模型转换为TensorRT引擎:
trtexec --onnx=./output/foundation_stereo.onnx --saveEngine=./output/foundation_stereo.engine --fp16 --verbose

请注意,TensorRT加速的具体效果取决于多种因素,建议根据需要调整参数。

以上步骤即为FoundationStereo项目的安装和配置指南。如果遇到任何问题,请参考项目文档或相关社区进行解决。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
509
550
docsdocs
暂无描述
Markdown
852
5.69 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.04 K
2.48 K
kernelkernel
deepin linux kernel
C
33
16
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
838
1.27 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
844
1.7 K
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.16 K
857
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.25 K
1.37 K
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
502
345
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
783
411