2d image to 3d surface

a = imread('Sample.jpeg');
surfc(rgb2gray (a), 'EdgeColor','none')
grid on
colormap (jet(50))
shading interp
Im using this code to make a 3d surface, but i got the surface upsite down. Can any one help me please?

Risposte (1)

Star Strider
Star Strider il 22 Apr 2020
Try this:
a = imread('Sample.jpeg');
surfc(rgb2gray (a), 'EdgeColor','none')
grid on
colormap (jet(50))
shading interp
set(gca, 'ZDir','reverse')
.

5 Commenti

agung pratama
agung pratama il 22 Apr 2020
The Z-direction may be reversed, but the color bar still says the table is taller than a hammer.
Star Strider
Star Strider il 22 Apr 2020
What result do you want?
agung pratama
agung pratama il 28 Apr 2020
Modificato: agung pratama il 28 Apr 2020
A 3D graphic, something like this
Star Strider
Star Strider il 28 Apr 2020
That is likely not possible from a planar image. You would need to do some sort of scan (laser, CT, MRI) or something similar (stereoscopy) to extract the shape of the object. A single image itself will not provide that information.
Hi, Star Strider. I have four images of an object (superior view, lateral view, anterior view, posterior view). Can you help me, please?

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by