I have x y z points for the object, I have to increase the number of points to get better view of the object by interpolation

I have x y z points for the object, I have to increase the number of points by interpolation to get better view of the object , what and how can I do that.

2 Comments

I have a binary 3d data of 1800 points, I have created an image using meshgrid and griddata. The points I have after now is 121 in all coordiantes. I have to increase the num,ber of points by interpolation. How to do this

Sign in to comment.

Answers (1)

Read about griddata, scatteredInteprolant.

9 Comments

I have used griddata, I have to interpolate further as their are more points in between to form a better visualizig figure,
Show us the code....it can be done....Also have a look on imresize.
M=load('test_target_4image.mat'); %this is the 3d bonary data of 59x109x1800
%Thereafter finding indices of M corresponding to value 1 which is a 121x1 points for xx1, yy1 and zz1
[x,y] = meshgrid(xx1,yy1); %creating a mesh
z = griddata(xx1,yy1,zz1, x,y);
So I have to increase 121 points by interpolation so that the image has better visibility.
As there are points in between.
Your criteria/ motive is not clear. When you pick the indices of 1 from M which is a 3D image, how you have a image in hand to increase the visibility?
I dont think imresize will be done as interpolation has to give increase value x, y , z points
The image in hand is the one that I got using meshgrid and griddata. Please assume that I have the image, as that part of code is working , please let me know how can I increase my points from 121 by interpolation. after I have the image. This interpolation will provide me more coarser number of pints which are in between the 121 total points. Is this clear?
Your motive is not clear still.... you said xx1, yy1 are the indices from M for which the value is 1 i.e zz1 is 1. Am I right? So for this, though you do inteprolation, the respective value will be 1, there is no point in doing interpolation.
Are you taking about increasing the number of points between (xx1,yy1) alone, where these points form a curve?
xx1, yy1 and zz1 are indices from M. I find x, y from meshgrid taking xx1 , yy1 as input and then use interpolation using girddata to find z. thereafter increasing the number of points between (x,y,z) alone, where these points form a curve

Sign in to comment.

Categories

Find more on Interpolation in Help Center and File Exchange

Tags

Asked:

on 5 Jan 2021

Commented:

on 6 Jan 2021

Community Treasure Hunt

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

Start Hunting!