3dmatch-toolbox详细安装教程-Ubuntu14.04

2024-02-03 09:04

本文主要是介绍3dmatch-toolbox详细安装教程-Ubuntu14.04,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

3dmatch-toolbox详细安装教程-Ubuntu14.04

  • 前言
  • docker搭建Ubuntu14.04
  • 安装第三方库
    • 安装cuda/cundnn
    • 安装OpenCV
    • 安装Matlab
  • 安装以及运行3dmatch-toolbox
    • 1.安装测试3dmatch-toolbox(对齐两个点云)
  • 总结

前言

paper:3DMatch: Learning Local Geometric Descriptors from RGB-D Reconstructions 【CVPR-2017】
githup::https://github.com/1447121704/3dmatch-toolbox
提示:3dmatch-toolbox源码作者只在Ubuntu 14.04上安装运行。
最近在docker的ubuntu14.04容器上配置3dmatch-toolbox运行环境时踩了很多坑,在这期间查阅了很多资料和博客,于是想对安装过程进行总结,方便自己反复查阅以及分享经验避免大家重复踩坑。
博主是用docker在ubuntu14.04容器中安装的3dmatch-toolbox,后续会打包成docker的镜像文件分享给大家。

docker搭建Ubuntu14.04

windows10下docker的安装教程参考博主之前的博文《【docker】Windows10系统下安装并配置阿里云镜像加速》,这里默认大家都装好docker了。
docker命令大全参考

# 获取镜像ubuntu14.04
docker pull snoopy86/desktop-dockers
# 查看镜像
docker images
# 创建(并启动)gpu版本容器,将容器内部的端口5900和22映射到宿主机上的相同端口
docker run -it --privileged=True --shm-size 8g --gpus all --name 3dmatch -p 5900:5900 -p 22:22 -d snoopy86/desktop-dockers:latest
# 只查看正在运行的容器
docker ps
# 进入容器
docker attach 3dmatch 
# 或者
docker exec -it 3dmatch /bin/bash

win10下cmd进行docker容器内部:

这里镜像博主找了很久,但是有个小问题,root用户的密码不知道:

解决办法如下,在cmd进行ubuntu容器时候设置root的密码

# 设置root密码
passwd root
# 这里也重置ubuntu(用户)的密码
passwd ubuntu

# 查看ubuntu版本
lsb_release -a
# 更新apt库,更新软件列表
sudo apt-get update
sudo apt-get upgrade

安装第三方库

安装cuda/cundnn

【参考】博主的ubuntu18.04下深度学习环境配置详细教程,按照比较类似博主不再赘述。

假如你是和博主一样用docker使用ubuntu14.04容器来搭建环境,推荐按照博主的选项来。

安装OpenCV

【OpenCV安装教程参考】
【OpenCV2.4.11官网地址】,直接下载安装即可(推荐)。

# 安装依赖项
sudo apt-get install build-essential cmake libgtk2.0-dev pkg-config python-dev python-numpy libavcodec-dev libavformat-dev libswscale-dev
#下载源码包到Downloads(不推荐)
cd Downloads
wget https://github.com/opencv/opencv/archive/2.4.11.zip
# 解压opencv源代码并进入目录
sudo apt-get install unzip
unzip opencv-2.4.11.zip && cd opencv-2.4.11
# 创建并进入构建目录
mkdir build && cd build
# 开始编译和安装
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler ..
# 4线程数量,根据电脑性能选择合适的数字
make -j4
sudo make install
#验证安装是否完成
# 安装pkg-config工具
sudo apt-get install -y pkg-config
# 查询OpenCV版本
pkg-config --modversion opencv
# 查询OpenCV库
pkg-config --cflags opencv
# 查询头文件目录
pkg-config --libs opencv

安装Matlab

【参考】
1.下载安装包和破解文件
matlabR2016b源码 提取码:kov1
下载的Linux matlabR2016b文件夹内有三个文件:

ubuntu14.04有个神坑,不能安装百度云,这里博主是下载到win10下,然后将三个文件夹打包后从win10主机复制文件到docker容器ubuntu14.04。

# 主机复制文件到docker容器
docker cp  hostfilepath  containerid:/filepath
#  eg:
docker cp  E:\BaiduNetdiskDownload\Linux.zip acd42a2ba5f2://home/ubuntu/Downloads


