クイック スタート: 3D モデルから Object Anchors モデルを作成する
Azure Object Anchors は、3D モデルを HoloLens の物体認識 Mixed Reality エクスペリエンスを実現する AI モデルに変換するマネージド クラウド サービスです。 このクイックスタートでは、Azure Object Anchors の .NET 用変換 SDK を使用して 3D モデルから Object Anchors モデルを作成する方法について説明します。
学習内容は次のとおりです。
- Object Anchors アカウントを作成します。
- Azure Object Anchors の .NET 用変換 SDK (NuGet) を使用して、3D モデルを変換して Object Anchors モデルを作成します。
前提条件
このクイック スタートを実行するには、以下が必要です。
- Visual Studio 2022 を備えた Windows マシン。
- Git for Windows。
- .NET 6.0 SDK。
Azure サブスクリプションをお持ちでない場合は、開始する前に Azure 無料アカウントを作成してください。
Object Anchors アカウントを作成する
まず、Object Anchors サービスを使用してアカウントを作成する必要があります。
Azure portal にアクセスし、 [リソースの作成] を選択します。
Object Anchors リソースを検索します。
「Object Anchors」を検索します。
検索結果の Object Anchors リソースで、[作成] -> [Object Anchors] の順に選択します。
[オブジェクト アンカー アカウント] ダイアログ ボックスで以下を行います。
- 一意のリソース名を入力します。
- リソースを接続するサブスクリプションを選択します。
- リソース グループを作成するか、既存のものを使用します。
- リソースが属するリージョンを選択します。
[作成] を選択して、リソースの作成を開始します。
リソースが作成されたら、[リソースに移動] を選択します。
概要ページで、以下を行います。
アカウント ドメインをメモします。 この情報は後で必要になります。
アカウント ID をメモします。 この情報は後で必要になります。
[アクセス キー] ページに移動し、主キーをメモします。 この情報は後で必要になります。
サンプル プロジェクトを入手する
次のコマンドを実行して samples リポジトリを複製します。
git clone https://github.com/Azure/azure-object-anchors.git
cd ./azure-object-anchors
3D モデルを変換する
これで先に進んで、3D モデルを変換できます。
Visual Studio で
quickstarts/conversion/Conversion.sln
を開きます。 このソリューションには C# コンソール プロジェクトが含まれています。プロジェクトのルートに配置されている
Configuration.cs
ファイルを開き、次の各フィールドのset-me
値を置き換えます。フィールド 説明 AccountDomain 上記で作成した Object Anchors アカウントのアカウント ドメイン。 AccountId 上記で作成した Object Anchors アカウントのアカウント ID。 AccountKey 上記で作成した Object Anchors アカウントの主キー。 次の 4 つの追加フィールドを確認する必要があります。
フィールド 説明 InputAssetPath ローカル コンピューター上の 3D モデルへの絶対パス。 サポートされるファイル形式は、 fbx
、ply
、obj
、glb
です。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
以外のファイル形式の場合、このオプションは無視されます。プロジェクトをビルドおよび実行して 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 をメモしておきます。 デバッグやトラブルシューティングの際に役立つ場合があります。
ジョブが正常に完了すると、指定した出力場所に
<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 と統合する方法を理解するには、続けて次のいずれかの記事を参照してください。