pandazx's blog

データ分析など雑多な技術ブログ

ImportError: No module named cv2

前提

PFN発のディープラーニングフレームワークchainerで画像分類をするよ(chainerでニューラルネット1) - 人工言語処理入門

このブログを元にChainerのimagenetを試そうとしたが、上記ブログ主作成のcrop.py実行のところで、ハマった。

crop.py を実行するとエラーが出る

ImportError: No module named cv2

pip install cv2 でインストールしても治らない。

cv2は/usr/local/lib/python2.7/site-packages にインストールされているし、

import sys
print sys.path

をして、パスが通っているのも確認した。

Installing OpenCV for Python on Ubuntu, getting ImportError: No module named cv2.cv - Stack Overflow

I think you don't have the python-opencv package.

これを見て、OpenCVがないとダメなの?ということで、他の記事も発見

l'amour avec la technologie: How to install opencv(cv2) with python bindings in Linux - Ubuntu/Fedora

ということで、以下を参考にOpenCV3.1.0をインストールした。

OpenCV2.4.5をamazon linuxにインストールする

インストールしても、まだパスが通ってないので、.bashrcに以下を追加。

export PYTHONPATH=/usr/local/lib/python2.7/dist-packages:$PYTHONPATH

source .bashrcをしてから動作確認。エラーが出なければOK

python
>>> import cv2

補足

crop.pyを実行する際に注意が必要なのが、出力先のimagesディレクトリを作ってから実行しないと 変換ファイルが出力されないので注意(エラーが出なかったので、最初、わからなかった)