opencv を python の拡張モジュールとして組み込むと python で opencv の関数や機能をそのまま利用できるようになります。正しく組み込んだ場合、以下のように opencv の関数を呼び出します。
import cv2 img = cv2.imread("/pictures/sample.png")
このように簡単に画像ファイルの読み込み機能を利用できます。
一方、opencv のモジュールを正しく組み込めない場合、以下のエラーメッセージが表示されます。
import cv2 ImportError: No module named cv2
ソースコードから OpenCV の Python モジュールをビルド
opencv のビルド方法とほぼ同じですので、ビルドまでの手順は「macOS で OpenCV をビルドする」をご参照ください。
macOS では python のモジュールパスは以下のパスとなりますので、CMake の設定を修正します。
/Library/Python/2.7/site-packages/
「python2」を検索して「PYTHON2_PACKAGES_PATH
」の値を上記のパスに変更します。
また、デフォルトでは「BUILD_opencv_python2
」が「ON」になっていますが、「ON」になっていることを確認します。
python で opencv を利用する際に、他のサブライブラリへの参照エラーを避けるために、「BUILD_SHARED_LIBS
」をOFFにします。
以上の設定で「Configure」と「Generate」を順番に押します。
Terminal を使って opencv のビルドフォルダーで以下のコマンドを実行します。
cd .../opencv/build/modules/python2 make sudo make install
最後の「sudo make install」はビルドした cv2.so
を python の拡張モジュールパスにコピーします。そのため管理者権限が必要ですのでパスワードを入力してください。
再度、python で import cv2
を実行してみます。何も表示されない場合は正しく組み込むことができています。
$ python >>> import cv2
4 thoughts to “macOS の Python に OpenCV を組み込む”