Scaling an image then overlaying data on top of it

3 次查看(过去 30 天)
Hello,
I am attempting to plot some xy data over an image (see attached image). The data I would like to plot (see attached excel file) is a subset of data that contains values of x ranging from (199 to 223), and values of y ranging from (-321 to -298). I also know the xy locations of each of the 4 corners of my image. They would be...
Top Left Corner(x,y) = (4.6,-197.5)
Top Right Corner(x,y) = (397.0,-197.5)
Bottom Left Corner(x,y) = (4.6,-412.9)
Bottom Right Corner(x,y) = (397.0,-412.9)
Is there an easy way to scale the image based on the above corner points so that when I plot the data it is all contained within the boundaries of the image?
Thanks in advance!
  1 个评论
Josh Tome
Josh Tome 2022-11-4
CORRECTION... When I said "I know the xy locations of the corners of my image", I should have said that those are the coordinates I would like the corners of the image to be defined by.

请先登录,再进行评论。

采纳的回答

Matt J
Matt J 2022-11-4
编辑:Matt J 2022-11-4
[X,Y]=readvars('Center of Pressure Data.xlsx');
Y=-Y;
h=imshow(flipud(imread('Overhead View of Human.jpg')),[]);
h.XData=[4.6,397]; xlim(h.XData);
h.YData=[197.5,412.9]; ylim(h.YData);
hold on; scatter(X,Y); hold off

更多回答(0 个)

类别

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

Community Treasure Hunt

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

Start Hunting!

Translated by