Unity Sentisについて
はじめに
Unity Sentisについて調査依頼があったので、調べたことを記事にしたいと思います。間違っている箇所があればコメントで教えて下さい。
Unity Sentisとは
Unity Sentisとは、ゲームやアプリケーションに機械学習モデル(AI)を統合できる推論エンジンのことです。今までは、ゲームやアプリケーションにAIを取り入れるには、専門的な知識が必要でした。しかし、Unity Sentisを使えばAI機能を、簡単に自分のプロジェクトに実装できるようになりました。
主な特徴と利点
ここからはUnity Sentisの特徴と利点について説明していきます。
・オンライン動作とセキュリティ
Unity Sentisはクラウドにアクセスする必要がないため、ネットワークが通っていない場合でもAIモデルを実行することができます。また、データをクラウド上に格納したり、転送することがないため、セキュリティ面で安全性が高いのも特徴となっています。
・柔軟なモデルのインポート
Unity Sentisは、Unityランタイム上でONNX形式のAIモデルを直接実行することができます。このOKXのサポートによって、様々なハードウェア(CPU、GPU、TPU)や環境(クラウド、エッジ、デバイス、モバイルなど)で実行が可能です。
※ONNX形式とは(Open Neural Network Exchange)とは、ディープラーニングや機会学習モデルのような人工知能モデルを表現するためのフォーマットです。日本語では「オキニス」と発音されます。
このONNXのサポートによって、異なる機械学習フレームワーク(PyTorch,TensorFlow,Scikit-learn)で作成されたモデルを共通の形式で表現することができます。
例えば、PyTorchで訓練したモデルをONNX形式に変換して、それをTensorFlowやUnity Sentisなど異なる環境で使用することができるといったものです。
Unity Sentisの活用例
Unity Sentisを使うと、以下のようなことができます。
・リアルタイム顔認識と表情検出
ゲーム内のキャラクターやオブジェクトをプレイヤーの表情によって動的に変化させることが可能になります。
例えば、プレイヤーの笑顔を検出してゲーム内のキャラクターが反応したり、プレイヤーの驚きの表情に合わせてイベントをトリガーしたりすることができます。そのため、Unity Sentisを利用することで、より没入感のある体験を提供することができます。
・音声認識と自然言語処理
機械学習言語モデルを使用して、リアルタイムの音声をテキストに変換し、自然な言語コミュニケーションを実現します。これによって、音声コマンドでゲームを操作したり、NPC(ノンプレイヤーキャラクター)との会話をより自然にすることができます。
・手書き検出
ニューラルネットワークを使用して、プレイヤーが画面に書いた図形や文字を認識し、ゲーム内のアクションにつなげることができます。
以下の動画では、プレイヤーが画面に書いたスケッチをニューラルネットワークが分析して、描かれた数字を判別しています。
・物理シュミレーション
機械学習モデルを使用して布の動きなどをシミュレートすることができます。まず、大量の布の動きデータを収集し、このデータを機械学習モデルに学習させます。次に、学習した機械学習モデルを使用して、キャラクターの服や髪の動きをシミュレートします。
↓以下に参考動画を掲載しておきます。
最後に
「Unity Sentis」という単語を初めて聞いてから調査をしてみました。まだ情報のキャッチアップが十分ではありませんが、どなたかの参考になれば幸いです。
最新バージョンは「Sentis 2.1.2」で、リリース日は2024年11月になります。リリースから間もないため、今後も引き続き情報をキャッチアップし、理解を深めていきたいです。
参考文献
https://docs.unity3d.com/Packages/com.unity.sentis@2.1/manual/index.html
https://unity.com/ja/blog/games/create-next-gen-ai-models-with-unity-sentis
https://xexeq.jp/blogs/media/ai-tool137#:~:text=Unity Sentisは、Unityで,機能を実装できます。
https://dev.classmethod.jp/articles/unity-sentis-paint-calc-demo/
https://zenn.dev/headwaters/articles/63c880df6d8131
https://unity.com/ja/products/sentis
https://zenn.dev/hws_iwaki/articles/91726af17cbc68
https://qiita.com/motoJinC25/items/d662be70b6b9b8ebbaea
Discussion