轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像
交易
充值流量¥7起我的订单
文档
工具
提交工单页面收录
foundationpose

wenbowen123/foundationpose

wenbowen123

统一的6D物体姿态估计与跟踪基础模型,支持基于模型和无模型两种设置,无需微调即可应用于新物体。CVPR 2024 Highlight论文的官方实现。

5 次收藏下载次数: 0状态:社区镜像维护者:wenbowen123仓库类型:镜像最近更新:2 年前
让 AI 帮你使用轩辕镜像? · 展开查看说明 · 点击收起说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

DockerHub 官方简介
轩辕镜像中文简介
下载命令
镜像标签列表与下载命令
使用轩辕镜像,把时间还给真正重要的事。
点击查看

FoundationPose

https://github.com/NVlabs/FoundationPose: 统一的6D物体姿态估计与跟踪基础模型

https://img.shields.io/badge/Paper-CVPR%202024-blue](https://arxiv.org/abs/2312.08344) https://img.shields.io/badge/Website-Project%20Page-green](https://nvlabs.github.io/FoundationPose/)

这是我们在CVPR 2024(Highlight)论文的官方实现。

贡献者: Bowen Wen, Wei Yang, Jan Kautz, Stan Birchfield

功能特性

我们提出了FoundationPose,一个用于6D物体姿态估计和跟踪的统一基础模型,支持基于模型和无模型两种设置。只要给定物体的CAD模型,或捕获少量参考图像,我们的方法可以在测试时立即应用于新物体,无需微调。我们通过神经隐式表示桥接这两种设置之间的差距,允许有效的新视角合成,保持下游姿态估计模块在同一统一框架下的不变性。通过大规模合成训练、大语言模型(LLM)辅助、基于Transformer的新架构和对比学习公式,实现了强大的泛化能力。在涉及挑战性场景和物体的多个公共数据集上的广泛评估表明,我们的统一方法大幅优于专门针对每个任务的现有方法。此外,尽管假设减少,它甚至达到了与实例级方法相当的结果。

主要特点

  • 统一的6D姿态估计和跟踪框架
  • 支持基于模型(CAD模型)和无模型(少量参考图像)两种设置
  • 无需微调即可应用于新物体
  • 神经隐式表示实现有效的新视角合成
  • 大规模合成训练实现强泛化能力
  • 基于Transformer的架构和对比学习

成就

  • 🥇 世界BOP排行榜第一名(截至2024/03)用于基于模型的新物体姿态估计
  • 🤖 ROS版本: 请查看 https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_pose_estimation%EF%BC%8C%E4%BA%AB%E5%8F%97TRT%E5%BF%AB%E9%80%9F%E6%8E%A8%E7%90%86%E5%92%8CC++%E5%8A%A0%E9%80%9F

演示

机器人应用

机器人操作演示展示了FoundationPose在实际机器人任务中的应用。

AR应用

增强现实应用演示展示了在AR场景中的实时姿态跟踪能力。

YCB-Video数据集结果

在YCB-Video数据集上的跟踪结果展示了方法的有效性。

数据准备

下载网络权重

从https://***/drive/folders/1qT0mKz7h08s3qEzNlM2i1V8w7Tl0J3xK下载所有权重文件,并将它们放在weights/文件夹下。

  • Refiner: 需要 2023-10-28-18-33-37
  • Scorer: 需要 2024-01-11-20-02-45

下载演示数据

下载演示数据并解压到demo_data/文件夹下。

可选:下载训练数据

  • [可选] 下载我们的大规模训练数据:"FoundationPose Dataset"
  • [可选] 下载我们预处理的参考视图以运行无模型少样本版本

环境设置

选项1:Docker(推荐)

bash
cd docker/
docker pull wenbowen123/foundationpose && docker tag wenbowen123/foundationpose foundationpose
# 或者从头构建:docker build --network host -t foundationpose .
bash docker/run_container.sh

首次启动容器时,需要构建扩展。在Docker容器内运行以下命令:

bash
bash build_all.sh

之后您可以进入容器而无需重新构建:

bash
docker exec -it foundationpose bash

