Я хотел бы оцифровать тепловую карту, панель D в этом источнике
image
В качестве первого шага я попытался прочитать изображение в opencv и получить матрицу
import cv2
from pprint import pprint
def read_as_digital(image):
# mage dimensions
h = image.shape[0]
w = image.shape[1]
print(h, w)
pass
if __name__ == '__main__':
image = cv2.imread('ip.jpg', 1)
pprint(image)
read_as_digital(image)
Я мог бы прочитать изображение как матрицу, но я не знаю, как указать начало ячеек (соответствующих различным вспомогательным участкам на панели D изображения) в тепловой карте , наконец, я хочу сопоставить пиксели со значениями.
Любые предложения о том, как действовать, будут действительно полезны
EDIT1:
Я пытался получить значения при нажатии
Например, когда я рассматриваю небольшой подраздел тепловой карты, предоставленной в источнике
Я ожидаю получить среднее значение для каждая ячейка (вокруг желтых точек) на изображении. Нажатие в разных точках дает разные значения. Нажатие на ячейку, которая охлаждена , дает различные значения RGB в разных точках.
Любое предложение о том, как получить среднее значение для каждой ячейки (например, ) будет очень полезно.
РЕДАКТИРОВАТЬ 2:
Я пробовал обновленный код.
Среднее значение для этого ((например, )) работает очень хорошо. Однако существует проблема с ячейкой рядом с ней. Когда я щелкаю по соседней ячейке, среднее значение, отображаемое кодом, относится к 3 ячейкам одного цвета. Было бы очень хорошо, если бы существовал способ ограничить размер ячейки, например, указать границу, по которой среднее значение должно быть вычислено в коде. Изображение, представленное в редактировании 1, имеет 6 строк и 6 столбцов. Если мы рассматриваем это как матрицу 6 на 6, скажем, A, среднее значение должно быть получено для каждой записи Aijth матрицы.