gpt4 book ai didi

image - 我如何将 "plot"图像放在另一个具有不同颜色图的图像之上?

转载 作者:太空宇宙 更新时间:2023-11-03 20:25:57 25 4
gpt4 key购买 nike

我有两张图片,一张是 100x100,我想用灰度绘制,另一张是 20x20,我想用另一个颜色图绘制。后者应叠加在前者之上。

这是我目前的尝试:

A = randn(100);
B = ones(20);
imagesc(A);
colormap(gray);
hold on;
imagesc(B);
colormap(jet);

这有几个问题:

  1. 我无法更改较小图像的偏移量。 (它们总是共享左上角的像素。)
  2. 它们具有相同的颜色图。 (第二个 colormap 更改所有像素的颜色。)
  3. 像素值在合成图像上标准化,因此如果第二幅图像引入新的极值,则第一幅图像会发生变化。两个图像的缩放比例应该是分开的。

我该如何解决这个问题?

我想要一个与此类似的效果,除了我的彩色叠加层是矩形的而不是摆动的:

enter image description here

最佳答案

只需更改它,以便为 A 传递完整且正确的颜色矩阵(即 100x100x3 矩阵),而不是让它决定:

A = rand(100); % Using rand not randn because image doesn't like numbers > 1
A = repmat(A, [1, 1, 3]);
B = rand(20); % Changed to rand to illustrate effect of colormap
imagesc(A);
hold on;
Bimg = imagesc(B);
colormap jet;

要设置 B 的图像在其父轴内的位置,您可以使用其 XData 和 YData 属性,当此代码完成时,它们都设置为 [1 20]。第一个数字指定图像中最左边/最上面点的坐标,第二个数字指定图像中最右边/最低点的坐标。如果图像与原始尺寸不匹配,它将拉伸(stretch)图像。

例子:

xpos = get(Bimg, 'XData');
xpos = xpos + 20; % shift right a bit
set(Bimg, 'XData', xpos);

关于image - 我如何将 "plot"图像放在另一个具有不同颜色图的图像之上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15575844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com