对于较新的GPU(如4090),请参考https://github.com/NVlabs/FoundationPose/issues/XX%E3%80%82%E7%AE%80%E8%80%8C%E8%A8%80%E4%B9%8B%EF%BC%8C%E6%89%A7%E8%A1%8C%E4%BB%A5%E4%B8%8B%E6%93%8D%E4%BD%9C%EF%BC%9A

bash
docker pull shingarey/foundationpose_custom_cuda121:latest

然后修改bash脚本以使用此镜像而不是foundationpose:latest。

选项2:Conda(实验性)

设置Conda环境

bash
# 创建conda环境
conda create -n foundationpose python=3.9

# 激活conda环境
conda activate foundationpose

# 在conda环境下安装Eigen3 3.4.0
conda install conda-forge::eigen=3.4.0
export CMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH:/eigen/path/under/conda"

# 安装依赖
python -m pip install -r requirements.txt

# 安装NVDiffRast
python -m pip install --quiet --no-cache-dir git+https://github.com/NVlabs/nvdiffrast.git

# Kaolin(可选,运行无模型设置时需要)
python -m pip install --quiet --no-cache-dir kaolin==0.15.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.0.0_cu118.html

# PyTorch3D
python -m pip install --quiet --no-index --no-cache-dir pytorch3d -f https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/py39_cu118_pyt200/download.html

# 构建扩展
CMAKE_PREFIX_PATH=$CONDA_PREFIX/lib/python3.9/site-packages/pybind11/share/cmake/pybind11 bash build_all_conda.sh

运行基于模型的演示

路径已在argparse中默认设置。如果需要更改场景,可以相应地传递参数。在演示数据上运行,您应该能够看到机器人操作芥末瓶。姿态估计在第一帧进行,然后自动切换到跟踪模式处理视频的其余部分。结果可视化将保存到argparse中指定的debug_dir。(注意首次运行可能由于在线编译而较慢)

bash
python run_demo.py

可以自由尝试其他物体(无需重新训练),例如driller,通过更改argparse中的路径。

在公共数据集上运行(LINEMOD、YCB-Video)

为此,您首先需要下载LINEMOD数据集和YCB-Video数据集。

运行基于模型版本

在这两个数据集上分别运行基于模型版本,根据下载位置设置路径。结果将保存到debug文件夹。

bash
python run_linemod.py --linemod_dir /path/to/LINEMOD --use_reconstructed_mesh 0

python run_ycb_video.py --ycbv_dir /path/to/YCB_Video --use_reconstructed_mesh 0

运行无模型少样本版本

首先需要训练Neural Object Field。ref_view_dir基于上述"数据准备"部分的下载位置。将数据集标志设置为您感兴趣的数据集。

bash
python bundlesdf/run_nerf.py --ref_view_dir /path/to/ref_views_16 --dataset ycbv

然后运行与基于模型版本类似的命令,但有一些小的修改。这里我们使用YCB-Video作为示例:

bash
python run_ycb_video.py --ycbv_dir /path/to/YCB_Video --use_reconstructed_mesh 1 --ref_view_dir /path/to/ref_views_16

故障排除

  • 对于较新的GPU(如4090): 请参考https://github.com/NVlabs/FoundationPose/issues/XX
  • 在Windows上设置: 请参考https://github.com/NVlabs/FoundationPose/issues/XX
  • 如果得到不合理的结果: 请检查https://github.com/NVlabs/FoundationPose/issues/XX%E5%92%8Chttps://github.com/NVlabs/FoundationPose/issues/XX

训练数据下载

我们的训练数据包括使用来自GSO和Objaverse的3D资产渲染的场景,具有高质量照片级真实感和大域随机化。每个数据点包括RGB、深度、物体姿态、相机姿态、实例分割、2D边界框。https://***/drive/folders/...

解析相机参数(包括外参和内参)

python
glcam_in_cvcam = np.array([[1,0,0,0],
                        [0,-1,0,0],
                        [0,0,-1,0],
                        [0,0,0,1]]).astype(float)

W, H = camera_params["renderProductResolution"]
with open(f'{base_dir}/camera_params/camera_params_000000.json','r') as ff:
  camera_params = json.load(ff)

world_in_glcam = np.array(camera_params['cameraViewTransform']).reshape(4,4).T
cam_in_world = np.linalg.inv(world_in_glcam)@glcam_in_cvcam
world_in_cam = np.linalg.inv(cam_in_world)

