Как создать Heatmap точек трекинга в формах c # windows - PullRequest
0 голосов
/ 26 августа 2018

У меня есть база данных, в которой хранятся данные отслеживания движений в некоторых видео.

Я экспортирую эти данные в матрицу ввода int [,] для этой проблемы.А затем попробуйте создать тепловую карту.То, что я получаю до сих пор, выглядит примерно так:

enter image description here

Но на самом деле это не то, чего я хочу.Я хочу что-то вроде тепловых карт, которые вы видите, когда гугляете, например:

enter image description here

Ответы [ 2 ]

0 голосов
/ 26 августа 2018

Другой подход будет хранить «тепло» в пикселях серого цвета. Просто создайте второе изображение того же размера, что и исходное изображение, и подсчитывайте серое значение пикселя при каждом его просмотре. Позже вы можете использовать это значение для расчета размера и цвета круга, который вы хотите нарисовать.

Затем можно положить изображение тепловой карты поверх исходного, и все готово (не забудьте установить прозрачность).

0 голосов
/ 26 августа 2018

Рассматривайте каждое пятно как искусственный круг с центром в этом месте.Круг, который имеет, скажем, радиус 50 пикселей.Теперь просмотрите все пиксели изображения и для каждого подсчитайте все кружки, которые покрывают эти пиксели.Это ваш счет за этот пиксель.Переведите его в цвет: 0: черный / прозрачный, 10: светло-зеленый, 20: желтый и т. Д.После анализа всех пикселей вы получите цвет для каждого пикселя.Напишите растровое изображение, посмотрите на него.Это должно быть что-то близкое к тому, что вы хотите.

Конечно, радиус окружности, цветовые отображения и т. Д. Необходимо адаптировать к вашим потребностям.Кроме того, это, вероятно, не самый лучший / самый простой / самый быстрый алгоритм.

...