3D Sensor Advent Calendar 2019の7日目の記事です。
Azure Kinect Body Tracking SDK v0.9.5がリリースされました。
この記事ではAzure Kinect Body Tracking SDK v0.9.5の変更を紹介します。
Download
以下のURLからダウロードすることができます。
- msi https://www.microsoft.com/en-us/download/details.aspx?id=100636
- nuget https://www.nuget.org/packages/Microsoft.Azure.Kinect.BodyTracking/0.9.5
ChangeLog
CPUモードのパフォーマンス改善
Azure Kinect Body Tracking SDKはv0.9.4からCPUのみで動作するモードをサポートしました。
v0.9.5ではパフォーマンスが少し改善しています。
e.g. Intel Core-i9 9900K
Version | FPS |
---|---|
v0.9.4 | about 1.5fps |
v0.9.5 | about 3.8fps |
CPUモードのAPI変更
k4abt_tracker_configuration_t
のcpu_mode
がprocessing_mode
変更されています。
これに伴い、k4abt_tracker_processing_mode_t
列挙体が追加されました。
将来的にGPU以外の推論アクセラレーターを選択できるようになるかもしれないですね。
k4abt_tracker_configuration_t tracker_configuration = K4ABT_TRACKER_CONFIG_DEFAULT;
tracker_configuration.processing_mode = k4abt_tracker_processing_mode_t::K4ABT_TRACKER_PROCESSING_MODE_GPU;
推論を実行するGPUデバイスの選択
Azure Kinect Body Tracking SDKはこれまでデフォルトのGPUデバイスでのみ推論を実行可能でした。
v0.9.5では推論を実行するGPUデバイスを選択することができるようになりました。
これにより、Thunderbolt3など外部接続のGPUを利用することができます。
これに伴い、k4abt_tracker_configuration_t::gpu_device_id
が追加されています。
k4abt_tracker_configuration_t tracker_configuration = K4ABT_TRACKER_CONFIG_DEFAULT;
tracker_configuration.gpu_device_id = 0;
複数台のAzure Kinectをサポート
Azure Kinect Body Tracking SDKはv0.9.4までトラッカー(k4abt_tracker_t
、k4abt::tracker
)を1つしか作成できませんでした。
そのため、Azure Kinectを複数台接続しても1台のみでしか動作させることができませんでした。
v0.9.5ではトラッカーを複数作成することができ、各Azure Kinectから取得したデータで人物姿勢推定をすることができます。
軽微なAPIの変更
v0.9.5では以下の変更がありました。
-
k4abt_frame_get_num_bodies()
の戻り値がsize_t
からuint32_t
に変更されました。
これに伴い、各APIの引数の型が変更されています。 -
k4abt_joint_id_t
のK4ABT_JOINT_SPINE_NAVAL
がK4ABT_JOINT_SPINE_NAVEL
に修正されました。(Fix Typo)
C#ラッパーの追加
v0.9.5ではAzure Kinect Body Tracking SDKのC#ラッパー(Microsoft.Azure.Kinect.BodyTracking.dll)が追加されました。
ただし、現在はNuGetパッケージにのみ含まれるようです。(ミスっぽい?
まとめ
Azure Kinect Body Tracking SDK v0.9.5の変更をまとめました。
明日12/8(日)はHoloMonさんで「BlenderとAzureKinectを組み合わせて何かする」です。お楽しみに!