Scaling an image then overlaying data on top of it

3 visualizaciones (últimos 30 días)
Josh Tome
Josh Tome el 4 de Nov. de 2022
Comentada: Matt J el 4 de Nov. de 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 comentario
Josh Tome
Josh Tome el 4 de Nov. de 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.

Iniciar sesión para comentar.

Respuesta aceptada

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

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Images en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by