HomebrewでOpenCVがPythonバインディングでインストールできなかったので手動で行う

Homebrewでopencv3をインストールしようと思ったら、かなり苦戦したのでメモ。

というかHomebrewではpythonから使えるopencv3がインストールできなかった。

…/opencv3/lib/pythonなどのフォルダがなく、.soファイルも見当たらない。

参考になりそうなページを調べていくと、OpenCV3をvirtualenvのPython3にHomebrewでインストールしたかったけど妥協してソースからビルド - Qiitaが有益だった。

これをもとにCMakeを使ってビルドとインストールを行った。

python3.6を使ったぐらいで他はあまり変わらない。

CMakeの環境変数設定で違うところだけメモしておく。

  • Build python2みたいな項目のチェックは外した。
  • PYTHON3_LIBRARYのところで、参考ページでは、libpython3.4m.dylibのフルパスを指定するが、 それが存在しなかったので、/Users/<USERNAME>/.pyenv/versions/3.6.1/lib/libpython3.6m.aを指定した。

これ以外はだいたい同じはず。最後のテストコマンドまで、実行できた。 画像の表示だけは少し違って、

cv2.imshow('window', img)
cv2.waitKey(0)

の2行目を入力しないと表示されなかった。なおこれだと閉じる方法がわからない(・_・; ウィンドウにフォーカスを当ててEnterで閉じた。

違うところの2つ目が若干心配なのと複数の仮想環境ではどうするのか気になるがよしとする。

前者の心配は解決。dylibはPythonをフレームワークとしてインストールしていると存在する。なので、pyenvにて、

PYTHON_CONFIGURE_OPTS="--enable-framework" pyenv install 3.6.1

でインストールすればいい。

タイトルとURLをコピーしました