Overlay strain map on scan (colored plot over black and white plot)

4 次查看(过去 30 天)
I am attempting to make a graphic for a presentation in which I would like to throw a strain map over a black and white image used for texture correlation. I currently have been unable to create separate colorbars, resulting in a colored scan or a black and white strain map. I've attached an image of what I'm moreorless trying to capture but can't seem to produce.
The code below takes a 400x200 uint8 (for the BW image), and a 400x200 double (for the strain map). The values outside of the strain map in the structure are labeled as NaN. Likewise, transparency is currently set to 1s and 0s accordingly. I haven't included any of my own data here for a reference image or for running the code for privacy reasons.
f3 = figure( 3 );
%Exx strain map
image( dataIMG( :, :, frame ) ); hold on;
imagesc( exx_plot, 'AlphaData', transparency );
colormap( 'jet' );
caxis( [0 0.15] );
colorbar;

采纳的回答

DGM
DGM 2022-6-9
编辑:DGM 2022-6-9
Take the image you want to be grayscale and expand it to mxnx3 so that it isn't colormapped anymore:
For example,
% a grayscale image with some transparency
FG = imread('fg.png');
FGA = imread('fga.png');
opacity = 0.5;
% a grayscale image, but expanded
BG = imread('cameraman.tif');
BG = repmat(BG,[1 1 3]);
imshow(BG); hold on
hfg = imshow(FG);
hfg.AlphaData = FGA*opacity;
colormap(parula)
If you want both images to be colormapped independently, then you'll have to do it by overlaying two axes objects, since each axes can only have one colormap.
  1 个评论
Frederick Houghton
Worked perfectly, thank you!
For anyone that may reference this post: FGA.png is simply a transparency matrix that labels the values to show on the plot and their opacity. For my purposes, I detected where my strain map fit onto the image and filled the borders with NaN values, and then set the strain map to 0.5 as suggested in this answer.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Blue 的更多信息

产品


版本

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by