Help us understand the problem. What is going on with this article?

Python 3.8 に OpenCV 4.3 など環境を構築する

ちまたであふれる Anaconda(や Miniconda) を使わずに、そのままの Python 3.8 上で環境を構築します。
PyPA推奨pip コマンド(Python付属) のみで環境構築をしたいからです。

TL;DR

pip コマンドで OpenCV の環境構築は簡単にできる。(pip install opencv-python)

環境

  • Windows 10 64-bit
  • Python 3.8.4 (現時点の最新)
  • OpenCV 4.3.0 (現時点の最新)

インストール手順

Python 3.8.4

https://www.python.org/downloads/windows/
Download Windows x86-64 executable installer からインストーラーをダウンロードします。

Windows の場合、py ランチャーもインストールされます。 py -3 で Python 3 が起動できます。

$ py -3
Python 3.8.4 (tags/v3.8.4:dfa645a, Jul 13 2020, 16:46:45) [MSC v.1924 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

OpenCV

非公式ではありますが、PyPIからインストール可能なパッケージ opencv-python が用意されています。

$  pip install opencv-python
Collecting opencv-python
  Downloading opencv_python-4.3.0.36-cp38-cp38-win_amd64.whl (33.4 MB)
     |████████████████████████████████| 33.4 MB 42 kB/s
Collecting numpy>=1.17.3
  Downloading numpy-1.19.0-cp38-cp38-win_amd64.whl (13.0 MB)
     |████████████████████████████████| 13.0 MB 79 kB/s
Installing collected packages: numpy, opencv-python
Successfully installed numpy-1.19.0 opencv-python-4.3.0.36

以上です。依存パッケージのnumpyも入ります。
また、Python から OpenCV を使う場合はOpenCV自体のインストールは不要です。
とても簡単ですね。

OpenCV contrib

拡張モジュール群である contrib を入れる場合は、下記パッケージです。
いくつかの国では商用利用が制限されている可能性があるため導入には注意が必要です(非自由/特許アルゴリズムが含まれているため)

$  pip install opencv-contrib-python
Collecting opencv-contrib-python
  Downloading opencv_contrib_python-4.3.0.36-cp38-cp38-win_amd64.whl (40.0 MB)
     |████████████████████████████████| 40.0 MB 93 kB/s
Requirement already satisfied: numpy>=1.17.3 in c:\users\tkondou\appdata\local\programs\python\python38\lib\site-packages (from opencv-contrib-python) (1.19.0)
Installing collected packages: opencv-contrib-python
Successfully installed opencv-contrib-python-4.3.0.36

インストール確認

さて本題のOpenCVがインストールされ動作するか簡単に確認をします。(ipythonのインストールは後述)
import cv2 にてインポートします。エラーが出なければOK。

$ ipython
Python 3.8.4 (tags/v3.8.4:dfa645a, Jul 13 2020, 16:46:45) [MSC v.1924 64 bit (AMD64)]
Type 'copyright', 'credits' or 'license' for more information
IPython 7.16.1 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import cv2

In [2]: cv2.__version__
Out[2]: '4.3.0'

In [3]:

感想

問題なくインストールできました。

Python2 時代は、OpenCV自体をインストールし展開されたcv2.pyd を C:\Python27\lib\site-packeges に突っ込む、という手順だった気がしますが、ずいぶん簡単になりました。

OpenCVドキュメンテーションに、opencv-pythonのチュートリアルがあることがわかりましたので試してみると良さそうです。

OpenCV-Python Tutorials
https://docs.opencv.org/4.3.0/d6/d00/tutorial_py_root.html

付録

そのほかいくつかのパッケージなど導入する手順です。

OpenCV サンプルコード [オプション]

Python から OpenCV を使う場合には、インストール不要ですが
サンプルコードを利用するため、OpenCV 自体をインストールします。

https://opencv.org/releases.html から Windows をダウンロードして
C:\OpenCV-4.3.0 とかに展開しておきます。

matplotlib [推奨]

OpenCV のチュートリアルでも matplotlib は使っているのでインストール推奨です。
pipですんなりとインストールできます。

$ pip install matplotlib

scipy [オプション]

scipy も pip で簡単にインストールできるようになりました。

$ pip install scipy

ipython [オプション]

ipython もよく使います。

$ pip install ipython pyreadline 

入りました。

$ ipython
Python 3.6.3 (v3.6.3:2c5fed8, Oct  3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)]
Type 'copyright', 'credits' or 'license' for more information
IPython 6.2.1 -- An enhanced Interactive Python. Type '?' for help.

In [1]:

jupyter [オプション]

jupyter も役立ちます。

$ pip install jupyter

環境が整いました。

参考

cointoss1973
昔は組み込み。最近はWindows寄り。
http://cointoss.hatenablog.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away