異邦人になってみた~~上海生活写真ブログ

中国上海市在住です。もう10年を超えました。休日は星空(天の川)撮影やポートレート撮影等、連休時はカメラを持って中国各地を旅行してます。最近は内モンゴル自治区によく行っています。

 このブログについて(about)
  中国旅行/観光/写真記事一覧(省別)

自力で画像処理!Pythonのimutilsモジュールが使えるようになるまでの道のり


写真系のツールを使おうと思って、ネットで見つけたPythonのOpenCV関連のソースを実行しようとして実行してみたが以下のようなエラーが出た

ModuleNotFoundError: No module named 'imutils'

Pythonのパッケージインストール(WIN10)

自身Pythonはほとんど使ったことはないのですが、PCにインストールだけはしていました、どうやらimportしているimutilsが見つからないようですね。
というかほかは何も入れてないので、このままではこのソース実行できませんね。
ということでインストールしてみました。
まずはpipというパッケージ管理ツールを入れる必要があるようです。

1.pip(パッケージ管理ツール)のインストール

C:\Users\Ze\Desktop>python get-pip.py
Collecting pip
Downloading pip-20.1-py2.py3-none-any.whl (1.5 MB)
|████████████████████████████████| 1.5 MB 3.3 MB/s
Collecting wheel
Downloading wheel-0.34.2-py2.py3-none-any.whl (26 kB)
Installing collected packages: pip, wheel
Attempting uninstall: pip
Found existing installation: pip 19.2.3
Uninstalling pip-19.2.3:
Successfully uninstalled pip-19.2.3
Successfully installed pip-20.1 wheel-0.34.2

2.imutilsのインストール

imutilsは基本的な画像処理機能を簡単に行うための一連の便利な機能だそうです。
これをインストールします。
C:\Users\Ze\Desktop>pip install imutils
Collecting imutils
Downloading imutils-0.5.3.tar.gz (17 kB)
Successfully built imutils
Installing collected packages: imutils
Successfully installed imutils-0.5.3

3.numpyのインストール

imutilsを入れたらOKかと思いきや今度はnumpyが見つからないといわれましたのでインストールします。
numpyは数値計算を効率的に行うための拡張モジュールだそうです。
C:\Users\Ze\Desktop>pip install numpy
Collecting numpy
Downloading numpy-1.18.4-cp38-cp38-win32.whl (10.8 MB)
|████████████████████████████████| 10.8 MB 547 kB/s
Installing collected packages: numpy
Successfully installed numpy-1.18.4

4.opencvのインストール

opencvはPython定番の画像処理ライブラリですが、これもデフォじゃないようなのでインストールします。
C:\Users\Ze\Desktop>pip install opencv-contrib-python
Collecting opencv-contrib-python
Downloading opencv_contrib_python-4.2.0.34-cp38-cp38-win32.whl (29.5 MB)
|████████████████████████████████| 29.5 MB 819 kB/s
Successfully installed opencv-contrib-python-4.2.0.34



とりあえずこれで実行できました。実行時にModuleNotFoundErrorになったらpipで追加していけばよいだけなんですかね。これって便利ですね。
後は少し改造して見ようと思って触ってみましたが、
私はプログラム言語って基本、文法が違うだけで、同じような感じだと思ってましたが、結構書き方が違いますね。
スコープがわからなかった。。。。多分タブじゃなくてスペースにしないとだめなんだと思う。。。
まあこのへんは暇があったらちょこっと触ってみようと思います。