ubuntu20.04下安装pcl

这篇具有很好参考价值的文章主要介绍了ubuntu20.04下安装pcl。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

pcl点云数据库,用来进行3D信息的获取与处理,和opencv相比较,opencv是用来处理二维信息,他是学术界与工业界针对点云最全的库,且网络上相关的资料很多。以下是pcl的安装步骤以及遇到的问题。

提前说明,本人用的是ubuntu20.04+pcl1.12.0+vtk7.1.1,使用源码编译的方式,Vtk用来完成点云的可视化。

之前安装过pcl1.12.0+vtk9.1.1,最后pcl安装可视化闪退,所以还是Vtk下载的vtk7.1.1

网络上有说pcl1.8.0+vtk7.1.1是标配,但是在安装pcl1.8.1时出现过错误。

     所以本文选择安装 pcl1.12.1 + vtk7.1.1 +qt5.12(在此不做安装说明)

ubuntu18.04_pcl安装

  • 1. 首先安装pcl各种依赖
  • 2. 安装VTK
    • 2.1 首先安装vtk各种依赖:
    • 2.2 安装Vtk
  • 3. 安装pcl
  • 4. pcl测试

1. 首先安装pcl各种依赖

sudo apt-get update
sudo apt-get install git build-essential linux-libc-dev
sudo apt-get install cmake cmake-gui
sudo apt-get install libusb-1.0-0-dev libusb-dev libudev-dev
sudo apt-get install mpi-default-dev openmpi-bin openmpi-common
sudo apt-get install libflann1.9 libflann-dev  # ubuntu20.4对应1.9
sudo apt-get install libeigen3-dev
sudo apt-get install libboost-all-dev
sudo apt-get install libqhull* libgtest-dev
sudo apt-get install freeglut3-dev pkg-config
sudo apt-get install libxmu-dev libxi-dev
sudo apt-get install mono-complete
sudo apt-get install libopenni-dev
sudo apt-get install libopenni2-dev


可能问题:

(1) sudo apt-get install libflann1.9 libflann-dev 显示无法定位包libflann,

首先去查看系统对应的版本   查看地址:Ubuntu – Package Search Results -- libflann

搜索libflann 选择ubuntu20.04对应的codename代号:focal  :
 打开终端,执行以下命令:

lsb_release -a

ubuntu20.04下安装pcl

 可以看到ubuntu20.04对应libflan1.9

ubuntu20.04下安装pcl

 (2) 安装过程中遇到无法连接的问题,考虑更换源

参考文章:Ubuntu更换软件源_寥廓长空的博客-CSDN博客_ubuntu源

2. 安装VTK

   下载地址:Download | VTK

本人下载:VTK-7.1.1.zip

 2.1   首先安装vtk各种依赖:

# 首先安装VTK的依赖:X11,OpenGL;cmake和cmake-gui在安装pcl依赖的时候安装过了的话可以跳过
# X11
sudo apt-get install libx11-dev libxext-dev libxtst-dev libxrender-dev libxmu-dev libxmuu-dev
# OpenGL
sudo apt-get install build-essential libgl1-mesa-dev libglu1-mesa-dev
# cmake && cmake-gui
sudo apt-get install cmake cmake-gui

2.2   安装Vtk

2.2.1   解压到准备好的安装目录。在目录下新建build文件夹 

打开终端输入:  

cmake-gui 

where is the source code: 路径为VTK目录

where to build the binaries:路径为VTK目录下build的路径

如下图:

ubuntu20.04下安装pcl

点击:configure,显示“Configuring done”。

再勾选“VTK-Group-Qt”,点击“Configure”;完成后,显示“Configuring done”;

最后点击“Generate”;显示“Generating done”,完成。

2.2.2  在build目录下,打开终端输入:

make -j8 # 要是8核处理器还比较着急看结果的话,可以:make -j16    
sudo make install

3. 安装pcl

下载地址: Release PCL 1.12.0 · PointCloudLibrary/pcl · GitHub

打开pcl目录,新建build文件夹

在build文件中,打开终端,输入:

cmake -DCMAKE_TYPE=None ..    
make -j8    //  选择8个进程同时处理,如果机子比较差,可以选择make -j4 或者 make
sudo make install

