当前位置: 首页 > article >正文

技术实践︱利用Docker快速体验Matterport3DSimulator!让视觉语言导航(VLN)任务入门再无门槛!

Matterport3DSimulator 是一个专门用于视觉语言导航(Visual Language Navigation, VLN)任务研究的仿真平台,它提供了丰富的三维场景和物理交互功能。然而,由于其安装过程的复杂性以及所需数据集的庞大,这为初学者设置了较高的使用门槛。

Docker 是一个开源的容器化平台,它能够简化应用程序及其依赖环境的打包和运行过程,从而在不同系统上实现 Matterport3DSimulator 的快速部署和体验。本文旨在介绍如何利用 Docker 快速部署 Matterport3DSimulator,以便用户能够直观地体验该平台,并帮助初学者在 VLN 领域建立信心。

以下是使用Docker快速体验Matterport3DSimulator的步骤:

0. 准备一台Ubuntu系统的电脑或者虚拟机

(如果Ubuntu服务器在远程,需要使用Mobaxterm远程登录,并开放6080端口。)

1. 安装Docker

首先,你需要在你的计算机上安装 Docker。根据你的操作系统,执行以下命令:

sudo apt-get update
sudo apt-get install -y docker.io

使用docker命令时,如提示权限不足,需要用sudo,则执行以下命令:

sudo groupadd docker    # 这一步如报错可忽略
sudo gpasswd -a ${USER} docker
sudo systemctl restart docker

安装完成后,使用以下命令验证是否安装成功:

# 显示当前正在运行的容器
docker ps

2. 拉取 Matterport3DSimulator的Docker镜像

由于官方提供的镜像,还需要执行很多操作,例如数据处理、程序编译等,且可视化比较麻烦,为了简化这些步骤,我们提供了一个开箱即用的Docker镜像,方便大家一键体验。

打开终端或命令提示符,输入以下命令来拉取镜像:

docker pull hccz95/mattersim:webvnc

PS: 如果由于网络问题无法拉去,可以使用我们的阿里云镜像:

docker pull registry.cn-hangzhou.aliyuncs.com/hccz95/mattersim:webvnc
docker tag registry.cn-hangzhou.aliyuncs.com/hccz95/mattersim:webvnc hccz95/mattersim:webvnc

查看是否拉取成功

docker images

如果能够看见hccz95/mattersim:webvnc,则说明拉取成功:

3. 运行 Matterport3DSimulator 容器

拉取完镜像后,输入以下命令来启动容器:

docker run --rm -p 6080:80 hccz95/mattersim:webvnc

这将会启动一个容器,并将容器内的 80 端口映射到宿主机的 6080 端口。

4. 访问仿真平台

打开你的浏览器,访问:

http://localhost:6080

你应该会看到操作系统的界面。

5. 体验仿真平台

在左下角打开系统终端

进入Matterport3DSimulator目录并执行C++ Demo:

cd /root/mount/Matterport3DSimulator
./build/mattersim_main

画面如图:

C++ demo窗口会展示每个episode的动画:

随后执行Python Demo:

python3 src/driver/driver.py

画面如图:

选中Python RGB窗口,将输入法切换到英文输入模式。你可以体验人机交互操作:

  • 使用“W”、“A”、“S”、“D”按键控制画面的上下左右移动。

  • 画面出现“1”、“2”等数字时,直接用数字按键选择相应数字控制画面移动。

注意事项

本教程仅用于快速体验Matterport3DSimulator,镜像中包含的数据集有限,也没有使用GPU进行加速,如需要在研究或者工程中使用Matterport3DSimulator,请期待我们后续文章。

总结

利用 Docker 技术,用户能够迅速部署 Matterport3DSimulator 并进行体验,无需面对环境配置和依赖性安装的挑战。这对于初学者和研究人员而言,无疑是一个极具便利性的工具。

本文旨在为读者提供指导和帮助。在实践操作过程中,若遇到任何疑问或困难,欢迎在文章下方的评论区提出。


http://www.kler.cn/a/465090.html

相关文章:

  • PHP 使用集合 处理复杂数据 提升开发效率
  • 玩客云docker修复(docker安装)
  • Python爬虫 - 豆瓣图书数据爬取、处理与存储
  • C# 设计模式:装饰器模式与代理模式的区别
  • 汽车燃油软件标定测试
  • 【区块链】零知识证明基础概念详解
  • Mono里运行C#脚本14—.net CLR metadata
  • java vscode springboot 问题汇总
  • the request was rejected because no multipart boundary was found
  • 【深度学习】卷积网络代码实战ResNet
  • Redission看门狗实现redis定期续期原理
  • CDGA|浅析自动化对数据治理的深远影响
  • 基于MPPT算法的光伏并网发电系统simulink建模与仿真
  • S2-016-RCE(CVE-2013-2251)--vulhub
  • SSM-Spring-IOC/DI注解开发
  • git@github.com:username/repository.git 报错:no such file or directory
  • 代码随想录算法训练营第49期总结
  • 从低通滤波器到高通滤波器及小波函数的构造-附Matlab源程序
  • k8s基础(3)—Kubernetes-Deployment
  • 数据挖掘——模型的评价
  • 机器学习 学习知识点
  • 比ftp好用的大文件传输方案
  • 纵览!报表控件 Stimulsoft Reports、Dashboards 和 Forms 2025.1 新版本发布!
  • 复习打卡大数据篇——HIVE 01
  • Elasticsearch名词解释
  • 基于深度学习的视觉检测小项目(三) 通过设计一个简单的用户界面设计了解pyside的基本套路