# 解压文件夹
unzip Linux.zip
# 解压Matlab 2016b Linux64 Crack.rar文件
sudo apt-get install unrar
cd Linux && unrar x Matlab_2016b_Linux64_Crack.rar
# 解压出如下文件
# license_server.lic
# Matlab_2016b_Linux64_Crack.rar
# R2016b
# license_standalone.lic
# MATLAB_Production_Server
# readme.txt
# 在Documents下新建matlab文佳夹用于挂载镜像
mkdir /home/ubuntu/Downloads/matlab
# 挂载镜像1
sudo mount -t auto -o loop /home/ubuntu/Downloads/Linux/R2016b_glnxa64_dvd1.iso /home/ubuntu/Downloads/matlab


2.安装Matlab

# 在挂载1的文件夹外执行
sudo /home/ubuntu/Downloads/matlab/install


同意条款下一步,在解压生成的readme.txt文件中找到"Use a File Installation Key":

一路下一步,直到系统提示挂载镜像2:

卸载镜像1,挂载镜像2,然后点击ok继续安装,等待程序运行结束:

# 新开一个命令行
sudo umount /home/ubuntu/Downloads/matlab
# 挂载到同一位置
sudo mount -t auto -o loop /home/ubuntu/Downloads/Linux/R2016b_glnxa64_dvd2.iso /home/ubuntu/Downloads/matlab	



3.注册并运行

# 安装完成后,将解压得到的R2016b/bin文件复制到安装目录下替换原有文件
sudo cp -r /home/ubuntu/Downloads/Linux/R2016b/bin/ /usr/local/MATLAB/R2016b/
# 再将解压得到的license_standalone.lic复制到安装目录
sudo mkdir /usr/local/MATLAB/R2016b/bin/licenses/ 
sudo cp /home/ubuntu/Downloads/Linux/license_standalone.lic /usr/local/MATLAB/R2016b/bin/licenses/ 
# 完成上述操作后把挂载卸载
sudo umount /home/ubuntu/Downloads/matlab
# 执行命令运行
sudo /usr/local/MATLAB/R2016b/bin/matlab


弹出激活框,然后导入/usr/local/MATLAB/R2016b/bin/licenses/ 文件目录下选择license_standalone.lic这个文件,即可激活。

完成安装。

安装以及运行3dmatch-toolbox

1.安装测试3dmatch-toolbox(对齐两个点云)

源码作者给出的过程和效果示意图:

# 新建3DMatch文件夹
mkdir 3DMatch && cd 3DMatch
# 通过git下载3dmatch-toolbox源码,需要科学上网
sudo apt-get install git 
git clone https://github.com/andyzeng/3dmatch-toolbox.git 3dmatch-toolbox
cd 3dmatch-toolbox/core
# 编译 C++/CUDA 演示代码
./compile.sh
# 下载3DMatch预训练权重
./download-weights.sh # 3dmatch-weights-snapshot-137000.marvin

下载权重出现以下问题,打开download-weights.sh文件添加 “–no-check-certificate”


加载两个示例 3D 点云,计算其 TDF 体素网格体积,并计算随机表面关键点及其 3DMatch 描述符,保存到磁盘上的二进制文件。

./demo ../data/sample/3dmatch-demo/single-depth-1.ply fragment-1
./demo ../data/sample/3dmatch-demo/single-depth-2.ply fragment-2 

成功运行的截图:


保存到磁盘上的对应二进制文件。

可能出现 “ error while loading shared libraries: libopencv_core.so.2.4: cannot open shared object file: No such file or directory” 错误

解决方法:

# 编辑修改文件ld.so.conf
sudo gedit /etc/ld.so.conf
# 插入信息,路径要根据自己的具体情况设置
include /usr/local/include/opencv/*
/sbin/ldconfig -v
# 保存退出执行以下命令
sudo ldconfig   

opencv下是头文件:

插入的内容:
=
在 Matlab 中运行以下脚本,加载关键点和3DMatch描述符,并使用RANSAC注册两个点云,对齐的点云的可视化保存到文件“result.ply”。

# 启动 Matlab 
sudo /usr/local/MATLAB/R2016b/bin/matlab
# 执行命令
demo

该文件也可以使用Meshlab或任何其他3D查看器进行查看。

注意:由于默认情况下随机选择的关键点不正确,首次尝试此演示时可能会导致对齐失败。


这里博主先暂时告一段落,后续会把其他部分内容补上。

总结

尽可能简单、详细的介绍3dmatch-toolbox的安装流程以及解决了安装过程中可能存在的问题。后续会根据自己学到的知识结合个人理解讲解3dmatch-toolbox的原理和代码。

这篇关于3dmatch-toolbox详细安装教程-Ubuntu14.04的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/673636

相关文章

龙蜥操作系统Anolis OS-23.x安装配置图解教程(保姆级)

《龙蜥操作系统AnolisOS-23.x安装配置图解教程(保姆级)》:本文主要介绍了安装和配置AnolisOS23.2系统,包括分区、软件选择、设置root密码、网络配置、主机名设置和禁用SELinux的步骤,详细内容请阅读本文,希望能对你有所帮助... ‌AnolisOS‌是由阿里云推出的开源操作系统,旨

PyTorch使用教程之Tensor包详解

《PyTorch使用教程之Tensor包详解》这篇文章介绍了PyTorch中的张量(Tensor)数据结构,包括张量的数据类型、初始化、常用操作、属性等,张量是PyTorch框架中的核心数据结构,支持... 目录1、张量Tensor2、数据类型3、初始化(构造张量)4、常用操作5、常用属性5.1 存储(st

Ubuntu系统怎么安装Warp? 新一代AI 终端神器安装使用方法

《Ubuntu系统怎么安装Warp?新一代AI终端神器安装使用方法》Warp是一款使用Rust开发的现代化AI终端工具,该怎么再Ubuntu系统中安装使用呢?下面我们就来看看详细教程... Warp Terminal 是一款使用 Rust 开发的现代化「AI 终端」工具。最初它只支持 MACOS,但在 20

Java操作PDF文件实现签订电子合同详细教程

《Java操作PDF文件实现签订电子合同详细教程》:本文主要介绍如何在PDF中加入电子签章与电子签名的过程,包括编写Word文件、生成PDF、为PDF格式做表单、为表单赋值、生成文档以及上传到OB... 目录前言:先看效果:1.编写word文件1.2然后生成PDF格式进行保存1.3我这里是将文件保存到本地后

windows系统下shutdown重启关机命令超详细教程

《windows系统下shutdown重启关机命令超详细教程》shutdown命令是一个强大的工具,允许你通过命令行快速完成关机、重启或注销操作,本文将为你详细解析shutdown命令的使用方法,并提... 目录一、shutdown 命令简介二、shutdown 命令的基本用法三、远程关机与重启四、实际应用

mysql-8.0.30压缩包版安装和配置MySQL环境过程

《mysql-8.0.30压缩包版安装和配置MySQL环境过程》该文章介绍了如何在Windows系统中下载、安装和配置MySQL数据库,包括下载地址、解压文件、创建和配置my.ini文件、设置环境变量... 目录压缩包安装配置下载配置环境变量下载和初始化总结压缩包安装配置下载下载地址:https://d

python库fire使用教程

《python库fire使用教程》本文主要介绍了python库fire使用教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录1.简介2. fire安装3. fire使用示例1.简介目前python命令行解析库用过的有:ar

LinuxMint怎么安装? Linux Mint22下载安装图文教程

《LinuxMint怎么安装?LinuxMint22下载安装图文教程》LinuxMint22发布以后,有很多新功能,很多朋友想要下载并安装,该怎么操作呢?下面我们就来看看详细安装指南... linux Mint 是一款基于 Ubuntu 的流行发行版,凭借其现代、精致、易于使用的特性,深受小伙伴们所喜爱。对

Linux(Centos7)安装Mysql/Redis/MinIO方式

《Linux(Centos7)安装Mysql/Redis/MinIO方式》文章总结:介绍了如何安装MySQL和Redis,以及如何配置它们为开机自启,还详细讲解了如何安装MinIO,包括配置Syste... 目录安装mysql安装Redis安装MinIO总结安装Mysql安装Redis搜索Red

使用SpringBoot创建一个RESTful API的详细步骤

《使用SpringBoot创建一个RESTfulAPI的详细步骤》使用Java的SpringBoot创建RESTfulAPI可以满足多种开发场景,它提供了快速开发、易于配置、可扩展、可维护的优点,尤... 目录一、创建 Spring Boot 项目二、创建控制器类(Controller Class)三、运行