Kinect V2 在ros-noetic使用(ubuntu20.04)

(1)安装opencv

      本文安装的为 opencv3.4.15,本来准备安装3.1.0,但是好像和之前已经安装的vtk8.2有冲突。
      源码安装,cmake  /make/install 走下来没问题。

(2)安装libfreenect2

特别注意,这理由与不同版本原因,不同的unbuntu的安装 有点差别,本文是20.04,如果是14.04,请直接参照 github 的readme 进行安装。

下载
git clone https://github.com/OpenKinect/libfreenect2.git
cd libfreenect2

sudo apt-get install build-essential cmake pkg-config
sudo apt-get install libusb-1.0-0-dev
sudo apt-get install libturbojpeg0-dev
sudo apt-get install libglfw3-dev

其他可选的我都没有安装了opencl  opengl  cuda等,有需要自己安装。

mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/freenect2
make
make install

安装完成,可以运行一下测试,连接摄像机

./bin/Protonect

(3)IAI Kinect2

这个需要在ros的工作目录下进行安装,但是好像和20.04有些问题,挺多报错的。

cd ~/catkin_ws/src/
git clone https://github.com/code-iai/iai_kinect2.git
cd iai_kinect2
rosdep install -r --from-paths .
cd ~/catkin_ws
catkin_make -DCMAKE_BUILD_TYPE="Release"

如果你没错误,恭喜你完成安装。

(4)报错排除

(1)error: #error PCL requires C++14 or above

在对应的包里面的Cmakelist.txt 加入

  ADD_COMPILE_OPTIONS(-std=c++11 )
  ADD_COMPILE_OPTIONS(-std=c++14 )
  set( CMAKE_CXX_FLAGS "-std=c++11 -O3" )

(2)error: CV_IMWRITE_JPEG_QUALITY was not declared in this scope

CV_xxx 找不到的之类的报错
找到对应的报错文件,修改Crtl+F 先定位到:

修改

CV_xxx  修改为cv::xxx,例如CV_IMWRITE_JPEG_QUALITY修改为 cv::IMWRITE_JPEG_QUALITY 小写的cv奥!

(3)其中CV_BGR2GRAY 报错时,如果上面方法无效,先恢复原来的CV_XXX形式, error: CV_BGR2GRAY was not declared in this scope

添加头文件:

#include <opencv2/imgproc/types_c.h> 

(4)其中CV_AA 报错时,如果上面方法无效,先恢复原来的CV_XXX形式, error: CV_AA was not declared in this scope

添加头文件:

#include<opencv2/imgproc/imgproc_c.h>

完成这些应该可以编译通过了。

  • 7
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值