Objaverse Asset Annotator und Importer zur Verwendung in THOR.
Installieren Sie ai2thor:
pip install --extra-index-url https://ai2thor-pypi.allenai.org ai2thor==0+455cf72a1c8e0759a452422f2128fbc93a3cb06b
Andere Abhängigkeiten installieren:
pip install objathor[annotation]
Hier sind folgende Extras installiert: annotation
um openai zum Generieren von Annotationen zu verwenden. Für die Anmerkungsfunktion müssen Sie außerdem nltk
installieren. Installieren Sie nltk. Um Renderings zu generieren und „GLB“-Modelle in der Konvertierungspipeline zu konvertieren, müssen Sie Blender installieren.
Aus Quelle:
pip install -e " .[annotation] "
Wir empfehlen, mit Ihrem OpenAI-Schlüssel eine Umgebungsvariable festzulegen:
export OPENAI_API_KEY=[Your key]
Wenn Sie planen, Objekte zu kommentieren, für die wir in S3 keine vorgenerierten Ansichten haben (siehe ein Beispiel unter „Annotation“ unten), müssen wir Blender auch entweder als Extra (wie oben gezeigt) oder als Anwendung installieren:
Den Blender
als Modul installieren:
pip install bpy
Für die Installation des Blenders als Modul ist eine Python 3.10
Umgebung erforderlich.
Oder Blender als Anwendung installieren: Blender-Installationsanweisungen
Wenn sich die Anwendung nicht in den kanonischen Verzeichnissen befindet, müssen Sie möglicherweise blender_installation_path
an Skripte übergeben, die Blender verwenden.
Installieren Sie nltk
auf diesem Commit, indem Sie Folgendes ausführen:
pip install git+https://github.com/nltk/nltk@582e6e35f0e6c984b44ec49dcb8846d9c011d0a8
Beim ersten Durchlauf werden NLTK-Abhängigkeiten automatisch installiert, wir können sie aber auch im Voraus installieren:
python -c " import nltk; nltk.download('punkt'); nltk.download('wordnet2022'); nltk.download('brown'); nltk.download('averaged_perceptron_tagger') "
Vorausgesetzt, wir laufen auf einem Remote-Linux-Server, können wir die THOR-Binärdateien vorab herunterladen mit:
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) "
( platform='OSXIntel64'
würde für eine MacOS-Umgebung verwendet werden).
Sie müssen die zusätzliche Anforderung annotation
über pip installieren und Blender installiert haben, entweder eigenständig oder als Modul. Der folgende Befehl generiert eine Anmerkung über GPT-4 und generiert auch die Konvertierung in ein gültiges THOR-Asset.
OUTPUT_DIR=/path/to/output
python -m objathor.main
--uid 0070ac4bf50b496387365843d4bf5432
--output " $OUTPUT_DIR "
Führen Sie im Repository-Root Folgendes aus:
python
-m objathor.asset_conversion.pipeline_to_thor
--uids=000074a334c541878360457c672b6c2e
--output_dir=
--extension=.msgpack.gz
--annotations=
--live
--blender_as_module
Wobei uids
eine durch Kommas getrennte Liste der zu verarbeitenden Objaverse
IDs ist. output_dir
ist ein absoluter Pfad, der angibt, wohin die Ausgabe der Konvertierung geschrieben werden soll. annotations
ist optional und ist der Pfad zu einer Anmerkungsdatei, die durch den oben beschriebenen Prozess generiert wurde.
Führen Sie python -m objathor.asset_conversion.pipeline_to_thor --help
für weitere Optionen aus.