我有一个数据库,其中包含一些视频的眼动数据。
为此,我将这些数据导出到int [,]输入矩阵中。然后尝试创建一个热图。 到目前为止,我得到的是这样的:
但这实际上并不是我想要的。我想要类似Google时看到的热图的东西,例如:
答案 0 :(得分:0)
将每个点作为人造圆圈,以该点为中心进行处理。一个半径为50像素的圆。现在,遍历图像的所有像素,并为每个像素计算覆盖该像素的所有圆圈。这是您对该像素的得分。将其转换为颜色,即0:黑色/透明,10:浅绿色,20:黄色等。分析完所有像素后,您将获得每个像素的颜色。写一个位图,看一下。它应该接近您想要的东西。
当然,圆半径,颜色映射等需要根据您的需要进行调整。另外,这可能不是最好/最简单/最快的算法。
答案 1 :(得分:0)
不同的方法是将“热量”存储在像素的灰度值中。 只需创建第二张与原始图片大小相同的图片,并在每次查看时计算像素的灰度值即可。 稍后,您可以使用该值来计算要绘制的圆的大小和颜色。
然后您可以将热图图像放置在原始图像的顶部,然后完成操作(不要忘记设置透明度)。