将图像上具有概率的点可视化为热图

Visualizing points with probability on an image as a heatmap

我有一组点存储在一个名为 pts 的变量中,它是一个 Mx3 矩阵。

其中pts(:,1)是图像上的x坐标,pts(:,2)是图像上的y坐标,pts(:,3)是概率。

如何将图像上的点可视化为热图。积分与 较高的概率以浓红色显示。与所附图片相似。

如有任何帮助,我们将不胜感激!

由于您没有提供数据,我无法使用您的示例,但解决您的问题的一个简单方法是在图像顶部使用 imagesc,坐标为 z值作为颜色。你显然应该玩弄透明度以获得所需的结果。

一些简单的例子:

rgbImage = imread('p.jpg');

dims = size(rgbImage);
p = rand(dims(1),dims(1));

x = linspace(1,dims(1), dims(1));
y = linspace(1,dims(1), dims(1));
A = meshgrid(x,y);
size(A)

imagesc(rgbImage);
hold on
im = imagesc(x,y,p);
im.AlphaData = .5;

原图为:

应用脚本后:

注意

我只是添加了随机噪声,但它很容易适应你想要的