focal_length = camera_params["cameraFocalLength"]
horiz_aperture = camera_params["cameraAperture"][0]
vert_aperture = H / W * horiz_aperture
focal_y = H * focal_length / vert_aperture
focal_x = W * focal_length / horiz_aperture
center_y = H * 0.5
center_x = W * 0.5

fx, fy, cx, cy = focal_x, focal_y, center_x, center_y
K = np.eye(3)
K[0,0] = fx
K[1,1] = fy
K[0,2] = cx
K[1,2] = cy

注意事项

由于Stable-Diffusion在LAION数据集上训练的***限制,我们无法发布基于扩散的纹理增强数据,也无法发布使用它训练的预训练权重。因此,我们发布了未在扩散增强数据上训练的版本。预期会有轻微的性能下降。

引用

如果您使用此代码,请引用我们的论文:

bibtex
@InProceedings{foundationposewen2024,
  author        = {Bowen Wen, Wei Yang, Jan Kautz, Stan Birchfield},
  title         = {{FoundationPose}: Unified 6D Pose Estimation and Tracking of Novel Objects},
  booktitle     = {CVPR},
  year          = {2024},
}

如果您发现无模型设置有用,请同时考虑引用:

bibtex
@InProceedings{bundlesdfwen2023,
  author        = {Bowen Wen and Jonathan Tremblay and Valts Blukis and Stephen Tyree and Thomas M"{u}ller and Alex Evans and Dieter Fox and Jan Kautz and Stan Birchfield},
  title         = {{BundleSDF}: {N}eural 6-{DoF} Tracking and {3D} Reconstruction of Unknown Objects},
  booktitle     = {CVPR},
  year          = {2023},
}

致谢

我们要感谢Jeff Smith帮助代码发布;NVIDIA Isaac Sim和Omniverse团队对合成数据生成的支持;Tianshi Cao的宝贵讨论。最后,我们也感谢CVPR审稿人和AC提出的积极反馈和建设性建议。

许可证

代码和数据在NVIDIA源代码许可证下发布。版权所有 © 2024,NVIDIA Corporation。保留所有权利。

联系方式

如有问题,请联系Bowen Wen。

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 foundationpose 镜像标签

docker pull docker.xuanyuan.run/wenbowen123/foundationpose:<标签>

使用方法:

  • 登录认证方式
  • 免认证方式

DockerHub 原生拉取命令

docker pull wenbowen123/foundationpose:<标签>

轩辕镜像配置手册

按平台快速找到配置文档

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

iKuai 镜像加速

宝塔面板

一键配置镜像源

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

一键安装

一键安装 Docker

Linux Docker 一键安装

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

版本功能对比

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

错误码

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 请求频率

其他报错

DNS 超时

DNS 解析 · 网络超时

TLS 证书失败

no matching manifest(架构)

账号

失败是否计费

manifest · blob · 计费

申请开发票(企业 / 个人)

企业 · 个人 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
wenbowen123/foundationpose
教程轩辕镜像功能与使用教程
定价查看流量套餐与价格
热门查看热门 Docker 镜像推荐
博客Docker 镜像公告与技术博客
专业版 · 高速稳定拉取镜像
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
50GB 仅 ¥7/年
专业版 · 高速稳定拉取镜像
50GB 仅 ¥7/年
高速镜像下载·在线技术支持·99.95% SLA 保障·付费会员免广告
商务合作:点击复制邮箱
用户协议·隐私政策·©2024-2026 源码跳动
用户协议·隐私政策©2024-2026 杭州源码跳动科技有限公司商务合作:点击复制邮箱

更多相关 Docker 镜像与资源

以下是 wenbowen123/foundationpose 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:

  • pytorch/pytorch Docker 镜像说明
  • bitnami/pytorch Docker 镜像说明(PyTorch 深度学习框架,Bitnami 企业级配置)
  • rocm/pytorch Docker 镜像说明(PyTorch 机器学习框架,ROCm GPU 加速版本)
  • bitnamicharts/pytorch Docker 镜像说明(Bitnami PyTorch 图表栈,适合深度学习训练与推理)
  • ascendai/pytorch Docker 镜像说明(Pytorch 镜像变体,适合 Pytorch、Tensorflow、Vllm 相关部署场景)