Plot 2D images in 3D scatter plot

13 visualizaciones (últimos 30 días)
Gregor
Gregor el 25 de Oct. de 2018
Comentada: ACHAMMA JACOB el 30 de En. de 2019
Hello,
I recorded someone moving in front of a camera and now I have a 3D scatter plot of points that track that person's eyes (red and green in the picture below) over x, y and time. I want to insert single frames at specific time locations to show the current status of the input frame. How do I insert (transparent) 2D images into 3D plots?
Now I know how to create surfaces of images, and I also tried playing with hgtransform. However I'm not able to place both scatter3 and image in the same plot. They always end up on separate axes. I think those 2 links are related:
Thanks for your help

Respuesta aceptada

Oliver Woodford
Oliver Woodford el 26 de Oct. de 2018
h = surface(X, Y, Z, im, 'facecolor', 'texturemap', 'edgecolor', 'none');
alpha(h, 0.5);
X, Y, and Z are each 2x2 matrices containing the x, y and z coordinates of the 4 corners of your image, im.
  5 comentarios
Oliver Woodford
Oliver Woodford el 9 de Dic. de 2018
The vol3d method can do what you want, so it is possible. The relevant lines are:
opts = {'cdatamapping',[],'alphadatamapping',[],'facecolor','texturemap','edgealpha',0,'facealpha','texturemap'};
surface(x,y,z,cslice,'alphadata',aslice,opts{:});
From that code it doesn't look like AlphaData does need to be 2x2.
ACHAMMA JACOB
ACHAMMA JACOB el 30 de En. de 2019
how to convert a jpg binarized image into scatter plot if we doesnot have the data points?

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Surface and Mesh Plots en Help Center y File Exchange.

Productos


Versión

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by