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
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。