LoginSignup
6
6

More than 1 year has passed since last update.

M1 MacでPython+OpenCVプログラミングできる環境を整える

Last updated at Posted at 2021-11-19

はじめに

環境を一から作る機会があったので,せっかくだから整理します.少しでもお役に立てば.この記事は主に初学者向けなので,PythonおよびOpenCVは基本的に標準的に入るバージョンのものを使います.

M1 Macを取り巻く環境は日々更新されています.私はさまざまな記事を参考にさせていただいてインストール作業を行いましたが,参照記事ではうまくいかなかったと書かれていた事も,現時点ではスムーズに進んだりしました.先人の努力に感謝します.

使用環境

  • MacBook Pro (14インチ, 2021) Apple M1 Maxプロセッサ
  • macOS Monterey 12.0.1

この記事をフォローすると使えるようになる環境

  • Visual Studio Code
  • Homebrew経由でインストールされるPython3
  • pip経由でインストールされるOpenCV

この記事でやらないこと

  • pyenvでのPythonのバージョン管理

この記事を読んでPythonの環境を構築する人にはまだ不要でしょう.pyenvの話が混ざると混乱を招く恐れがあるので,今回は使わないことにします.

手順

Homebrewをインストールする

まず,HomebrewのWebサイトの「インストール」の項にあるコードを,macOSのターミナルに貼り付けて実行します.下記は記事執筆時点での最新のコードの例ですが,Webサイトから入手する方が良いでしょう.

$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

最初の方でインストールを続けるにはRETURNキーを,中止するにはそのほかのキーを押してくださいという指示が出るので従います.

しばらく待つと,最後の方で===> Next steps:としてPATHを通すように指示されます.そこに書かれている2行のコードをターミナルで順に実行します.

$ echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/[ユーザ名]/.zprofile
$ eval "$(/opt/homebrew/bin/brew shellenv)"

ターミナルでヘルプを表示させてみて,無事にコマンドが動作すれば完了です.

$ brew help

PythonをHomebrew経由でインストールする

割と何も考えず,最新のPythonをインストールします.

$ brew install python3

記事執筆時点では,バージョンを確認すると3.9.8がインストールされていました.いい感じです.

$ python3 -V
Python 3.9.8

いちおうHomebrew由来のものであることを確かめてみます.

$ which python3
/opt/homebrew/bin/python3

Visual Studio CodeをHomebrew経由でインストールする

brew cask経由でVisual Studio Codeをインストールできるか探してみます.

$ brew search visual studio code
==> Casks
visual-studio-code ✔
homebrew/cask-versions/visual-studio-code-insiders

あるのでインストールします.

$ brew install visual-studio-code

ちなみに筆者の環境では,上記の操作によりApple Silicon版がインストールされました.

Visual Studio Codeをセットアップする

Visual Studio Codeを使用する際には,Microsoftのアカウントでサインインしておくと環境の共有などが可能で便利です.拡張機能は下記のものを導入しました.

  • Japanese Language Pack for Visual Studio Code
  • Python
  • OpenCV Snippets
  • OpenCV-intellisense

Visual Studio CodeでPythonを使用する際には,どのPythonを利用するか? を聞かれます.Mac標準のPythonではなく,Homebrew経由でインストールしたPythonを選択します.先ほど

$ which python3
/opt/homebrew/bin/python3

で見たパスのPythonを指定してください.

venvで仮想環境を作り,OpenCVなどを導入する

venvはPython3.3以降に標準搭載されている仮想環境の構築ツールです.作成した仮想環境ごとにライブラリのインストールなどが可能です.

今回は~/codesというパスがあった時にPython_OpenCV_Testというフォルダを作り,その環境内でOpenCVのコードを動かすことを想定します.操作を明確に書くとこういうことです.

$ cd ~/codes
$ mkdir Python_OpenCV_Test
$ cd Python_OpenCV_Test

実際に仮想環境を作成するには,このように書きます.

Python_OpenCV_Test $ python3 -m venv (name_of_venv)

(name_of_venv) は好きなように決められますが,.venv とすることが多いようです.つまり典型的には下記のようになります.

Python_OpenCV_Test $ python3 -m venv .venv

仮想環境を有効化するには,下記のコマンドを使います.

Python_OpenCV_Test $ source (name_of_venv)/bin/activate

つまり,名前を.venvにした場合は下記のとおりです.

Python_OpenCV_Test $ source .venv/bin/activate

仮想環境が有効であるときには,ターミナルの行の先頭に仮想環境の名前が書かれます.

(.venv) $

ちなみに,仮想環境を無効化するにはdeactivateとします.

仮想環境が有効化されている状態で,必要なものをpipを使ってインストールします.今回はこれくらいにします.

(.venv) $ pip install numpy
(.venv) $ pip install opencv-python

これで環境は整いました.あとは動かすのみです.

Visual Studio CodeでHello Worldを書く

まず,Visual Studio Codeで「フォルダーを開く」を選択し,先ほどのフォルダを開きます.

VSCode File Menu

次に,「新しいファイル」を選択し,適当な名前 (例えばhello.py) でファイルを作成します.
このとき,ついでに先ほどのフォルダに適当な画像ファイル (例えばtest.jpg) を置いておきます.

hello.py
### インポート
import numpy as np #numpy
import cv2 #OpenCV

### メインプログラム
img = cv2.imread("test.jpg")

# 画像の表示
cv2.imshow("Hello World", img)
cv2.waitKey(0)

# 全てのウインドウをキル
cv2.destroyAllWindows()

このプログラムを実行します.右上にある再生ボタンを押すのが分かりやすいですね.
test.jpgが別ウインドウで表示されれば,OpenCVは正しく使えるようになりました.

6
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
6