18.04 SLAM環境構成
目次
第1話——Ubuntu、mentohust、同期時間、検索入力方式の配置
第2話——CMake、g++、git
第3話——Eigen
第4話-Sophus
第5講——OpenCV、PCL、Pangolin
第6回-Ceres,g 2 o,DboW 3
第13話-octomap
インストール
どうきじかん
サーチ入力方式
最も基本的なc++コンパイル環境は、g++をインストールする必要があり、直接apt-get(すでにインストールされている可能性があります)
g 2 oのインストールにはEigenサポートが必要です
Sophusのインストールには2つの問題があります.1つはSophusテンプレートクラスと非テンプレートクラスの違いです.初心者が14回の講演で紹介した非テンプレートクラスのSophusを使いやすいように、gitからのSophusをa 621 ffバージョンにロールバックする必要があります.もう1つは,コンパイラバージョンの違いにより,非テンプレートクラスSophusコンパイルが出現することである.
ubuntu 18で04/18.10で次の問題が発生します.
解決方法:コンパイルする前にsophus/so 2を開く必要があります.cppファイルでは、
Sophusはコンパイルだけでインストールは必要ありません.
下は18.04下の3.3.1インストール方法:2系OpenCVは公式サイトからダウンロードして自分で解凍してインストールする必要があります
筆者が先にソースコードにインストールopencv 3.4、apt-getインストールのバージョンが3.2であることを発見した後、同じソースインストール2.4バージョンを選択し、同時にソースインストールで2つのバージョンをインストールするには、別のブログにインストールする必要があります.https://blog.csdn.net/qq_41814939/article/details/81625666公式サイトでソースをダウンロードするのは少し遅いかもしれませんが、この文章にも解決方法が貼られています.
まずubuntu 18と書きます.04の違い.以前のバージョンのubuntu端末apt-getにインストールされたopencvは2系であり、ubuntu 18では04は3.2バージョンにインストールされています.この違いは、ソースコードを直接ダウンロードしてインストールした3系で、2系のインストールで発見された違いです.
apt-get opencvの最新バージョンのインストール
エラーに遭遇
解決策https://www.jianshu.com/p/da49a712410f
OpenCVのアンインストール
PCL
Ubuntu16.04以降pclをインストールすると直接apt-getできます
Pangolin
gitのソースコード、コンパイルインストールです
CeresはGoogleのログとテストツールに依存しています
g2o
g 2 oのインストールにはEigenサポートが必要です
ubuntu 18で04 g 2 oのインストールと14.04でのインストールの主な違いはqtで、18.04はqt 5をデフォルトでインストールし、libqglviewer-devはlibqglviewer-headersに変更します
コンパイルが完了したらインストールする必要があります(そうしないとエラーが発生します)
DBoW3
インストール完了後
第1話——Ubuntu、mentohust、同期時間、検索入力方式の配置
第2話——CMake、g++、git
第3話——Eigen
第4話-Sophus
第5講——OpenCV、PCL、Pangolin
第6回-Ceres,g 2 o,DboW 3
第13話-octomap
第1話——Ubuntu、mentohust、同期時間、検索入力方式の配置
# home/package 。
インストール
sudo dpkg -i mentohust_0.3.4-1_amd64.deb
#
sudo mentohust
#
sudo gedit /etc/mentohust.conf
DaemonMod 1, 2
#
sudo mentohust -k
#
sudo mentohust -u Username -p Password -w
#
sudo gedit /etc/mentohust.conf
# ubuntu , , :
sudo service network-manager restart
どうきじかん
sudo apt-get install ntpdate
sudo ntpdate time.windows.com
sudo hwclock --localtime --systohc
サーチ入力方式
sudo dpkg -i sogoupinyin_2.2.0.0108_amd64.deb
sudo apt-get install -f
sudo dpkg -i sogoupinyin_2.2.0.0108_amd64.deb
reboot
第2話——CMake、g++、git
最も基本的なc++コンパイル環境は、g++をインストールする必要があり、直接apt-get(すでにインストールされている可能性があります)
sudo apt-get install cmake
sudo apt-get install g++
sudo apt-get install git
第3話——Eigen
g 2 oのインストールにはEigenサポートが必要です
sudo apt-get install libeigen3-dev
pkg-config --cflags eigen3
sudo apt-get remove libeigen3-dev
第4話-Sophus
Sophusのインストールには2つの問題があります.1つはSophusテンプレートクラスと非テンプレートクラスの違いです.初心者が14回の講演で紹介した非テンプレートクラスのSophusを使いやすいように、gitからのSophusをa 621 ffバージョンにロールバックする必要があります.もう1つは,コンパイラバージョンの違いにより,非テンプレートクラスSophusコンパイルが出現することである.
ubuntu 18で04/18.10で次の問題が発生します.
“unit_complex_.real() = 1.; unit_complex_.imag() = 0. ;"
解決方法:コンパイルする前にsophus/so 2を開く必要があります.cppファイルでは、
unit_complex_.real() = 1. ;
unit_complex_.imag() = 0. ;
unit_complex_.real(1.) ;
unit_complex_.imag(0.) ;
Sophusはコンパイルだけでインストールは必要ありません.
git clone https://github.com/strasdat/Sophus.git
cd Sophus
git checkout a621ff
mkdir build
cd build
cmake ..
make -j12
第5講——OpenCV、PCL、Pangolin
下は18.04下の3.3.1インストール方法:2系OpenCVは公式サイトからダウンロードして自分で解凍してインストールする必要があります
sudo apt-get install build-essential libgtk2.0-dev libvtk6-dev libjpeg-dev libopenexr-dev libtbb-dev
sudo apt-get install libtiff4-dev
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release \ -D OPENCV_EXTRA_MODULES_PATH=/home/melodic/package/opencv-3.3.1/opencv_contrib-3.3.1/modules/ \ -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j12
sudo make install
pkg-config --modversion opencv
筆者が先にソースコードにインストールopencv 3.4、apt-getインストールのバージョンが3.2であることを発見した後、同じソースインストール2.4バージョンを選択し、同時にソースインストールで2つのバージョンをインストールするには、別のブログにインストールする必要があります.https://blog.csdn.net/qq_41814939/article/details/81625666公式サイトでソースをダウンロードするのは少し遅いかもしれませんが、この文章にも解決方法が貼られています.
まずubuntu 18と書きます.04の違い.以前のバージョンのubuntu端末apt-getにインストールされたopencvは2系であり、ubuntu 18では04は3.2バージョンにインストールされています.この違いは、ソースコードを直接ダウンロードしてインストールした3系で、2系のインストールで発見された違いです.
apt-get opencvの最新バージョンのインストール
sudo apt-get install libopencv-dev
エラーに遭遇
/home/z2/pkg/opencv-2.4.13.6/modules/highgui/src/cap_ffmpeg_impl.hpp:1484:21: error: ‘CODEC_FLAG_GLOBAL_HEADER’ was not declared in this scope
c->flags |= CODEC_FLAG_GLOBAL_HEADER;
^~~~~~~~~~~~~~~~~~~~~~~~
/home/z2/pkg/opencv-2.4.13.6/modules/highgui/src/cap_ffmpeg_impl.hpp:1484:21: note: suggested alternative: ‘AV_CODEC_FLAG_GLOBAL_HEADER’
c->flags |= CODEC_FLAG_GLOBAL_HEADER;
^~~~~~~~~~~~~~~~~~~~~~~~
AV_CODEC_FLAG_GLOBAL_HEADER
/home/z2/pkg/opencv-2.4.13.6/modules/highgui/src/cap_ffmpeg_impl.hpp: In function ‘int icv_av_write_frame_FFMPEG(AVFormatContext*, AVStream*, uint8_t*, uint32_t, AVFrame*)’:
/home/z2/pkg/opencv-2.4.13.6/modules/highgui/src/cap_ffmpeg_impl.hpp:1512:30: error: ‘AVFMT_RAWPICTURE’ was not declared in this scope
if (oc->oformat->flags & AVFMT_RAWPICTURE) {
^~~~~~~~~~~~~~~~
/home/z2/pkg/opencv-2.4.13.6/modules/highgui/src/cap_ffmpeg_impl.hpp:1512:30: note: suggested alternative: ‘AVFMT_NOFILE’
if (oc->oformat->flags & AVFMT_RAWPICTURE) {
^~~~~~~~~~~~~~~~
AVFMT_NOFILE
/home/z2/pkg/opencv-2.4.13.6/modules/highgui/src/cap_ffmpeg_impl.hpp: In member function ‘void CvVideoWriter_FFMPEG::close()’:
/home/z2/pkg/opencv-2.4.13.6/modules/highgui/src/cap_ffmpeg_impl.hpp:1686:35: error: ‘AVFMT_RAWPICTURE’ was not declared in this scope
if( (oc->oformat->flags & AVFMT_RAWPICTURE) == 0 )
^~~~~~~~~~~~~~~~
/home/z2/pkg/opencv-2.4.13.6/modules/highgui/src/cap_ffmpeg_impl.hpp:1686:35: note: suggested alternative: ‘AVFMT_NOFILE’
if( (oc->oformat->flags & AVFMT_RAWPICTURE) == 0 )
^~~~~~~~~~~~~~~~
AVFMT_NOFILE
解決策https://www.jianshu.com/p/da49a712410f
#define AV_CODEC_FLAG_GLOBAL_HEADER (1 << 22)
#define CODEC_FLAG_GLOBAL_HEADER AV_CODEC_FLAG_GLOBAL_HEADER
#define AVFMT_RAWPICTURE 0x0020
OpenCVのアンインストール
cd /home/opencv/build
make uninstall//
sudo rm -r build// build
//
sudo rm -r /usr/local/include/opencv2 /usr/local/include/opencv /usr/include/opencv /usr/include/opencv2 /usr/local/share/opencv /usr/local/share/OpenCV /usr/share/opencv /usr/share/OpenCV /usr/local/bin/opencv* /usr/local/lib/libopencv*
cd /home/hy chmod a+x opencv// opencv
rm -r opencv// , ,
chomd a+x
PCL
Ubuntu16.04以降pclをインストールすると直接apt-getできます
sudo apt-get install libpcl-dev pcl-tools
Pangolin
gitのソースコード、コンパイルインストールです
sudo apt-get install libglew-dev libboost-dev libboost-thread-dev libboost-filesystem-dev
git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake -DCPP11_NO_BOOST= 1 ..
make -j12
sudo make install
第6回-Ceres,g 2 o,DboW 3
CeresはGoogleのログとテストツールに依存しています
#18.04 libcxsparse3.1.2 libcxsparse3
sudo apt-get install liblapack-dev libsuitesparse-dev libgflags-dev libgoogle-glog-dev libgtest-dev libcxsparse3
git clone https://github.com/ceres-solver/ceres-solver.git
cd ceres-solver
mkdir build
cd build
cmake ..
make -j12
sudo make install
g2o
g 2 oのインストールにはEigenサポートが必要です
ubuntu 18で04 g 2 oのインストールと14.04でのインストールの主な違いはqtで、18.04はqt 5をデフォルトでインストールし、libqglviewer-devはlibqglviewer-headersに変更します
sudo apt-get install libsuitesparse-dev qtdeclarative5-dev qt5-qmake libqglviewer-headers
git clone https://github.com/RainerKuemmerle/g2o
cd g2o
mkdir build
cd build
cmake ..
make -j12
sudo make install
コンパイルが完了したらインストールする必要があります(そうしないとエラーが発生します)
sudo apt-get install libsuitesparse-dev
DBoW3
DBoW2 OpenCV
git clone https://github.com/rmsalinas/DBow3.git
cd DBow3
mkdir build
cd build
cmake ..
make -j12
sudo make install
第13話-octomap
sudo apt-get install doxygen-latex doxygen-doc doxygen-gui graphviz libclang1-6.0
cd octomap
mkdir build
cd build
cmake ..
make -j12
sudo make install
インストール完了後
sudo apt-get install libqglviewer-headers