alicevision/meshroomMeshroom 是一款基于 AliceVision 摄影测量计算机视觉框架开发的免费开源 3D 重建软件。该 Docker 镜像封装了 Meshroom 的完整运行环境,可快速部署并用于从二维图像序列生成三维模型,支持全流程自动化处理,包括相机标定、稠密点云重建、网格生成及纹理映射等核心步骤。
Meshroom 适用于需要快速从图像生成三维模型的场景,主要包括:
~/meshroom_data)。docker run)通过以下命令启动 Meshroom 容器,支持图形界面交互及本地数据挂载:
bashdocker run -it --rm \ --name meshroom \ -e DISPLAY=$DISPLAY \ -v /tmp/.X11-unix:/tmp/.X11-unix \ # 转发 X11 图形界面 -v ~/meshroom_data:/data \ # 挂载本地数据目录(含输入图像及输出结果) -u $(id -u):$(id -g) \ # 避免容器内权限冲突(使用宿主用户 ID/组 ID) alicevision/meshroom:latest
-e DISPLAY=$DISPLAY:传递宿主 X11 显示环境变量,确保图形界面正常显示;-v /tmp/.X11-unix:/tmp/.X11-unix:挂载 X11 套接字,实现容器与宿主的图形界面通信;-v ~/meshroom_data:/data:将宿主本地数据目录(如 ~/meshroom_data)挂载至容器内 /data 路径,用于输入图像读取及输出结果存储;-u $(id -u):$(id -g):指定容器运行用户 ID/组 ID,与宿主一致,避免文件权限问题。创建 docker-compose.yml 文件,简化部署流程:
yamlversion: '3' services: meshroom: image: alicevision/meshroom:latest container_name: meshroom environment: - DISPLAY=${DISPLAY} - USER_ID=$(id -u) - GROUP_ID=$(id -g) volumes: - /tmp/.X11-unix:/tmp/.X11-unix - ./meshroom_data:/data # 当前目录下的 meshroom_data 目录作为数据卷 network_mode: "host" # 简化网络配置(可选,根据宿主环境调整) restart: "no" # 非持久化运行,退出后自动清理
启动命令:
bashdocker-compose up
~/meshroom_data/input);docker run 或 docker-compose up 命令启动 Meshroom;/data/input 路径下的图像;/data/output 路径,可在宿主数据目录中查看。| 环境变量 | 说明 | 默认值 |
|---|---|---|
DISPLAY | X11 显示服务地址,用于图形界面转发 | 宿主环境 $DISPLAY 值 |
USER_ID | 容器运行用户 ID,需与宿主用户 ID 一致以避免文件权限问题 | $(id -u) |
GROUP_ID | 容器运行组 ID,需与宿主组 ID 一致以避免文件权限问题 | $(id -g) |
| 挂载路径(宿主 → 容器) | 说明 | 必需性 |
|---|---|---|
/tmp/.X11-unix:/tmp/.X11-unix | X11 套接字挂载,用于图形界面显示 | 是 |
~/meshroom_data:/data | 数据卷,用于输入图像读取和输出结果存储 | 是 |
nvidia-docker);DISPLAY 变量配置及 USER_ID/GROUP_ID 是否与宿主一致。manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务