嘿!您似乎在 United States,您想使用我们的 English 网站吗?
Switch to English site
Skip to main content

開箱Intel RealSense D455深度攝影機,在Jetson Nano上安裝、執行Python範例

Intel RealSense

D400 深度攝影機:D415、D435、D435i、D455,各種不同規格的深度攝影機讓你可以依照個人需求而購買。

1_D4002_5b25ded0416a723b91998940b2d3ecb18a294072.png

(圖片源自Intel RealSense)

追蹤攝影機:T265,運行V-SLAM演算法,在沒有GPS的情況下可以提供精確的空間中的物體追蹤、掌握空間及地形特徵。適用於有追蹤精度要求或是攝影機會大幅度移動的專案。

2_T265_dbd66d2e892c1d243dd40396a59f03b0796d850f.png.

$ python3
>> import pyrealsense2 as rs

(圖片源自Intel T265)

光達深度攝影機:L515,Intel RealSense L515 是世界上最小的高解析度光達深度攝影機,是 Intel 光學雷達深度家族的第一款產品,適用於在室內取得高解析度和高精度深度資料。Intel 的宣傳頁面上提供的 L515 使用案例為物流、機器人、以及3D掃描。

3_L515_2bc9c38f5119845ce538ea448ea0df0d25cc22d2.png

(圖片源自Intel L515)

D455開箱介紹

這次的 D455 相比D435升級了許多:

  1. 4公尺內誤差低於2%,比D435的2公尺低於2%的效果更佳!
  2. RGB感測器從原本的D435的捲簾式快門升級成全局式快門,並且搭配一個深度FOV,所以速度更快,色彩跟深度的資訊可以結合得更好。
  3. 結合了IMU,可以提升機器人對於環境的熟悉度。
  4. 除此之外還提供了更長感測距離,機器人將能更快的做出判斷!
  5. 可結合多個D455,捕捉更大的範圍。

更多 Intel RealSense的比較細節可以參考下圖

4_RealSense_Family_aef199d34e9f45f82584a62f502454c8be0f084b.png

(圖片來源 Intel Realsense)

5_detail_d455_a0d6a152efe423d27aece159758d1f4cc64e702d.png

( 圖片來源Intel Realsnse )

而現在校正也更加快速了:

https://www.intelrealsense.com/depth-camera-d455/?fbclid=IwAR2x59pnNd2lODXihsusIse_iXds5tuTXxi4dI1kqVfqYH0VIb6DPov368s

接下來就是實際開箱啦!這次D455 檢附的東西一樣有說明書、realsence本體、三腳腳架以及USB-A to Type-C的傳輸線。

7_1_%E5%A4%96%E6%AE%BC1_b53b5c759dc2f1aab681e71e9d13230f0a53c545.jpg 7_2_%E8%AA%AA%E6%98%8E%E6%9B%B8_f5cdd8c13b7708cf8ac77923cd16357fa246e907.jpg 7_3_D455_d9380d651eba258c9bb02bb592549cb7c781fd1b.jpg 7_4_%E5%85%A7%E5%AE%B9_b4de05cc363ac211bd02458bc8ef38aebd1afa7b.jpg

封面設計

說明書

D455

配件

再來是D455實體細部照片,這次的設計由於要塞入強大的感測元件,整體設計較D435寬!值得一提的是相比D435系列需要拆卸Type-C蓋子再接線,D455直接做在下方,使用上方便許多。

8_1_da5a13554620e103791ab986521ff84cb1d850aa.jpg 8_2_ff424d5ed1969a65c18b1878161f79d134b6c786.jpg 8_3_574e046f0f27dda4912f079df8f952e54962bf5c.jpg 8_41_8c6164de9c5760a509194fa1494306616e3f1097.jpg

正面大眼

全身修長照

美背以及

上方的散熱孔

底部有腳架鎖孔、Type-C接口、散熱孔

D455 與 D435 外觀比較,D455幾乎是多了一個鏡頭的寬度

9_1_93db469711ee8397c46ee5ee85ae93c474162164.jpg 9_2_1f20989545c6bd1474b032b040441dcd4f6bed3c.jpg 9_3_18b388b9f05326e96e4bfe7b10c5bc861437622d.jpg

正面

疊住側面

疊住稍微再正面一點

D455 與 D435 鏡頭位置比較 (圖片來源 : Intel網站)

10_d455_e8ce2af7340e25b37b5c8cecdeaf14d948c62cae.jpg 10_d4351_e24230917e5936abf95ef9e3b66b61c6d8d49755.jpg

D455

D435

Jetson Nano 使用 RealSense Viewer

首先安裝相關軟體,先註冊服務器的公用金鑰,每組D455公用金鑰相同。

$ sudo apt-key adv --keyserver keys.gnupg.net --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE

將其添加到存儲庫列表:

Ubuntu 16 LTS:

$ sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial main" -u

Ubuntu 18 LTS:

$ sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo bionic main" -u

安裝相關資源:

$ sudo apt-get install librealsense2-dkms
$ sudo apt-get install librealsense2-utils

安裝RealSense開發、偵測套件:

$ sudo apt-get install librealsense2-dev
$ sudo apt-get install librealsense2-dbg

開啟RealSense-Viewer確認是否能抓到D455:

$ realsense-viewer

11_viewer_e195fa7905428e313644b9a366b5092463d7717b.png

RealSense Viewer

注意接下來介紹的畫面是Windows的視窗,功能都一樣只差在沒有預設人臉及年齡辨識!先將所有的模組都打開來看,分別是深度模組 (Stereo Module)、RGB攝影機 (RGB Camera)、動作感測模組 (Motion Module),右上角有3D、 2D兩種模式可以選擇,這邊我轉換成2D的模式,最後可以看到總共有4個畫面出來,左上是深度攝影機的資訊、左下是RGB、右上右下分別是陀螺儀及加速度計。

