1. 程式人生 > >Ubuntu16.04安裝librealsense以及pyrealsense

Ubuntu16.04安裝librealsense以及pyrealsense

系統:Ubuntu16.04       核心:4.10.0-28-generic      python版本:python2

這片文章主要介紹一下怎麼安裝RealSense的SDK,以及python的相容版本pyrealsense,如果有誰也要安裝librealsense,又恰好看到了這片文章,建議先看完,再輸入命令,因為本文的安裝步驟有的時候是錯的,也是作為新手的我踩過的坑,同時作為對工作中遇到的問題的一個記錄,當然這些問題我也會給出解決方法,以及錯誤產生的原因。

先前使用R200的時候,按照github上的教程,一步一步完成了安裝,不過後來改用了SR300,所以原來安裝的librealsense就不管用了,github上的解釋是這樣的:


---正確安裝步驟---

所以我需要根據github上的SDK2.0安裝教程進行了安裝

1. 將英特爾伺服器新增到儲存庫列表中:

echo 'deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial main' | sudo tee /etc/apt/sources.list.d/realsense-public.list

2. 註冊伺服器的公鑰:

sudo apt-key adv --keyserver keys.gnupg.net --recv-key 6F3EFCDE

3. 重新整理可用的儲存庫和軟體包列表:

sudo apt-get update

4. 為了執行realsense-viewer演示安裝:

sudo apt-get install librealsense2-dkms

sudo apt-get install librealsense2-utils

重新連線英特爾實感深度攝像頭並執行:

realsense-viewer

執行結果如下,說明成功部署了udev以及視訊裝置的核心驅動:


---錯誤步驟及解決---

原本我以為展現了以上的效果,看到了realsense捕獲到的深度影象,就說明我已經安裝了librealsens2 ,實在是too young too simple。

按著我已經成功安裝librealsense的錯覺,接下來就是安裝pyrealsense的時候了,於是找到了/wrappers/python下的安裝教程,一步一步進行安裝

1. 確保apt-get是最新的

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

2. 通過apt-get安裝Python及其開發檔案(Python 2和Python 3都可以),我選的是python2

sudo apt-get install python python-dev

3. 進入librealsense/wrappers/python目錄下,執行以下程式碼

mkdir build

cd build

cmake ../ -DBUILD_PYTHON_BINDINGS=bool:true

當執行cmake的時候發生#error No UVC backend selected.的錯誤:

google後,找到這樣的一個回答,如下,說是因為沒有build主要的Cmakelist.txt ,換句話說,就是我的librealsense沒有成功安裝。

回過頭一想,確實,先前只是通過sudo apt命令下載安裝了些包,根本沒有build,make install這些操作。然後我又回過頭去官網上找,找到這樣一句話:

說,要從源構建專案,要去here一步步來,所以又回到了原點,安裝librealsense。

1. 進入官網,讓你下載git ,cmake,這些我都下好了,所以就不介紹了

2. 然後說讓我升級核心,這裡你可以輸入

unmane -r

看一下你的核心版本,我的是4.10.0-28-generic,只要>=4.4.0就沒有問題

3. 然後又讓你安裝Video4Linux後端,這個其實就是視訊裝置的核心驅動,剛開始的時候,下載了一些東西,輸入:

realsense-viewer

如果能成功開啟SR300深度攝像頭,那說明你的核心驅動是沒毛病的。

所以跳過一大堆操作,直接進行Building librealsense2 SDK

4. 進入librealsense的根目錄,開始build

mkdir build

cd build

cmake ../ -DBUILD_EXAMPLES=true

當執行cmake的時候,發生following variables NOTFOUND的錯誤

有問題怎麼辦?百度靠不住,找Google,找啊找,找到這樣一個回答,如下:

需要我安裝GLFW3,這個時候我想起來,當初安裝librealsense1.0的時候,有這個步驟 ,我原本以為安裝SDK2.0和安裝SDK1.0是不一樣的,結果我錯了,安裝步驟其實都是一樣的,只不過官網寫得不清不楚的,就照著官網一步步做了,所以導致了那麼多問題。


---正確安裝步驟---

找到librealsense1.0的安裝教程,一步步來

通過git下載專案檔案,或者下載ZIP包,解壓到本地

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

1. 更新apt-get

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

2. 通過apt-get安裝libusb-1.0和pkg-config

sudo apt-get install libusb-1.0-0-dev pkg-config

3. Ubuntu16.04的可以通過以下程式碼安裝GLFW3

sudo apt-get install libglfw3-dev

4. 進入librealsense根目錄

make build

cd build

cmake .. -DBUILD_EXAMPLES:BOOL=true

make -j4

sudo make install

5. 一路暢通,install完成後,進入librealsense/build/examples/capture,輸入

rs-capture

出現以下畫面,說明librealsense安裝成功


---錯誤糾正---

找到pyrealsense2的安裝教程,一步步來。

當我執行到cmake的時候,它又報了和上面一樣的問題,#error No UVC backend selected.

這我就很無奈了,試了很多方法,也都不管用,最終都沒有把pyrealsense2裝好。後來想想pyrealsense2沒法裝,那我就試試能不能裝pyrealsense1,當我想裝的時候,看到這句話,哦~原來pyrealsense只支援SDK 1.0不支援SDK 2.0。

最後也沒管官網上說的兼不相容SR300的問題,試了再說,所以又把librealsense2.0刪了以後,重灌了librealsense1.12.1,安裝教程在這,先前也有提過。後續嘗試了確實可行,可以看下一篇文章,傳送門



作者:_ALi_
連結:https://www.jianshu.com/p/51fca21bf6f4
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。