PyTorch3D

PyTorch3D

  • ドキュメント
  • チュートリアル
  • API
  • GitHub

›データ

はじめに

  • PyTorch3D を選ぶ理由

データ

  • ファイル入出力
  • ファイルからの読み込み
  • データローダー
  • バッチ処理

演算

  • Cubify
  • IoU3D

可視化

  • Plotlyによる可視化

レンダラー

  • 概要
  • はじめに
  • カメラ

一般的な3Dデータセットのデータローダー

ShapeNetCore

ShapeNetは3D CADモデルのデータセットです。ShapeNetCoreはShapeNetデータセットのサブセットであり、https://www.shapenet.org/からダウンロードできます。ShapeNetCoreには、v1(55カテゴリ)とv2(57カテゴリ)の2つのバージョンがあります。

PyTorch3DのShapeNetCoreデータローダーは、torch.utils.data.Datasetを継承しています。ローカルにShapeNetCoreデータセットが保存されているパスを受け取り、データセット内のモデルを読み込みます。ShapeNetCoreクラスは、モデルとそのカテゴリ、モデルID、頂点、面を読み込んで返します。ShapeNetCoreデータローダーには、PyTorch3Dの微分可能なレンダラーを使用して、指定されたmodel_ids (List[int])、categories (List[str])、またはindices (List[int])でモデルをレンダリングするカスタマイズされたrender関数もあります。

読み込まれたデータセットは、PyTorch3Dのカスタマイズされたcollate_fn: pytorch3d.dataset.utilsモジュールのcollate_batched_meshesを使用して、torch.utils.data.DataLoaderに渡すことができます。モデルの頂点と面を使用して、バッチ処理されたメッシュを表すMeshesオブジェクトが構築されます。このMeshes表現は、PyTorch3Dの他の演算やレンダリングで容易に使用できます。

R2N2

R2N2データセットには、ShapeNetCore v.1データセットのサブセットである13個のカテゴリが含まれています。R2N2データセットには、各オブジェクトの独自の24レンダリングとボクセル化されたモデルも含まれています。こちらの手順に従って、R2N2データセットをダウンロードできます。

PyTorch3DのR2N2データローダーは、ShapeNetデータセットへのパス、R2N2データセットへのパス、およびR2N2のスプリットファイルへのパスを使用して初期化されます。ShapeNetCoreと同様に、pytorch3d.dataset.r2n2.utilsモジュールのカスタマイズされたcollate_fn: collate_batched_R2N2を使用して、torch.utils.data.DataLoaderに渡すことができます。これは、ShapeNetCoreが返すすべてのデータと、さらにR2N2レンダリング(モデルごとに24ビュー)、カメラキャリブレーション行列、およびモデルごとのボクセル表現を返します。ShapeNetCoreと同様に、PyTorch3Dの微分可能なレンダラーを使用して指定されたモデルのレンダリングをサポートするカスタマイズされたrender関数があります。さらに、R2N2の元のレンダリングと同じ方向でモデルをレンダリングすることもサポートしています。

← ファイルからの読み込みバッチ処理 →
pytorch3d
Facebook Open Source
Copyright © 2024 Meta Platforms, Inc
法的情報:プライバシー利用規約