OpenCV で点や線の描画(OpenCV,Python を使用)
【目次】
【サイト内の OpenCV 関連ページ】
- OpenCV について [PDF] , [パワーポイント]
- OpenCV のインストール,画像表示を行う C++ プログラムの実行手順: 別ページ »で説明
- OpenCVとPythonを活用した画像・ビデオ処理プログラム: 別ページ »にまとめ
- OpenCV 4 の C/C++ プログラム: 別ページ »にまとめている.
【OpenCV の公式情報】
- OpenCV の公式ページ: https://opencv.org
- GitHub の OpenCV のページ: https://github.com/opencv/opencv/releases
前準備
Python のインストール(Windows,Ubuntu 上)
Python 3.10 のインストール(Windows 上)
Pythonは,プログラミング言語の1つ.
【手順】
- Windows で,コマンドプロンプトを管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)
- 次のコマンドを実行
次のコマンドは,Python ランチャーとPython 3.10をインストールする.
【関連する外部ページ】
- Python の公式ページ: https://www.python.org/
【サイト内の関連ページ】
【関連項目】 Python
- Windows での Python 3.10,関連パッケージ,Python 開発環境のインストール(winget を使用しないインストール): 別ページ »で説明
- Ubuntu では,システム Pythonを使うことができる.Python3 開発用ファイル,pip, setuptools のインストール: 別ページ »で説明
【サイト内の関連ページ】
- Python のまとめ: 別ページ »にまとめ
- Google Colaboratory の使い方など: 別ページ »で説明
【関連する外部ページ】 Python の公式ページ: https://www.python.org/
Ubuntu のシステム Python
Ubuntu では,システム Pythonを使用できる.Python 用 opencv-python, numpy のインストール
Windows でのインストール
- Windows で,コマンドプロンプトを管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)
- インストールの実行
次のコマンドは,旧バージョンのものを削除し,Python 用 opencv-python のインストールを行う. 「python -c "import sys, cv2; print(f'Python version: {sys.version}\nOpenCV version: {cv2.__version__}')"」はインストールできたかの確認のため,バージョンを表示している.
python -m pip uninstall -y opencv-python python -m pip uninstall -y opencv-python-headless python -m pip uninstall -y opencv-contrib-python python -m pip install -U opencv-python opencv-contrib-python numpy python -c "import sys, cv2; print(f'Python version: {sys.version}\nOpenCV version: {cv2.__version__}')"
Ubuntu でのインストール
- インストールの実行
次のコマンドは,Python 用 opencv-python のインストールを行う. 「python3 -c "import sys, cv2; print(f'Python version: {sys.version}\nOpenCV version: {cv2.__version__}')"」はインストールできたかの確認のため,バージョンを表示している.
sudo apt install -y python3-opencv python3-numpy python3 -c "import sys, cv2; print(f'Python version: {sys.version}\nOpenCV version: {cv2.__version__}')"
画像ファイル home.jpg のダウンロード
https://github.com/opencv/opencv/tree/master/samples/data で公開されている home.jpg を使用する(謝辞:画像の作者に感謝します)
- Windows の場合
次のコマンドを実行.
cd %LOCALAPPDATA% curl -O https://raw.githubusercontent.com/opencv/opencv/master/samples/data/home.jpg
- Ubuntu, RaspberryPi の場合
次のコマンドを実行.
sudo mkdir -p /usr/local/image cd /usr/local/image sudo chown -R $USER . curl -O https://raw.githubusercontent.com/opencv/opencv/master/samples/data/home.jpg
- Google Colaboratory の場合
次のコマンドを実行.
curl -O https://raw.githubusercontent.com/opencv/opencv/master/samples/data/home.jpg
カラー画像と丸や線の重ね合わせ表示
丸の重ねあわせ
- Windows,
Ubuntu, RaspberryPi の場合
jupyter qtconsole
- Python プログラムの実行
Ubuntu, RaspberryPi のときは,「IMROOT=os.environ['LOCALAPPDATA'] + '/'」の行を,「IMROOT="/usr/local/image/"」のように書き換える. Google Colaboratory のときは,「IMROOT=os.environ['LOCALAPPDATA'] + '/'」の行を,「IMROOT="./"」のように書き換える.
import os import cv2 %matplotlib inline import matplotlib.pyplot as plt import warnings warnings.filterwarnings('ignore') # Suppress Matplotlib warnings IMROOT=os.environ['LOCALAPPDATA'] + '/' bgr = cv2.imread(IMROOT + "home.jpg") cv2.circle(bgr, (100, 100), 10, 255, -1) plt.style.use('default') plt.imshow(cv2.cvtColor(bgr, cv2.COLOR_BGR2RGB)) plt.show()

線の重ねあわせ
- Windows,
Ubuntu, RaspberryPi の場合
jupyter qtconsole
- Python プログラムの実行
Ubuntu, RaspberryPi のときは,「IMROOT=os.environ['LOCALAPPDATA'] + '/'」の行を,「IMROOT="/usr/local/image/"」のように書き換える. Google Colaboratory のときは,「IMROOT=os.environ['LOCALAPPDATA'] + '/'」の行を,「IMROOT="./"」のように書き換える.
import os import cv2 %matplotlib inline import matplotlib.pyplot as plt import warnings warnings.filterwarnings('ignore') # Suppress Matplotlib warnings IMROOT=os.environ['LOCALAPPDATA'] + '/' bgr = cv2.imread(IMROOT + "home.jpg") cv2.line(bgr, (100, 100), (200, 300), 10, 5, -1) plt.style.use('default') plt.imshow(cv2.cvtColor(bgr, cv2.COLOR_BGR2RGB)) plt.show()