Я хотел бы вычислить среднее значение люминесценции в зависимости от расстояния до центра изображения. Подход, о котором я думаю, заключается в том, чтобы
- вычислить расстояние между пикселями в изображении и центре изображения
- сгруппировать пиксели с одинаковым расстоянием
- вычислить среднее значение пикселей для каждой группы
- график зависимости расстояния от средней интенсивности
Для вычисления первого шага я использую эту функцию:
dist_img = np.zeros(gray.shape, dtype=np.uint8)
for y in range(0, h):
for x in range(0, w):
cy = gray.shape[0]/2
cx = gray.shape[1]/2
dist = math.sqrt(((x-cx)**2)+((y-cy)**2))
dist_img[y,x] = dist
К сожалению, id дает результат, отличный от того, который я вычисляю здесь.
distance = math.sqrt(((1 - gray.shape[0]/2)**2 )+((1 - gray.shape[1]/2 )**2))
когда я проверяю его на пиксель (1,1), я получаю 20 из первого кода и 3605 из второго. Я был бы признателен за предложения о том, как исправить цикл, и подсказки о том, как начать с других точек. Или, может быть, есть другой способ добиться того, чего я хотел бы.