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

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

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

前提条件

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

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

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

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

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

    Create a new resource

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

    「Object Anchors」を検索します。

    Select the Object Anchors Resource

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

    Create an Object Anchors Resource

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

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

    Enter Object Anchors resource account details

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

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

    Go to resource

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

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

    Copy the account domain for your Object Anchors resource

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

    Copy the account ID for your Object Anchors resource

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

    Copy the account key for your Object Anchors resource

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

次のコマンドを実行して 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 モデルへの絶対パス。 サポートされるファイル形式は、fbxplyobjglb です。
    AssetDimensionUnit 3D モデルの測定単位。 サポートされているすべての測定単位は、Azure.MixedReality.ObjectAnchors.Conversion.AssetLengthUnit 列挙型を使用してアクセスできます。
    重力 3D モデルの重力ベクトルの方向。 この 3D ベクトルは、モデルの座標系で下方向を示します。 たとえば、負の y がモデルの 3D 空間の下方向を表す場合、この値は Vector3(0.0f, -1.0f, 0.0f) になります。
    DisableDetectScaleUnits Azure.MixedReality.ObjectAnchors.Conversion 0.3.0-beta.6 の時点では、埋め込みスケール ユニットは、fbx ファイルで使用可能な場合に既定で使用されます。 この動作は、値を true に設定することによって無効にできます。 fbx 以外のファイル形式の場合、このオプションは無視されます。
  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 と統合する方法を理解するには、続けて次のいずれかの記事を参照してください。