到此pcl下载完成,时间会比较长。

4. pcl测试 

以下使用两段代码进行测试

4.1   文件构成

ubuntu20.04下安装pcl

 cmakelist.txt

cmake_minimum_required(VERSION 2.6)
project(pcl_test)

find_package(PCL 1.12 REQUIRED)

include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})

add_executable(pcl_test pcl_test.cpp)

target_link_libraries (pcl_test ${PCL_LIBRARIES})

install(TARGETS pcl_test RUNTIME DESTINATION bin)

pcl_test.cpp

#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>

int
  main (int argc, char** argv)
{
  pcl::PointCloud<pcl::PointXYZ> cloud;

  // Fill in the cloud data
  cloud.width    = 5;
  cloud.height   = 1;
  cloud.is_dense = false;
  cloud.points.resize (cloud.width * cloud.height);

  for (size_t i = 0; i < cloud.points.size (); ++i)
  {
    cloud.points[i].x = 1024 * rand () / (RAND_MAX + 1.0f);
    cloud.points[i].y = 1024 * rand () / (RAND_MAX + 1.0f);
    cloud.points[i].z = 1024 * rand () / (RAND_MAX + 1.0f);
  }

  pcl::io::savePCDFileASCII ("test_pcd.pcd", cloud);
  std::cerr << "Saved " << cloud.points.size () << " data points to test_pcd.pcd." << std::endl;

  for (size_t i = 0; i < cloud.points.size (); ++i)
    std::cerr << "    " << cloud.points[i].x << " " << cloud.points[i].y << " " << cloud.points[i].z << std::endl;

  return (0);
}

运行:进入build,打开终端输入:

cmake ..
make
./pcl_test.cpp

得到结果:

ubuntu20.04下安装pcl

 4.2   另一个测试代码为

pcl_test.cpp

#include <iostream>
#include <pcl/common/common_headers.h>
#include <pcl/io/pcd_io.h>
#include <pcl/visualization/pcl_visualizer.h>
#include <pcl/visualization/cloud_viewer.h>
#include <pcl/console/parse.h>
 
 
int main(int argc, char **argv) {
    std::cout << "Test PCL !!!" << std::endl;
    
    pcl::PointCloud<pcl::PointXYZRGB>::Ptr point_cloud_ptr (new pcl::PointCloud<pcl::PointXYZRGB>);
    uint8_t r(255), g(15), b(15);
    for (float z(-1.0); z <= 1.0; z += 0.05)
    {
      for (float angle(0.0); angle <= 360.0; angle += 5.0)
      {
	pcl::PointXYZRGB point;
	point.x = 0.5 * cosf (pcl::deg2rad(angle));
	point.y = sinf (pcl::deg2rad(angle));
	point.z = z;
	uint32_t rgb = (static_cast<uint32_t>(r) << 16 |
		static_cast<uint32_t>(g) << 8 | static_cast<uint32_t>(b));
	point.rgb = *reinterpret_cast<float*>(&rgb);
	point_cloud_ptr->points.push_back (point);
      }
      if (z < 0.0)
      {
	r -= 12;
	g += 12;
      }
      else
      {
	g -= 12;
	b += 12;
      }
    }
    point_cloud_ptr->width = (int) point_cloud_ptr->points.size ();
    point_cloud_ptr->height = 1;
    
    pcl::visualization::CloudViewer viewer ("test");
    viewer.showCloud(point_cloud_ptr);
    while (!viewer.wasStopped()){ };
    return 0;
}

运行结果:

ubuntu20.04下安装pcl

如果以上结果没问题,pcl就安装成功了。

5. cloudcompare软件安装

推荐snap安装方式文章来源地址https://www.toymoban.com/news/detail-495423.html

sudo apt-get update
sudo apt install snap
sudo snap install cloudcompare
cloudcompare.CloudCompare
loudcompare.ccViewer 

