モーションをAI生成できるソリューション
motion-diffusion-modelはDiffusionのバリエーションのモーション生成します。
プロンプトで行動を指示すると最大9.8秒までのモーションを動画ファイルで生成します。
また、座標移動についても*.npyファイルで出力されます。
https://github.com/GuyTevet/motion-diffusion-model
ただ、細かい障壁があるため、回避するための記事を作成しました。
インストール環境について
私はAnaconda in PowerShellを使っています。他のWSL環境やLinux環境ではないことをあらかじめお断りしておきます。
おそらくですがAnacondaのパスが通ったDOSプロンプトでも同じことができると思います。
過去の記事も参考にしてみてください。https://qiita.com/samezi/items/bdffb85d03e3500101c1
ffmpegについて
このソリューションはffmpegで動画生成を行うため、各環境でパスが通っていて呼び出せる必要があります。
色々やり方はありますが、私はChocolateyからffmpegパッケージをインストールしました。詳細は参考リンクを元に。
https://qiita.com/konta220/items/95b40b4647a737cb51aa
エラーが出て環境が作れない
この記事のミソです。
condaコマンドを使うように指示がありますが、そのままだとResolvePackageNotFoundエラーが出てしまいます。
environment.ymlファイルがWindows環境など他の環境の人が使うように作られていません。一応Issueでは扱っていますが…ふーむ。https://github.com/GuyTevet/motion-diffusion-model/issues/1
environment.ymlを以下のように修正してください。
name: mdm
channels:
- pytorch
- conda-forge
- defaults
dependencies:
- beautifulsoup4=4.11.1=pyha770c72_0
- blas=1.0=mkl
- brotlipy=0.7.0
- ca-certificates=2022.9.24
- catalogue=2.0.8
- certifi=2022.9.24
- cffi=1.15.1
- charset-normalizer=2.1.1
- colorama=0.4.5
- cryptography=35.0.0
- cudatoolkit=11.0.221
- cycler=0.11.0
- cymem=2.0.6
- dataclasses=0.8
- expat=2.4.9
- fftw=3.3.9
- filelock=3.8.0
- fontconfig=2.13.1
- gdown=4.5.1
- giflib=5.2.1
- glib=2.69.1
- gst-plugins-base
- h5py=3.7.0
- hdf5=1.10.6
- icu=58.2
- idna=3.4
- intel-openmp=2021.4.0
- jinja2=3.1.2
- jpeg=9b
- kiwisolver=1.4.2
- langcodes=3.3.0
- lcms2=2.12
- libffi=3.3
- libpng=1.6.37
- libtiff=4.1.0
- libuv=1.40.0
- libwebp=1.2.0
- libxml2=2.9.14
- lz4-c=1.9.3
- markupsafe=2.1.1
- matplotlib=3.1.3
- matplotlib-base=3.1.3
- mkl=2021.4.0
- mkl-service=2.4.0
- mkl_fft=1.3.1
- mkl_random=1.2.2
- ninja=1.10.2
- ninja-base=1.10.2
- numpy=1.21.5
- numpy-base=1.21.5
- openssl=1.1.1q
- packaging=21.3
- pathy=0.6.2
- pcre=8.45
- pillow=9.2.0
- pip=22.2.2
- pycparser=2.21
- pydantic=1.8.2
- pyopenssl=22.0.0
- pyparsing=3.0.9
- pyqt=5.9.2
- pysocks=1.7.1
- python=3.7.13
- python-dateutil=2.8.2
- python_abi=3.7
- pytorch=1.7.1=py3.7_cuda110_cudnn8_0
- qt=5.9.7
- requests=2.28.1
- scipy=1.7.3
- setuptools=63.4.1
- shellingham=1.5.0
- sip=4.19.8
- six=1.16.0
- smart_open=5.2.1
- soupsieve=2.3.2.post1
- spacy=3.3.1
- spacy-legacy=3.0.10
- spacy-loggers=1.0.3
- sqlite=3.39.3
- tk=8.6.12
- torchaudio=0.7.2
- torchvision=0.8.2=py37_cu110
- tornado=6.2
- tqdm=4.64.1
- trimesh=3.15.3
- typer=0.4.2
- wheel=0.37.1
- xz=5.2.6
- zipp=3.8.1
- zlib=1.2.12
- zstd=1.4.9
- pip:
- blis==0.7.8
- chumpy==0.70
- clearml==1.7.1
- click==8.1.3
- confection==0.0.2
- filelock==3.8.0
- ftfy==6.1.1
- importlib-metadata==5.0.0
- lxml==4.9.1
- murmurhash==1.0.8
- preshed==3.0.7
- pycryptodomex==3.15.0
- regex==2022.9.13
- smplx==0.1.28
- srsly==2.4.4
- thinc==8.0.17
- typing-extensions==4.1.1
- urllib3==1.26.12
- wasabi==0.10.1
- wcwidth==0.2.5
以上です。他にもCuda Toolkitの違いなどありますが、後はGithubリポジトリにあるリードミーに従えばインストールできるはずです。Good Luck!!!