2016年4月15日金曜日

librealsenseをLinuxMintにインストール

2017/04/に追記
Linux Mint 17の記事です.
Linux Mint 18にには適用できません.

realsenseをintelから購入しました.

そしたら,10日後に我が家に到着しました.
ちなみに,お届け先の住所のところで,県名をローマ字ではなく漢字で
登録してしまったところ,実際に届いた荷物の伝票のお届け先住所のところには
県名が書かれていませんでした.

intelの人,ごめんなさい.

realsense はr200 sr300と種類があり,
ここから購入できます.

 さて,Linuxでrealsense r200を 使うためには,librealsenseという
オープンソースのライブラリが必要なため,今回はそれをインストールします.

さらに,ちなみに,pcl1.8(point cloud library)のAPIの中にrealsenseGrubberという
クラスを見つけた私は,嬉々として,かつ頑張ってpcl1.8をインストールしましたが
relsenseGrubberを使うためにはwindowsでしか動かないrealsenseSDKが
必要でした.オーマイガッ!

さて,このlibrealsenseですが.4月15日現在,公式の説明通りではうまく行かないことがわかったのでここに訂正版を載せておきます.

●ソースのダウンロード

$ sudo apt-get update && sudo apt-get upgrade

$ cd  ~/

$ mkdir build

$ cd build

$ git clone https://github.com/IntelRealSense/librealsense.git

●必要なものをインストール

$ sudo apt-get install libusb-1.0-0-dev

●多少の設定変更




上の写真のようにアップデートマネージャの

ソースコードのチェックボックスを入れるの!

これは,公式の説明にはない.だた,やっとかないと失敗する.


●引き続きインストール


$ scripts/install_glfw3.sh

●カーネルにパッチ当てたり,usbのルールを変更したり


ここからは,必ず,realsenseがあなたのPCに突き刺さっていないことを
確認してから行ってくださいね

$ sudo cp config/99-realsense-libusb.rules /etc/udev/rules.d/

$ sudo udevadm control --reload-rules && udevadm trigger

ここからlinuxカーネルのバージョンによって操作が異なるが
mintは3.19.0-32なので,迷う必要がない,ああ,mintで良かったね!よね?!

$ ./scripts/patch-uvcvideo-ubuntu-mainline.sh

さて,ここから要注意,公式の説明通りではダメなとこ第二弾.
スクリプトの中身を読めばわかることだけど,読まないと引っかかる.

$ cd scripts

$ ./scripts/install-r200-udev-fix.sh

$ sudo modprobe uvcvideo

$ sudo dmesg | tail -n 50

ここでエラーが出ないようだったらいいかもしれないと
公式の説明には書いてあったが,そんなこたぁー無い.

●コン・パイル 

さあ,あとは,今までインストールしたものを使ってコンパイルするだけ.
ゴールは目前!

あと,ここから,Qtをインストールするけど,Qtの公式サイト
からインストールするほうがいいかもしれない.
私は公式からインストールしました.
信じるか信じないかは,アナタ次第.へっへっへ...

$ sudo apt-get install qtcreator

$ sudo scripts/install_qt.sh

libralsense.qtcreatorというディレクトリのなかのall.proを
ダブルクリックして,

ビルド(タブ) --> すべてクリーン
ビルド(タブ) --> qmakeの実行
ビルド(左下) --> クリック

ものすごい警告がでるが,それは私の日頃の行いに
よるものなのかは不明.

あとは,
libralsense/bin/debagのなかにあるプログラムを
実行して,カラー画像,左右の赤外線画像,depth画像が
取れれば成功.

お疲れ様でした.



 

2016年4月9日土曜日

YouCompleteMeのNeocompleteを利用してアップデートした際の再コンパイル方法

唐突だが,私はLinux Mintを使用している.
そしてc++erでもあり,vimerでもある.

したがってc++をvimで書いている.
vimはその手軽さによってvisual studioとかいうIDEを立ち上げるより
コーディングへの敷居を遥かにさげてくれる.

もはや下げすぎて,敷居が溝になったレベルである.
今度は溝に気をつけないと足を取られて大惨事である.

一本下駄とかハイヒール履いてるようなヒトは要注意である.

さて,vimで補完する際に,私は,YouCompleteMeというプラグインを
利用しているが,このプラグイン,アップデートするたびに再コンパイルが
必要なのである.

いい機会なので,再コンパイルの手順を書いておきます.




1.vimrc にて

:neobundleupdate

を実行.


2.~/.vim/bundle/YouCompleteMe/にて

./install.py --clang-completer
 
を実行.
 
 
あと,半自動でCMakeList.txtからycm_extra_conf.pycを作成してくれる
YCM_Generaterはいつもお世話になってます.