Need help with Moving-Least-Squares?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

177 Stars 47 Forks MIT License 12 Commits 2 Opened issues


Implementation of three algorithms of image deformation using moving least squares.

Services available


Need anything else?

Contributors list

# 421,045
4 commits
# 186,524
2 commits

Moving Least Squares (MLS)

Update: 2020-09-25 No need for so-called inverse transformation. Just transform target pixels to the corresponding source pixels.


Moving least squares is a method of reconstructing continuous functions from a set of unorganized point samples via the calculation of a weighted least squares measure biased towards the region around the point at which the reconstructed value is requested.

In computer graphics, the moving least squares method is useful for reconstructing a surface from a set of points. Often it is used to create a 3D surface from a point cloud through either downsampling or upsampling.


  • Affine deformation
  • Similarity deformation
  • Rigid deformation


  • Toy

Affine deformation

Similarity deformation

Rigid deformation

  • Monalisa

Rigid deformation

  • Cells

Rigid Deformation

Code list

    : Implementation of the algorithms
    : Demo program
    : TIF file reader
    : Demo program


[1] Schaefer S, Mcphail T, Warren J. Image deformation using moving least squares[C]// ACM SIGGRAPH. ACM, 2006:533-540.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.