
How to Overlap two maps extracted from two methods?
3 ビュー (過去 30 日間)
古いコメントを表示
Dear MATLAB Experts,
I have a query to overlap two maps extracted from two methods. I have attached .mat file and maps obtained (map1.jpg, map2.jpg), and a reference image where two maps are overlapping.
I need to overlap them with different colors, as given in reference map given below.
Look forward to receive your guidence. Many thanks in advance.

0 件のコメント
採用された回答
DGM
2022 年 4 月 22 日
Depending on what your background image is and how you are going to locate the images atop each other, this may be a start:
load map1.mat
load map2.mat
% reduce the images to a simple binary mask
mask1 = 1-min(imadjust(extraction_fdc1,[0 0.95]),[],3);
mask2 = 1-min(imadjust(extraction_xy,[0 0.95]),[],3);
% create corresponding color fields
color1 = repmat(permute([0.5 0.2 1],[1 3 2]),size(mask1));
color2 = repmat(permute([1 0.2 0.5],[1 3 2]),size(mask2));
% say we have some sort of background image (a map or something)
BG = imread('cameraman.tif');
% display the background image, specifying the image location
imshow(BG,'xdata',[-100 100],'ydata',[-100 100])
hold on
% display the color overlays, specifying the image locations
% apply the masks as alpha
hi = imshow(color1,'xdata',[-100 100],'ydata',[-100 100]);
hi.AlphaData = mask1;
hi = imshow(color2,'xdata',[-100 100],'ydata',[-100 100]);
hi.AlphaData = mask2;

その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!