Unity-AR入門Part3
タイトルはARですが、今回の内容はAIです。
やることはUnity上で画像をカメラでとり、学習済みモデルで推論、認識結果を返すというものです。
UnityではBarracudaというライブラリを使えばONNXを使うことができるので勉強しがいがあります。
下記の先人様の記事を多いに参考にしながらやっていましたがまだUnityになれていないため再現するのに苦労しました。
躓きポイント
Unityでは画像をテクスチャを介して表示させるのですが、張り付けるためのテクスチャ生成で躓いてしまいました。
Color Formatがデフォルトでは上のようになりますが、これだとアルファチャネルが存在するため、ONNXに入れるときにサイズ違いで動きません。
参考プロジェクトのようにb5g6r5_unorm_pack16などにカラーフォーマットを変更する必要がありました(これに気付かず3時間溶かす。。)
これ以外にもカメラのCulling Maskで移りたくないオブジェクトの属性を消すだとかC#のスクリプトの実行順序だったりで時間をかけましたが最終的にはなんとか推論できました。
C#の入門書も買ったので自分でコードを書いてできることの自由度を増やしたいですね!