THOR에서 사용하기 위한 Objaverse 자산 주석자 및 가져오기 도구입니다.
ai2thor를 설치합니다:
pip install --extra-index-url https://ai2thor-pypi.allenai.org ai2thor==0+455cf72a1c8e0759a452422f2128fbc93a3cb06b
다른 종속성을 설치합니다.
pip install objathor[annotation]
여기에는 다음 추가 기능이 설치됩니다. openai를 사용하여 주석을 생성하는 annotation
. 또한 주석 기능을 위해서는 nltk
설치해야 합니다. nltk를 설치하십시오. 변환 파이프라인에서 렌더를 생성하고 'glb' 모델을 변환하려면 Blender를 설치해야 합니다.
출처:
pip install -e " .[annotation] "
OpenAI 키를 사용하여 환경 변수를 설정하는 것이 좋습니다.
export OPENAI_API_KEY=[Your key]
S3에 미리 생성된 보기가 없는 개체에 주석을 달 계획이라면(아래 주석 아래의 예 참조), 블렌더를 추가(위에 표시된 대로) 또는 애플리케이션으로 설치해야 합니다.
Blender
모듈로 설치:
pip install bpy
블렌더를 모듈로 설치하려면 Python 3.10
환경이 필요합니다.
또는 블렌더를 애플리케이션으로 설치: 블렌더 설치 지침
응용 프로그램이 표준 디렉터리에 없으면 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
추가 요구 사항을 설치해야 하며 광고에는 독립 실행형 또는 모듈로 블렌더가 설치되어 있어야 합니다. 다음 명령은 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=<some_absolute_path>
--extension=.msgpack.gz
--annotations=<annotations_file_path>
--live
--blender_as_module
여기서 uids
처리할 Objaverse
ID의 쉼표로 구분된 문자열 목록입니다. output_dir
은 변환 출력을 쓸 위치를 나타내는 절대 경로입니다. annotations
선택 사항이며 위에서 설명한 프로세스에 의해 생성된 주석 파일의 경로입니다.
다른 옵션을 보려면 python -m objathor.asset_conversion.pipeline_to_thor --help
실행하세요.