なんかいろいろしてみます

Apr 1, 2018 - 1 minute read - HoloLens

HoloLensでWindowsMLを試してみる(サンプル実行編)

Windows10の次期大型バージョンアップで追加される新機能Windows Machine LearningがHoloLensでも利用できるようになりました. HoloLensをRS4 Previewにアップデートすることで確認することができます. ここではWindows Machine LearningのサンプルをHoloLensで動作させてみます.

概要

HoloLensの次期バージョンプレビュー版が公開されOSを10.0.17123まで上げることができるようになりました. これによりWindows10 Insider Preview で利用可能になったWindows Machine Learningが利用可能になりました.

動作環境

  • 開発環境
    • Windows10 Insider Preview 17127
    • Windows10 SDK Insider Preview 17115
    • Visual Studio2017
  • 実行環境
    • HoloLens RS4 Preview 17123

Windows Machine Learning(WindowsML)とは

Windows10の次期大型アップデートで搭載される機械学習実行環境です. これは学習済みモデル(.onnx形式)を使用することで画像認識などの機械学習結果を利用できるようになります. 学習済みモデルを利用することでHoloLensなど非力な端末でも画像認識が利用できます. 機械学習はCNTKやTensorflowなどで行い.onnx形式に出力しWindowsMLに組み込みます.

https://docs.microsoft.com/en-us/windows/uwp/machine-learning/

開発環境構築

開発用PCのWindows10をInsider Previewにする

HoloLensをRS4 Previewにアップデートする

Windows Machine Learningサンプルの実行

Windows Machine LearningのサンプルはMicrosoftがGithub上に公開しています. 以下のサイトの「Clone or download」ボタンの「Download ZIP」からプロジェクトデータをダウンロードできます.

https://github.com/Microsoft/Windows-Machine-Learning/tree/master

Windows-Machine-Learning-master\Samples\UWP以下に4つのサンプルプロジェクトフォルダがあります. - MNIST + 手書きの数字認識サンプル +

  • MNIST_GetStarted
    • 自前の学習済みモデルを導入しての手書き認識サンプル
  • SqueezeNetObjectDetection

    • 画像認識サンプル 適合率の高い認識結果から3つ結果が表示されます
  • WinMLExplorer

    • 回路パターン認識,Webカメラ認識サンプル

それぞれのプロジェクトを開きソリューションプラットフォームをx86に変更することでPC上でサンプルを実行できます.

HoloLensでのサンプルの実行

  • HoloLensとPCをUSBで接続し各プロジェクトのソリューションプラットフォームをx86,実行先を「Device」に変更することで確認できます.
  • ただしサンプルでは2DのUWP形式でパソコンでの利用を想定しているためHoloLens上での操作は難しくなっています.

まとめ

  • Windows10 Insider Previewを導入しWindowsMLを利用できるようにしました.
  • HoloLens RS4 PreviewにてWindows Machine Learningのサンプルを実行することができました.
  • 次回はWindowsMLのゲームエンジンUnityでの利用を想定してC#での実装例を紹介します.