Data interpolation
- To: mathgroup at smc.vnet.net
- Subject: [mg96220] Data interpolation
- From: hemanth korrapati <hemanthkorrapati at gmail.com>
- Date: Mon, 9 Feb 2009 05:37:52 -0500 (EST)
Hi, I have some 3D point data acquired through a laser range finder. The data is sparse. I need to construct a height field out of this data and as a part of this i have to interpolate heights at some locations {x,y} where the actual data is not available. I want to use B-splines. But it seems that B-splines require uniformly distributed control points, which is not the case with my data. My data cannot form a uniform table which is required by the BSplineSurface function if I sort my data. for some data i got the following error: Interpolation::indim: The coordinates do not lie on a structured tensor product grid. >> So I started using the "ListDensityPlot" function which does a linear interpolation of the data. The interpolation is sufficiently good. But I would like to get an output consisting of list of tuples like {x,y,InterpolatedHeight} at the desired {x,y} locations. Right now I can only see the plot but cannot get the interpolated heights at desired locations({x,y}). Now I have three questions: 1) how do i make my data usable for splines in mathematica ? 2) how do i get the interpolated values at desired {x,y} using "ListDensityPlot" function ? 3) Is there a better way other than the above two methods to interpolate the missing data ? Thank you