Scaling an image then overlaying data on top of it

4 Ansichten (letzte 30 Tage)
Josh Tome
Josh Tome am 4 Nov. 2022
Kommentiert: Matt J am 4 Nov. 2022
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 Kommentar
Josh Tome
Josh Tome am 4 Nov. 2022
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.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Matt J
Matt J am 4 Nov. 2022
Bearbeitet: Matt J am 4 Nov. 2022
[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
  2 Kommentare
Josh Tome
Josh Tome am 4 Nov. 2022
Awesome! Thanks for the speedy reply.
Matt J
Matt J am 4 Nov. 2022
You're very welcome, but if you are satisfied with the answer, please Accept-click it.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Images finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by