1249_6ae90a7443357ef529d5fe4f910248e2c74ff87b.jpg

Viewer的Windows版本已經有內建人臉辨識以及年齡偵測,蠻準也蠻好玩的,經實測側臉年齡都比較高,順便讓大家看看同事們認真工作的樣子:

13_11_302e573566a57661ca538123dd29857e4a363595.jpg 13_21_1eaabe6523f1c0f8f8209924e0b4dc5248eabe11.jpg

在2D模式下,右邊的刻度是深度,越大則越遠,單位是 meters (m);而滑鼠指到的位置會在左下角顯示深度資訊。

接著切換到3D模式,我稍微測了一下最短距離,大概是0.3XM左右,其實比表定的0.4M還小一些;最遠距離的話就如規格所示,大約4M。

15_1_caaa67ae0c28c765f85284c47e351d31280e4b26.jpg 15_2_eba5cc32c0291641b54567445f08843328f41625.jpg

可辨識最短距離 (大約)

可辨識最長距離(大約)

功能的部分,上方這些基本款的話,只有Shadow、Measure、Export可以玩

1641_7fa6a57bbe56fd755b6182feb9225092bfb20faf.jpg

其中Shading有三種模式可以更換,可以找到自己喜歡、適合的風格,第二、三的風格差別在於有光線紋路 (?)

15_11_caaa67ae0c28c765f85284c47e351d31280e4b26.jpg 17_21_13505011e6abe6c5e813634c727185480470a819.png 17_3_90711d1d248233d7ad009163dadc4423cfc3f162.png

Measure的部分則是測量距離,蠻有趣的,準度的話我實際測試如下,可以參考一下,準確度確實蠻高的。

18_11_bd494e22c3a29f54c39c1bf434cde07feadf0b9a.png 18_2_4a25c469221c86137022307d2f18faa332f12df3.jpg

測量結果為 16.8

測量結果為 17

可以在左側開關開啟RGB的感測器,讓深度加上色彩

19_1_bca9ff106814f9d17eda0663a822f986aa4d7978.png 19_2_980e279c8cf8de2f7eab15badea7dcfb7e22540b.png

除此之外,還可以調整模式,可以注意手部的部分會很明顯感受到差異。

20_1_3de57652b99d8520e01c305c3d2c852d905b9216.png 20_2_50484351212717ce275250fd8acf176906a03ffa.png 20_3_d9d13943bf4534bb2e032f0ad607d4209c4c8d4d.png

custom

high acc

high density

Python Example ( pyrealsense2 )

接著利用Jetson Nano 測試一下python的程式,首先要先安裝 pyrealsense2,但是在Nano中沒辦法直接在PyPI中安裝 (因為核心是Arrch) 所以要去找源碼來建構才行,第一步先將librealsense的github下載下來:

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

確認Ubuntu 的apt-get版本式最新的:

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

安裝相依套件:

$ sudo apt-get install python3 python3-dev

透過CMake建置,並將其針對Python3的環境進行編譯:

$ mkdir build
$ cd build
$ cmake ../ -DBUILD_PYTHON_BINDINGS:bool=true -DPYTHON_EXECUTABLE=/usr/bin/python3.6
$ make -j5
$ sudo make install

更新您的PYTHONPATH環境變量:

$ export PYTHONPATH=$PYTHONPATH:/usr/local/lib

接著可以導入函式庫,基本上沒報錯就沒問題了:

$ python3
>> import pyrealsense2 as rs

如果你導入函式庫沒問題但是執行程式遇到問題 no attribute 'pipeline’ 只需將wrappers/python/pyrealsense2/__init__.py 放到pyrealsense2的安裝路徑底下即可:

$ python3
>> import pyrealsense2 as rs
>> rs.__path__
[‘/usr/lib/python3/dist-packages/pyrealsense2’]

取得到 pyrealsense2 的位置之後再將 __init__.py 複製過去

$ sudo cp __init__.py /usr/lib/python3/dist-packages/pyrealsense2

21_pipline_crop_998d7b8ef387d85199e04e1e897dca258fac6b6c.png

這樣就完成 pyrealsense2 的套件安裝了,我們嘗試幾個範例程式看看:

1、python-tutorial-1-depth.py
這是最基礎的程式,可以從這裡了解怎麼開啟影像串流,除此之外Intel還很特別的設計了ASCII藝術形式在終端機種顯示圖像,演算法還蠻簡單的可以去了解看看。

22_tutorial_9b6e924b06893ddffb593c0d93a990029344922d.png

2、opencv_pointcloud_viewer.py
透過OpenCV來顯示有兩個範例,差異不大!這邊提供點雲的範例給大家,近兩年也越來越多人在點雲方面去做深度學習的應用跟訓練。

23_opencv_pointcloud_bbd7ba2c6dcfad116ce9cd15d623833f42b5c728.png

3、depth_auto_calibration_example.py

這是自動去背的案例,相當的有趣。

24_align_depth2color_2ee50a75256714459bbf4a69e7b08126aac04e29.png

結語

Intel 的 RealSense系列非常好用,在上需要測距離又需要攝影機的專案上,RealSense可以直接滿足這兩個模式!

CAVEDU Education is devoted into robotics education and maker movement since 2008, and is intensively active in teaching fundamental knowledge and skills. We had published many books for readers in all ages, topics including Deep Learning, edge computing, App Inventor, IoT and robotics. Please check CAVEDU's website for more information: http://www.cavedu.com, http://www.appinventor.tw