Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Azure Kinect+Unityで軽率にBody Trackingする
Search
にー兄さん
May 09, 2020
Programming
0
2.7k
Azure Kinect+Unityで軽率にBody Trackingする
第4回バーチャル学生LTにて発表した資料
にー兄さん
May 09, 2020
Tweet
Share
More Decks by にー兄さん
See All by にー兄さん
エンジニアが軽率に趣味から始める、OSS貢献を軸とした個人活動 / oss-contribution-as-a-hoby-project
drumath2237
0
30
Babylon.js 8.0のアプデ情報を 軽率にキャッチアップ / catch-up-babylonjs-8
drumath2237
0
130
フォークギター with VFXの 制作を軽率に振り返ろう! / look back fork guitar with vfx
drumath2237
0
27
軽率に始まった Babylon.js勉強会運営の 1年間をふりかえって / look back babylonjs japan activity
drumath2237
0
50
利己的利他、 あるいは軽率2.0に備えよ。 / prepare-for-keisotsu-2.0
drumath2237
0
40
軽率にAndroidXRのJetpack SceneCoreを使って3Dモデルを表示してみる / androidxr-scenecore-3dmodels
drumath2237
0
110
あなたの知らないWebXR Device APIの話を軽率に / about-webxr-device-api-you-dont-know
drumath2237
0
29
UnJSを使って軽率にCLIを作ってみたらめちゃくちゃ便利だった / create CLI with UnJS
drumath2237
4
1.6k
create-babylon-appを軽率にアプデしたい / update create babylon app
drumath2237
1
1.8k
Other Decks in Programming
See All in Programming
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
380
PHPで始める振る舞い駆動開発(Behaviour-Driven Development)
ohmori_yusuke
2
180
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
190
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
370
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
210
Gleamという選択肢
comamoca
6
760
Result型で“失敗”を型にするPHPコードの書き方
kajitack
4
310
Elixir で IoT 開発、 Nerves なら簡単にできる!?
pojiro
1
150
XP, Testing and ninja testing
m_seki
3
180
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
100
Google Agent Development Kit でLINE Botを作ってみた
ymd65536
2
160
Deep Dive into ~/.claude/projects
hiragram
8
1.4k
Featured
See All Featured
Facilitating Awesome Meetings
lara
54
6.4k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
How GitHub (no longer) Works
holman
314
140k
Embracing the Ebb and Flow
colly
86
4.7k
Faster Mobile Websites
deanohume
307
31k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Making Projects Easy
brettharned
116
6.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Transcript
Azure Kinect + Unityで 軽率にBody Trackingする 第4回バーチャル学生LT にー兄さん(@ninisan_drumath)
にー兄さん@ninisan_drumath 万年外出自粛系大学生 筑波大学情報科学類3年(coins18) リアルタイムCG、Humanoid制御、AR/VRとか好き 最近はもっぱらUnity開発がメイン バーチャル学生LT登壇は初めて(学生LTは4回目くらい?) 久しぶりの5分LTなので自信がない
スライド公開します SNSへの投稿(?)も問題ないです!
agenda Azure Kinect #とは UnityでAzureKinect BodyTracking 触ってみた感想
Azure Kinect #とは
Kinectとは? ❖ センサーデバイスのこと ❖ 天下のMicrosoft謹製 ❖ RGB画像、深度、人体検出などができる
Kinectとバージョン v1, v2 →Xbox用に作られ、後にWindowsで汎用的に開 発できるようになるが、生産終了した v3 →「Hololens」という名称で発売 現在はHololens2が出ている v4 →「Azure
Kinect」という名称で発売 3月には日本での発売も 本日は☝のAzure Kinectについて話します
Azure Kinectについてもう少し深く 従来のKinectよりも軽量かつ小型化された Azureと接続→高度な ✝AI✝ による認識性能向 上 C++とC#のSDKが配布されている 価格は47,025円(5/8現在) もちろんBody
Trackingも使える だがUnity用の公式パッケージがない
UnityでAzureKinect BodyTracking
そもそもUnityで使えるのか...? (前述のとおり)Unityの公式BodyTrakcingSDKなんてものはない しかし情報を漁ると色々出てくる →たぶんできそう(本日の軽率ポイント)
検証環境 Unity:2018.4.x Azure Kinect SDK:1.4.0 Azure Kinect Body Tracking SDK:1.0.0
これらのセットアップが済んでいることを想定
試したリポジトリ curiosity-inc/azure-kinect-dk-unity →BodyTrackingSDKのバージョン違いなのか Unityがクラッシュしてしまった satoshi-maemoto/Azure-Kinect-Unity-Body-Tracker →ちゃんと動いた、がコードリーディングで挫折(クソザコ) またチャレンジしたいところ microsoft/Azure-Kinect-Samples →よくみたら公式サンプルあるやんけ →普通に動いたしコードも簡単なので採用
実行環境の構築 READMEに書いてある通りプロジェクトをVSで開き、 コンソールからnugetパッケージをインストする 注意1:ディレクトリ階層が深すぎるとインストールに失敗する 注意2:UnityパッケージのNuGetForUnityは使えない
実行環境の構築 あとはバッチファイルを実行(dllの移動など)をすれば実行できる!コロンビア!
プロジェクト概観 main.csをいじればviewerくらい 簡単に作れそう UnityEngineとSystem.Numerics にVector3が存在するので 相互変換が必要そう Bodyも複数名前空間に存在
実はビルドしたサンプルは正常終了しなくて... ビルドディレクトリにcublas_64.dllとcudart_64.dllを含め ると動作する だが終了時にクラッシュする バックグラウンドプロセスを処理できているように見える →実際はプロセスが終了する前にアプリが落ちる →Azure Kinectのコネクションが残る厄介なバグ →Unityエディタでは起こらないのでもっと厄介 ビルドしたアプリがクラッシュするDaiGo
触ってみた感想
v2と比べていいと思ったところ • コンパクトで見た目が可愛い(カラバリとかほしい)(諸説あり) • v2のようにトラッキングが外れたときにボーンが破綻しない • 手が体の前にあっても割と認識してくれる →精度向上は微妙、みたいな意見も聞いたことあるけど自分的には • 前後判定ができる→鼻や目の位置が取れる
• ボーンの種類が変わった→数も増えたしchestのボーンがある
要望 Unity用のBodyTrackingパッケージが欲しい レコードデータをアプリに流せる機能が欲しい →v2のときにはKinect Studioで実装されている マウントホルダー的なものが欲しい(すでにある?) →小さいのでディスプレイに着けても負担が軽そう
ご清聴ありがとうございました