如何在unity里使用opencv?
畢業研究決定用unity作為平台,使用oculus rift作為輸出,webcam+opencv識別手勢操作。
目標是製作出浮空的GUI,以及用手作為控制。感覺最近的hololens就是目標產品XD最開始使用了Kinect for windows v1識別手勢,發現kinect放在頭上面,攝像頭到手的距離太短,識別率不高,於是想改用webcam+opencv,現階段就是想如何在unity里使用opencv。
如果有更好的方法請告訴我。よろしくお願いします。
最簡單的方法是用socket通信……
你在外面寫個exe,然後opencv搞進去,通過網路消息傳遞進unity
我有個學長的作業就這麼幹了 @王宇翔 = = Virtual Reality Ball Game如果你追求美感,可以打包出dll然後再弄Unity and DLLs: C# (managed) and C++ (unmanaged)同題主 , 畢業設計 準備做的是 "遮擋調節下的人臉識別" 也準備使用unity + opencv實現
目前在研究 opencv for unity 插件
【人臉識別】-插件目前已經可以在unity/安卓上跑了 如果大家有別的思路還望多交流opencvsharp 強烈推薦
地址 shimat/opencvsharp · GitHub
下載openCVsharp的dll 拖到unity 的Plugins文件夾里。然後只要正常安裝了opencv 配置了環境變數就能用了,版本支持到2.4.10。github的wiki里還有tutorial最近在做u3d+kinect bodyindex的處理用到了opencvsharp 非常的方便。kinect識別的話放在頭上肯定識別率不高的,盡量kinect還是放在固定位置來識別,識別距離最少要大於半米。kinect v2的性能比v1提升很多識別率也高很多,可以試試v2 。
首先官方商店裡有opencv for unity,其次識別手勢用leapmotion或者二代kinect。
我又看到了你要把攝像頭綁腦袋上…那你最好還是用leapmotion,單目攝像頭是個坑,我們實驗室有人在做單目攝像頭的動作捕捉,還得先剔除背景,這就是說你腦袋不能動。
如果你不想自虐,leapmotion是最好的選擇,二手400元左右,而且api很簡潔,好上手。要是老闆給錢的話要不來一發LeapMotion吧...官方提供支持Unity的package的...
題主後來設計開發完成了吧,可以和大家分享下嗎?
你可以看看Unity使用OpenCvSharp人臉識別僅供玩耍 -_-||
AForge.NET :: Computer Vision, Artificial Intelligence, Robotics
靜態版本,打包成dll,按Unity插件導入。
試試Kinect one,要是它識別不出攝像頭希望也不大。OpenCV可以用在clr類庫,添加到解決方案里,需要用它的C#項目引用里添加下就可以了。clr類庫項目里除了C#項目要用到的類之外都可以用原生C++類,用OpenCV很方便。
我的畢業設計是用Unity做一個類似於ps的軟體,我用的是emgucv。
正在做Kinect v2研究的表示你可以直接用V2 V2能夠捕捉到手指節點 你再去做手勢定義就方便很多了。
推薦閱讀:
※關於MFC是否out了的問題?
※用OpenCV人臉檢測,出現這個錯誤,大神賜教?
※在 MFC 框架中,有什麼方法能直接將 OpenCV 2.0 庫中 Mat 格式的圖片傳遞到 Picture Control(圖片控制項)顯示?
※關於opencv中對齊圖片的問題?
※做增強現實AR,高通sdk與opencv有什麼區別。各有什麼利弊?
TAG:Unity遊戲引擎 | OpenCV | OculusRift | HTCVive |