背景
Blender で OpenCV や dlib など使って 3D 顔データを可視化したり, pytorch と連携して機械学習と組み合わせしたりしたい.
環境
- Ubuntu 18.04
- Blender 2.82a(python3.7.4)
pip のインストール
最初の状態では, pip が入っていないので, ensurepip
https://docs.python.org/ja/3/library/ensurepip.html
でインストールします.
$ /path/to/blender/2.82/python/bin/python3.7m -m ensurepip
このあと, -m pip
で使えるようになります.
$ /path/to/blender/2.82/python/bin/python3.7m -m pip
C/C++ コンパイルが必要なモジュール
dlib など, pip 時にソースコードからコンパイルが必要なモジュールもあります.
Python 3.7 開発環境(ヘッダファイル)が必要になります.
Blender には Python.h などが入っていません.
システムの python dev を使う
Ubuntu 18.04 ですと, apt で python3.7-dev を入れて,
$ env CXXFLAGS="-I/usr/include/python3.7m" /path/to/blender/2.82/python/bin/python3.7m -m pip install dlib
などと, CXXFLAGS でヘッダパスを追加すればばとりあえずが, pyconfig.h が異なるので, 少し不安です.
Python ソースコードからヘッダファイルを取得(推奨)
python のソースコードを落としてきて, blender 側の /path/to/blender/2.82/python/include/python3.7m
にヘッダ関連をインストールするのが安全かとおもいます.
これで C/C++ コンパイルが必要なモジュールもインストールできるはずです!
Blender Python のコンソールで import できるはずです!
その他の方法
Blender の python バイナリ を conda で入れたのと置き換えるアプローチ
TODO
- miniconda や virtualenv で, blender python の環境を使って仮想環境をセットアップできないか調べる
- Blender をソースコードからビルドして, python 開発環境整えやすいようにする.
-
Blender のオフラインモード(CLI モード)でもきちんと動くか確認する(バッチ処理用)
-
blender --background --python-console
でいけます.
-