クイック スタート: 3D モデルから Object Anchors モデルを作成する

Azure Object Anchors は、3D モデルを HoloLens の物体認識 Mixed Reality エクスペリエンスを実現する AI モデルに変換するマネージド クラウド サービスです。 このクイックスタートでは、C# と .NET Core SDK を使用して 3D モデルから Object Anchors モデルを作成する方法について説明します。

学習内容は次のとおりです。

  • Object Anchors アカウントを作成する
  • 3D モデルを変換して Object Anchors モデルを作成する

前提条件

このクイック スタートを実行するには、以下が必要です。

Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。

Object Anchors アカウントを作成する

まず、Object Anchors サービスを使用してアカウントを作成する必要があります。

  1. Azure portal にアクセスし、 [リソースの作成] を選択します。

    新しいリソースを作成

  2. Object Anchors リソースを検索します。

    「Object Anchors」を検索します。

    Object Anchors リソースを選択する

    検索結果の Object Anchors リソースで、 [作成] -> [Object Anchors] の順に選択します。

    Object Anchors リソースを作成する

  3. [オブジェクト アンカー アカウント] ダイアログ ボックスで以下を行います。

    • 一意のリソース名を入力します。
    • リソースを接続するサブスクリプションを選択します。
    • リソース グループを作成するか、既存のものを使用します。
    • リソースが属するリージョンを選択します。

    Object Anchors リソース アカウントの詳細を入力する

    [作成] を選択して、リソースの作成を開始します。

  4. リソースが作成されたら、[リソースに移動] を選択します。

    リソースに移動

  5. 概要ページで、以下を行います。

    アカウント ドメイン をメモします。 この情報は後で必要になります。

    Object Anchors リソースのアカウント ドメインをコピーする

    アカウント ID をメモします。 この情報は後で必要になります。

    Object Anchors リソースのアカウント ID をコピーする

    [アクセス キー] ページに移動し、主キー をメモします。 この情報は後で必要になります。

    Object Anchors リソースのアカウント キーをコピーする

サンプル プロジェクトを入手する

次のコマンドを実行して samples リポジトリを複製します。

git clone https://github.com/Azure/azure-object-anchors.git

cd ./azure-object-anchors

3D モデルを変換する

これで先に進んで、3D モデルを変換できます。

  1. Visual Studio で quickstarts/conversion/Conversion.sln を開きます。 このソリューションには C# コンソール プロジェクトが含まれています。

  2. プロジェクトのルートに配置されている Configuration.cs ファイルを開き、次の各フィールドの set-me 値を置き換えます。

    フィールド 説明
    AccountDomain 上記で作成した Object Anchors アカウントの アカウント ドメイン
    AccountId 上記で作成した Object Anchors アカウントの アカウント ID
    AccountKey 上記で作成した Object Anchors アカウントの 主キー

    次の 4 つの追加フィールドを確認する必要があります。

    フィールド 説明
    InputAssetPath ローカル コンピューター上の 3D モデルへの絶対パス。 サポートされるファイル形式は、fbxplyobjglbgltf です。
    AssetDimensionUnit 3D モデルの測定単位。 サポートされているすべての測定単位は、Azure.MixedReality.ObjectAnchors.Conversion.AssetLengthUnit 列挙型を使用してアクセスできます。
    重力 3D モデルの重力ベクトルの方向。 この 3D ベクトルは、モデルの座標系で下方向を示します。 たとえば、負の y がモデルの 3D 空間の下方向を表す場合、この値は Vector3(0.0f, -1.0f, 0.0f) になります。
  3. プロジェクトをビルドおよび実行して 3D モデルをアップロードし、新しい変換ジョブをサービスに登録して、それが完了するまで待ちます。 ジョブが完了すると、InputAssetPath に指定されたファイルの横に Object Anchors モデルがダウンロードされます。 次のようなコンソール出力が表示されます。

     Asset   : ***********
     Gravity : ***********
     Unit    : ***********
     Attempting to upload asset...
     Attempting to create asset conversion job...
     Successfully created asset conversion job. Job ID: ***********
     Waiting for job completion...
    
     Asset conversion job completed successfully.
     Attempting to download result as '***********'...
     Success!
    

    今後の参照のために ジョブ ID をメモしておきます。 デバッグやトラブルシューティングの際に役立つ場合があります。

  4. ジョブが正常に完了すると、指定した出力場所に <Model-Filename-Without-Extension>_<JobID>.ou の形式のファイルが表示されます。 たとえば、3D モデルのファイル名が chair.ply で、ジョブ ID が 00000000-0000-0000-0000-000000000000 である場合、サービスにより出力されるファイル名は chair_00000000-0000-0000-0000-000000000000.ou になります。

リソースをクリーンアップする

前の手順では、リソース グループ内に Azure リソースを作成しました。 これらのリソースが将来必要になると思わない場合は、リソース グループを削除してリソースを削除できます。

Azure portal メニューまたは [ホーム] ページから、 [リソース グループ] を選択します。 次に、 [リソース グループ] ページで [myResourceGroup] を選択します。

[myResourceGroup] ページで、一覧表示されたリソースが、削除しようとするリソースであることを確認します。

[リソース グループの削除] を選択し、確認のためテキスト ボックスに「myResourceGroup」と入力して、 [削除] を選択します。

次のステップ

このクイックスタートでは、Object Anchors アカウントを作成し、3D モデルを変換して Object Anchors モデルを作成しました。 このモデルを Mixed Reality アプリ内の Object Anchors SDK と統合する方法を理解するには、続けて次のいずれかの記事を参照してください。