到了这里,关于ubuntu20.04下安装pcl的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ubuntu20.04安装conda

    1)conda与miniconda       任何语言的包、依赖和环境管理---Python, R, Ruby, Lua, Scala, Java, JavaScript, C/ C++, FORTRAN。 Conda 是一个运行在 Windows、macOS 和 Linux 上的开源包管理系统和环境管理系统。Conda 可以快速安装、运行和更新包及其依赖项。Conda 可以轻松地在本地计算机上创建、保存

    2024年02月10日
    浏览(67)
  • ubuntu20.04安装cmake

    编辑/etc/apt/sources.list文件, 在文件最前面添加以下条目(操作前做好相应备份) 增加阿里云,在source.list文件开头增加如下内容 保存并更新 安装编译环境 下载驱动源码 编译安装 进入项目目录rtl8821CU后开始编译安装 下载cmake3.16.6:https://download.csdn.net/download/qq_46107892/87517469 解压

    2024年02月09日
    浏览(86)
  • ubuntu20.04 安装 pyconcorde

    这个包似乎对网络环境要求挺高的,我们直接弄个 射线A型号 的飞机 直接使用 pip install pyconcorde 安装,发现在使用里面的包时会报奇怪的错误,于是决定寻找 github 上的 pyconcorde 源码,看文档进行安装 github 地址:https://github.com/jvkersch/pyconcorde 在虚拟机上装了半天装不了,在

    2024年02月07日
    浏览(53)
  • Ubuntu20.04安装anaconda

    官网链接:Anaconda | Anaconda Distribution 直接选择Download,他会自动识别系统下载最新的版本 进入下载文件夹,运行安装文件 接受安装协议,输入yes;阅读注册信息,然后输入yes;确定anaconda的安装位置,按enter确定,加入环境变量的提示信息,输入yes 在文件最后两行写入  应用

    2024年02月06日
    浏览(65)
  • ubuntu20.04安装repo

    一、 下载repo  直接安装repo会报错。 zjh@ubuntu:~/work/linux_Sunplus/app$ sudo apt-get install repo Reading package lists... Done Building dependency tree        Reading state information... Done E: Unable to locate package repo ( 在ubuntu18.04上可以直接安装,但在20.04上就算执行了sudo apt-get update也是不能直接安装的

    2024年02月02日
    浏览(47)
  • ubuntu 20.04 安装 Mathematica

    主要参考这两篇文章 Mathematica白嫖全过程 Mathematica(Linux版)下载安装 先下载 WolframEngine WolframEngine_13.2.0_LINUX.sh 安装后,使用时出现报错 wolframclient.exception.WolframKernelException: Failed to communicate with kernel: /usr/local/Wolfram/WolframEngine/13.2/Executables/WolframKernel. 在终端输入 wolframscript 然

    2024年02月14日
    浏览(41)
  • Ubuntu 20.04 安装RVM

    RVM是管理Ruby版本的工具,使用RVM可以在单机上方便地管理多个Ruby版本。 首先使下载安装脚本 如果出现了 Connection refused 的情况, 可以考虑执行以下命令修改dns,再执行下载命令 执行安装脚本 如果gpg提示没有公钥,如下,则执行提示的命令,添加对应的公钥 安装成功后会

    2024年02月21日
    浏览(62)
  • Ubuntu20.04安装OpenCV

    开源计算机视觉(OpenCV)是一个主要针对实时计算机视觉的编程函数库。 OpenCV的应用领域包括:2D和3D功能工具包、运动估计、面部识别系统、手势识别、人机交互、移动机器人、动作理解、物体识别、分割和识别、实体影像立体视觉:来自两个摄像机的深度感知、运动跟踪、增强

    2023年04月09日
    浏览(57)
  • ubuntu20.04安装4090驱动

    实验室配置了一台新主机,现在安装好了20.04,为了安装4090的驱动查找了很多资料。接下来记录一下安装4090驱动的过程,为方便未来安装其他的显卡驱动。 首先推荐一个视频,在为查找了很多资料后,发现这个视频讲的实在是太详细了。跟着这个来基本就没有问题。 Ubuntu系

    2024年02月08日
    浏览(73)
  • Ubuntu20.04软件安装大全

    最近在自己主机上安装了双系统,记录下自己在 Ubuntu20.04系统 中安装的软件及遇到的问题,方便下次查看,安装的软件大多是跟深度学习相关的以及个人平时习惯使用的, 仅供自己参考 。 这里分享下博主安装过程中的软件安装包下载链接[pwd:yolo]🚀🚀🚀 参考自UP主机器人

    2024年02月05日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包