OpenCVを使用してPythonで円を描く

OpenCVモジュールを使用してPythonで円を描いてみます。

OpenCVモジュールは、Pythonの標準ライブラリではありませんので、事前にインストールする必要があります。

■Python

Pythonバージョン

今回のPythonのバージョンは、「3.8.2」を使用しています。(Windows10)

■画像を用意する

OpenCVモジュールを使用してPythonで円を描く前に、まず円を描く画像を用意します。

今回は「img_sample.png(500px × 500px)」の水色の画像を用意しました。

保存されている場所は「C:\Users\user\test(フォルダパス)」です。

■円を描く

画像の用意ができましたので、OpenCVモジュールを使用してPythonで円を描くスクリプトを書いていきます。

■コード

import cv2

img= cv2.imread(r'C:\Users\user\test\img_sample.png')

cv2.circle(img, center=(200,200), radius=100, color=(0,0,255),thickness=10)

cv2.imshow('circle',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

インポートで、cv2(OpenCV)モジュールを呼び出して、imread()関数で今回用意した画像を読み込みます。次に、円を作成するために、cv2.circle()関数を使います。()の中には、第1のパラメーターには今回読み込んだ画像を指定し、第2のパラメーターは円の位置を指定します。円の中心がどこにあるかをcenter属性で指定する。今回は(200,200)に指定しています。

第3のパラメーターは、円の長さを指定します。radius属性で指定を行い、今回は半径を「100」に指定しています。4番目のパラメーターは、描く円の色をRGB形式で指定します。今回は(0,0,255)と指定しているため、赤色となります。

5番目のパラメーターは、円の境界線の太さを指定します。今回は太さを「10」に指定しています。

描いた円をcv2.imshow()関数で表示させてみます。

■実行

今回のスクリプトを「draw_circle.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、ウインドウが表示され、今回用意した画像に赤色の円を描くことができました。

■塗りつぶされた円を作成する

PythonでOpenCVモジュールを使い、円を描くことができましたが、塗りつぶされた円を作成することもできます。

■コード

import cv2

img= cv2.imread(r'C:\Users\user\test\img_sample.png')

cv2.circle(img, center=(200,200), radius=100, color=(0,0,255),thickness=-1)

cv2.imshow('circle',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

塗りつぶされた円を作成する場合は、cv2.circle()関数の5番目のパラメーターである円の境界線の太さを変更し、「-1」と指定することが、塗りつぶすことができます。

■実行

「draw_circle.py」を変更し、コマンドプロンプトから実行してみます。

実行してみると、赤色に塗りつぶされた円を描くことができました。

コメント

タイトルとURLをコピーしました