THOR で使用する Objaverse アセット アノテーターおよびインポーター。
ai2thor をインストールします。
pip install --extra-index-url https://ai2thor-pypi.allenai.org ai2thor==0+455cf72a1c8e0759a452422f2128fbc93a3cb06b
他の依存関係をインストールします。
pip install objathor[annotation]
ここでは、次のエクストラがインストールされます: annotation
、openai を使用してアノテーションを生成します。アノテーション機能を使用するには、 nltk
をインストールする必要があります。 nltk をインストールします。レンダリングを生成し、変換パイプラインで「glb」モデルを変換するには、 Blender をインストールする必要があります。
ソースより:
pip install -e " .[annotation] "
OpenAI キーを使用して環境変数を設定することをお勧めします。
export OPENAI_API_KEY=[Your key]
S3 に事前に生成されたビューがないオブジェクトにアノテーションを付けることを計画している場合 (以下の「アノテーション」の例を参照)、追加の (上記のように) またはアプリケーションとして Blender をインストールする必要もあります。
Blender
モジュールとしてインストールする:
pip install bpy
Blender をモジュールとしてインストールするには、Python 3.10
環境が必要です。
または、Blender をアプリケーションとしてインストールします: Blender のインストール手順
アプリケーションが標準ディレクトリにない場合は、Blender を使用するスクリプトにblender_installation_path
を渡す必要がある場合があります。
次のコマンドを実行して、このコミットにnltk
インストールします。
pip install git+https://github.com/nltk/nltk@582e6e35f0e6c984b44ec49dcb8846d9c011d0a8
最初の実行時に、NLTK 依存関係は自動的にインストールされますが、事前にインストールすることもできます。
python -c " import nltk; nltk.download('punkt'); nltk.download('wordnet2022'); nltk.download('brown'); nltk.download('averaged_perceptron_tagger') "
リモート Linux サーバー上で実行していると仮定すると、次のコマンドを使用して THOR バイナリを事前ダウンロードできます。
python -c " from ai2thor.controller import Controller; from objathor.constants import THOR_COMMIT_ID; c=Controller(download_only=True, platform='CloudRendering', commit_id=THOR_COMMIT_ID) "
(MacOS 環境にはplatform='OSXIntel64'
が使用されます)。
pip を介してannotation
追加要件をインストールする必要があります。スタンドアロンまたはモジュールとして Blender がインストールされています。次のコマンドは、GPT-4 経由でアノテーションを生成し、有効な THOR アセットへの変換も生成します。
OUTPUT_DIR=/path/to/output
python -m objathor.main
--uid 0070ac4bf50b496387365843d4bf5432
--output " $OUTPUT_DIR "
リポジトリのルートから次を実行します。
python
-m objathor.asset_conversion.pipeline_to_thor
--uids=000074a334c541878360457c672b6c2e
--output_dir=
--extension=.msgpack.gz
--annotations=
--live
--blender_as_module
uids
は、処理するObjaverse
ID のカンマ区切りリストの文字列です。 output_dir
変換の出力を書き込む場所を示す絶対パスです。 annotations
はオプションであり、上記のプロセスによって生成された注釈ファイルへのパスです。
他のオプションについては、 python -m objathor.asset_conversion.pipeline_to_thor --help
を実行します。