IoT(Internet of Things:モノのインターネット)によって、人間とマシンをつなぐユーザーインターフェースが大きく変わりました。かつてのようなキーボードやマウスから液晶のタッチパネルへ、さらに人工知能(AI)の音声認識を利用して、音声コマンドで操作するデバイスが普及しています。たとえば、スマートフォン、スマートスピーカー、スマートディスプレイなどが挙げられます。
Microsoftは、ゲーム機「Xbox 360」の周辺機器として、ジェスチャーならびに音声認識のデバイス「Kinect」を提供してきました。もともとはゲームやエンターテイメント用に開発されたものでしたが、2011年にはWindows用の開発キット(以後SDK:Software Development Kit)を発表し、2017年にゲーム機用のKinectが生産終了後は、医療や障害者の支援、流通業界や製造業界の産業分野における人工知能によるシステム用のデバイスとして活用されています。
ゲームの周辺機器だった視覚と聴覚を使ったインターフェースのKinectを引き継ぎ、主に産業用システム構築のSDKと高度なAIセンサーをセットにしたものが「Azure Kinect DK」です。しかし残念ながら、購入できるのはアメリカと中国に限られています。日本では直接の購入はできません。
ここでは「Azure Kinect DK」の概要、SDKの概略を解説するとともに、産業分野で考えられる活用シーンを取り上げます。
Azure Kinect DKとは
Azure Kinect DKは、画像や音声で作動する先端システムを設計するためのSDKと、高度なAIセンサーの2つで構成されています。
開発キットの名称である「DK」からも分かるように、Azure Kinect DKは開発者および企業向けです。コンシューマー向けのXbox Kinectの代替製品ではありません。また、Kinect for Windowsとも異なります。最先端のセンサーをAzureの多様なサービスと組み合わせることにより、医療や製造業などビジネスのニーズに最適化されたソリューションを実現します。
ただし、Azure Kinect DKは、Azureを使って開発者がソリューションを構築できるように設計されていますが、Azure以外のクラウドでも、クラウドを利用していない場合でも使うことができます。
SDKとセンサーのデバイスに分けて解説します。
Azure Kinect DKのSDK
Azure Kinect DKのSDKは、以下のような複数のSDKで構成されています。
- Azure Kinect Sensor SDK
- Azure Kinect Body Tracking SDK(プレビュー)
- Speech SDK
- Azure Cognitive Vision Services
それぞれの概要は以下の通りです。
Azure Kinect Sensor SDK(Windows、Linux)
Azure Kinect DKのセンサーと構成されたハードウェアに、センサーからのアクセスとデータを提供します。オープンソースのSDKです。
対象物を立体としてとらえる深度カメラのアクセスと、パッシブIR(受動型赤外線)モードのほか、広視覚/狭視覚の深度の切り替えができます。RGBカメラの露出やホワイトバランスの制御、ジャイロスコープと加速度計によるモーションセンサーのアクセス、カメラ間の遅延を設定し同期化するDepth-RGBカメラストリーミング、外部デバイスの同期、画像解像度やタイムスタンプなどカメラフレームのメタデータへのアクセス、デバイスデータを調整する機能へのアクセスなどがあります。
ツールとしては以下が用意されています。
- ビュアーツール(データストリームの監視とモード設定)
- センサー記録ツール(Matroskaによるマルチメディアコンテナ形式)、再生リーダーAPI
- ファームウェア更新ツール
Azure Kinect Body Tracking SDK(プレビュー:Windows、Linux)
3Dで身体の動きを追跡するためのWindowsライブラリとランタイムが含まれます。
ボディトラッキング機能としては、FOV(Field of View:視野)の各部分と、解剖学的に正しい全身のスケルトンが含まれたボディセグメンテーションを提供します。各ボディ固有のアイデンティティによって、長期的に身体を追跡することが可能です。
ツールとしては、ビュアーツールが用意されています。
Speech SDK(Azure)
マイク入力とAzureクラウドベースの音声を認識します。音声読み上げ、音声翻訳、テキスト読み上げサービスが利用できます。ただし、Azure Kinect DKにはスピーカーが付属していません。
Azure Cognitive Vision Services(Azure)
RGBカメラからの入力に対応し、次のAzureが提供するAIを活用した「Cognitive Services」に対応します。
- Computer Vision
- Face
- Video Indexer
- Content Moderator
- Custom Vision
Azure Kinect DKのデバイス構成
Azure Kinect DKのサイズは、Kinect for Windows v2の半分以下であり、Microsoftの優れたAIセンサーを1台のデバイスに統合することを目的に設計されました。
Azure Kinect DKのセンシングデバイスは、被写体側から構成を解説すると、まず用途に合わせて広視覚/狭視覚のオプションを備えた1MP深度センサーがあります。次に、12 MPのRGBビデオカメラが配置され、深度ストリームで調整した追加のカラーストリームに対応します。
その奥にある本体上部の7マイクアレイで遠距離の音声を認識します。本体中央部には、加速度計とジャイロスコープがあり、センサーの向きと空間をトラッキングします。また、外部同期ピンで複数のデバイスからのストリームを同期できます。Azure Kinect DKにはオンボードコンピューターがないため、別途PCと組み合わせて利用する必要があります。
センサーの主な仕様と動作環境の要件は次の通りです。
大きさ |
103×39×126 mm |
重さ |
440g |
消費電力 |
最大5.9W(利用状況によって異なります) ※同梱の電源もしくはType-C-Type-Cケーブルを利用。 ※Type-C-Type-Cケーブルは同梱していません。 |
温度の周囲条件 |
10~25°C |
湿度の周囲条件 |
8~90%相対湿度(結露しないこと) |
OS |
※ネイティブC/C++WindowsアプリケーションのWindows API(Win32)で使用可能です。 ※現在、SDKはUWPアプリケーションでは使用できません。 ※Windows 10のSモードはサポートしていません。 |
ホストPC(最小要件) |
※要件はアプリケーション、アルゴリズム、センサーフレームレート、解像度に依存します。 ※ローエンドもしくは古いCPUで動作する場合があります。 ※WindowsとLinuxのOSの違い、使用中のグラフィックスドライバーでパフォーマンスが異なります。 |
ボディトラッキング ホストPC(最小要件) |
※ボディトラッキングPCのホスト要件は、一般的なPCホスト要件よりも厳しくなります。 ※ローエンドもしくは古いCPU、NVIDIA GPUで動作する場合があります。 |
Azure Kinect DKによる業種別の活用シーン
IoTはさまざまな産業の分野で活用されつつあります。Azure Kinect DKは、業種ごとに以下のような活用シーンが考えられます。
医療
病院のベッドにカメラを設置して、Body Tracking SDK(プレビュー)で患者を見守るようなシステム構築が可能です。認知症患者がベッドから離れたり、身体の動けない患者が声で助けを求めたりしたときに、迅速に看護師や医師に伝えられるようになります。リアルタイムにフィードバックしたデータで、患者の現状を確認しながらリハビリを支援する活用法もあります。
小売業
店舗の天井にカメラを設置して、入店客の導線を検討し、効果的な商品の配置を検討するために活用できます。また、カメラで認識した映像にしたがって、デジタルサイネージにおすすめ商品を表示させるインタラクティブな仕組みも考えられます。商品を迅速かつ正確に追跡し、在庫を最適化する際にも有効です。
製造業
製造業ではスマートファクトリーとしてIoTに対する関心が高まりつつあります。部品を識別させたり、異常を認識させたりすることによって、品質維持に活用できます。事故防止や労働環境を改善するためのデータ収集に使うことも可能です。
まとめ
ゲームの周辺機器として生まれたKinectですが、Azureの人工知能と優れたセンシング技術によって、産業分野における導入が可能になりました。Azure Cognitive Services、Azure IoT Edgeと組み合わせてAzure Kinect DKを強化すれば、産業分野において先進的なIoTの稼働を実現します。
Kinectのほかに、Microsoftにはヘッドセット型の「HoloLens 2」があります。MR(Mixed Reality:複合現実)もまた、エンターテイメント分野から産業分野への成長が期待されています。