# Surface fitting for 3D point cloud acquired by photogrammetry

22 views (last 30 days)
Srinu Vasu on 12 Aug 2019
Answered: Joel Handy on 12 Aug 2019
Hi,
We are trying to fit surface on a 3D point cloud.
• The 3D point cloud is reconstructed from multiple 2D images of a human face (https://doi.org/10.1109/INDICON.2016.7839156)
• The density of the point cloud is not uniform over its span. For example, at nose and eyes, the density is low but complexity is high. For areas such as the forehead and cheeks, it’s the other way.
• At this point, we have only XYZ information of this point cloud.
We want to fit a surface on this point cloud. The approach can consider or neglect the fact that underlying object is a human face.
Any suggestion toward surface fitting will be appreciated.
##### 1 CommentShowHide None
darova on 12 Aug 2019

Sign in to comment.

### Answers (1)

Joel Handy on 12 Aug 2019
Take a look at griddata and scatteredInterpolant
griddata Interpolates scattered data - generally to produce gridded data
Vq = griddata(X,Y,V, xq, yq) where xq is a row vector and yq is a
column vector, expands (xq, yq) via [Xq, Yq] = meshgrid(xq,yq).
[Xq, Yq, Vq] = griddata(X,Y,V, xq, yq) returns the grid coordinates
arrays in addition.
scatteredInterpolant performs interpolation on scattered data that
resides in 2-D or 3-D space. A scattered data set is defined by sample
points X and corresponding values v. A scatteredInterpolant object F
represents a surface of the form v = F(X). Interpolated values vq at
query points Xq are obtained by evaluating the interpolant, vq = F(Xq).
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Categories

Find more on Point Cloud Processing in Help Center and File Exchange

### Community Treasure Hunt

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

Start Hunting!

Translated by