除了使用深度攝影機以外,各家的深度攝影機公司也會推出其產品的SDK (Software Development Kit)供我們使用者作開發使用。這次要介紹的是Intel的RealSense SDK。安裝可以看這一篇[Intel RealSense 3D攝影機]_一開始安裝到試玩小遊戲
本篇目標是教大家如何使用RealSense的SDK。所以在使用SDK之前必須要成功安裝好RealSense camera。我們分別介紹兩種SDK裡的範例程式(1)利用C++來取得攝影機的深度影像(2)利用C#來辨識手的骨架。
作者/攝影 | 黃品叡 |
時間 | 約1小時 |
成本 |
|
難度 | * * |
材料表 |
按照上一篇的介紹,應該成功的安裝驅動與確認能夠使用RealSense Camera了,那這次要介紹要如何更進一步使用Intel RealSense SDK來跑一些範例程式和看看程式是怎麼寫的。
1.利用C++來取得攝影機的深度影像
▼ 在Intel RealSense SDK中的資料夾打開Sample Browser ▼
2.接著你就會看到很多可以試試看的範例(如下圖)
▼接著你就會看到很多可以試試看的範例(如下圖)▼
(左側可以選擇語言)
(上面可以選擇相機的種類)
那我們馬上測試一下其中一個程式:
- 選擇左邊的C++
- 選擇上面的Common Samples
- 找到第一個Camera Viewer(C++)
- 按下後面的Run
執行後會看到以下畫面分別為占滿整個螢幕的彩色畫面。
(我的螢幕解析度是1920×1080,所以就會剛剛好是全螢幕)
OK到這裡可能會發現一個現象,就是能照到的深度很短,下圖是我的實際安裝的環境,左邊攝影機到右邊的底端也才90cm,而攝影機的規格表卻說有120cm的距離!?
然後深度圖看起來怎麼那麼爛,這部分就要說明一下了,我本身用過其他深度攝影機,深度攝影機其實會有很多因素影響效果,例如物品材質、打入角度,這個跟深度攝影機本身的原理有關係,有興趣就自己去查查瞜,要說這個效果如何? 這個效果當然不好,但是卻足夠了,效果跟口袋深度當然是有關係的嘛。
再來,這個也要看你要做什麼,我們只是要「大概的輪廓」就可以了做出手的辨識與人臉的辨識,所以也不需要多好的畫質,也不需要多遠的距離。
(2)利用C#來辨識手的骨架。
我們試完第一個範例後馬上來玩玩下一個吧!
- 左邊換成C#
- 上面選擇F2000 Samples
- 找到Hand Viwer(C#)
- 按下後面的Run
選擇Full Hand Tracking後按下Start。
開始後就伸出你的手就會看到手的骨架拉!
成功了解如何看範例之後就開始來看看程式的部分吧!
那我們回到C++的Camera Viewer範例,只是這次是按下Sources。
這時就會看到這個
那用Visual Studio打開其中的 .sln檔 就可以看到程式拉
可能有人會困惑什麼Visual Studio? (畢竟這是大眾向的教學,所以還是得顧慮一下剛接觸的新手摟)
這部分我會有另一篇的教學,其中會有Visual Studio的基本介紹如何開啟C++專案或是C#專案……等的介紹。
這裡就放上一張進入成功看到原始碼的圖做為結束
至於程式部分在這裡就先不解說拉~
因為這可能要有點程式基礎與興趣的支持才能夠繼續下去的事情啊~
相關文章: