Итак, я работаю над этапом обработки модели сегментации для локализации текста.
Итак, для упрощенных вопросов. Ниже я сделал несколько изображений:
[*]Маска (значения каждой области отмечены «1», а остальные ячейки серого цвета по умолчанию имеют значение «0») (1)

Итак, я хочу что-то сделать, чтобы добраться до этого тензора, где каждая область теперь имеет значение суммирования всех его значений. Целевой тензор — изображение ниже (2)
[*]Цель

Вопрос: существует ли метод, который делает то, что мне нужно, в матричном стиле (для более быстрого вычисления) или с помощью некоторых связанных ключевых слов для подобных задач?
Что я пробовал: я пробовал использовать координаты метки для цикла с findContours() OpenCV, но я не знаю, что это лучшая практика для такого рода манипулирование задачей.
Для воспроизведения массива:
импортировать numpy как np маска = np.array([[1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0], [1,0, 1,0, 1,0, 1,0, 0,0, 1,0, 1,0, 0,0], [1,0, 1,0, 1,0, 1,0, 0,0, 1,0, 1,0, 1,0], [0,0, 0,0, 0,0, 0,0, 0,0, 0,0, 1,0, 1,0], [0,0, 1,0, 1,0, 1,0, 0,0, 0,0, 0,0, 0,0], [0.0, 1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0]], dtype=np.float32) (Изменить: добавить массив numpy для воспроизводимости)