以下のコードでは、読み込んだ画像の座標(4692,2955)を中心とする半径900の円を描き、その円周上の輝度の合計を求めて出力しています。
この半径の値を800から1000まで順番に変化させ、輝度の合計が最大となる半径rを求めたいです。
import cv2 import numpy as np img = cv2.imread('circle.png') img_mask = np.zeros(img.shape[:2], dtype=np.uint8) cv2.circle( img_mask, (4692,2955), #円の中心座標 900, #円の半径 <-ここに800~1000まで順番に代入したい 1, thickness=30, lineType=cv2.LINE_4, shift=0) img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) ret = np.sum(img, where=img_mask == 1) print(ret)
半径rをr=list(range(800,1001))
としてfor文を用いて順番に入れていけば良いのかなと思うのですが、具体的なコードの書き方がわからず困っています。
詳しい方お力をお借りしたいです。
回答1件
あなたの回答
tips
プレビュー