Augmented Lagrangian Digital Image Correlation and Tracking

Versión 4.2.2 (84.8 MB) por Jin Yang
2D-AL-DIC(Augmented Lagrangian DIC) is a fast, parallel-computing DIC algorithm which also considers global kinematic compatibility.

3.2K descargas

Actualizado 25 Sep 2022

De GitHub

Ver licencia en GitHub

Augmented Lagrangian Digital Image Correlation (2D_ALDIC)

AL-DIC(Augmented Lagrangian DIC) is a fast, parallel-computing hybrid DIC algorithm, which combines advantages of local subset DIC method (fast computation speed, and parallel computing) and finite-element-based global DIC method (guarantee global kinematic compatibility and decrease noise).

Welcome to give the ALDIC code ratings and comments in the MATLAB File Exchange community:

View Augmented Lagrangian Digital Image Correlation and Tracking on File Exchange

Advantages of AL-DIC algorithm

  • [1] It’s a fast algorithm using distributed parallel computing.
  • [2] Global kinematic compatibility is added as a global constraint in the form of augmented Lagrangian, and solved using Alternating Direction Method of Multipliers scheme.
  • [3] Both displacement fields and affine deformation gradients are correlated at the same time.
  • [4] No need of much manual experience about choosing displacement smoothing filters.
  • [5] It works well with compressed DIC images and adaptive mesh. See our paper: Yang, J. & Bhattacharya, K. Exp Mech (2019).;
  • [6] Both accumulative and incremental DIC modes are implemented to deal with image sequences, which is especially quite useful for very large deformations.
  • [7] ALDIC application example -- uniaxial compression experiment:
  • [8] ALDIC is extended with adaptive quadtree mesh to solve complex geometry. Some examples:

Prerequisites & Installation

AL-DIC MATLAB code was tested on MATLAB versions later than R2018a. Both single thread and parallel computing features are included in AL-DIC code. Please download and unzip the code to the MATLAB working path. Then, execute the mail file: main_ALDIC.m.

Code manual

Full size code manual is available at:

Code demo videos

ALDIC Matlab code demo: (Youtube) (Bilibili)

I also attach my EASF webinar to introduce AL-DIC/DVC algorithm and review other DIC/DVC methods: (Youtube) (Bilibili)


Contact and support

Jin Yang (Caltech solid mechanics, PhD '19): -or- I appreciate your comments and ratings to help me further improve this code. If you have other questions, feel free to email me.

Citar como

Yang, J. and Bhattacharya, K. Augmented Lagrangian Digital Image Correlation. Exp.Mech. 59: 187, 2018.

Yang, Jin. Augmented Lagrangian Digital Image Correlation (2D_ALDIC). CaltechDATA, 2020, doi:10.22002/D1.1443.

Ver más estilos
Compatibilidad con la versión de MATLAB
Se creó con R2018b
Compatible con cualquier versión desde R2017b hasta R2020a
Compatibilidad con las plataformas
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!







No se pueden descargar versiones que utilicen la rama predeterminada de GitHub

Versión Publicado Notas de la versión

Fix issues for using radial basis function-based interpolation: some warning & error messages when using "rbf_create" and "rbf_interp". All previous ALDIC releases are available here:


(i) Code Section 3 is improved to estimate the initial guess.
(ii) Matlab file exchange may have some time delay to update. If you cannot find an included manual called "manual_v4.2", please visit this link:


[IMPORTANT correction]: I correct the way to compute "FSubpb2World". Users who don't use code Sections 8-9 or who don't plot shear strains are not affected. Sorry about the inconvenience.


Fix minor bugs in ./plotFiles/ functions: "Plotstrain0", "Plotstrain", and "Plotdisp" where "Undefined function 'interp' for input arguments of type 'double'".


Fix two bugs in functions "Plotdisp_show.m" and "Plotstrain_show.m" for code ALDIC_v4.1. (Thank Dr. Yunlu Zhang for pointing this out!)


(i) Sections 8-9 are edited to convert pixel units to physical units. (ii) Fix several bugs in the quadtree mesh computing. (iii) I would like to thank all the ALDIC users in the past year. Thank you for your many helpful suggestions. Happy new year!


(i) Update code logo; (ii) Examples of applying the main_ALDIC_Quadtree.m to solve deformation of complex geometry are summarized here:


(i) ALDIC is extended with adaptive quadtree mesh and is able to solve complex geometry. (see updated manual and example videos in results_ALDIC_Quadtree_demo folder); (ii) Improve the accuracy of solving image sequences. (iii) Merry Christmas!


i) Fix a bug when using a single cluster; ii) All the strain results are saved in the "ResultStrain" structure after Section 8; iii) Add Section 9 to compute stress components and saved in the "ResultStress".


i) Update Section 3 for computing the initial guess (0-multigrid; 1-whole field search; 2-several clicked seeds search). ii) Extend Section 8 to plot results over the first reference image. Thanks Prof Jose Outeiro for helpful discussions!


i) Add plots to visualize principal strains and von Mises strain; ii) Update manual and fix several typos; iii) A finite element based global DIC code is also uploaded to compare with the ALDIC code at MATLAB File Exchange.


Add my EASF webinar to introduce AL-DIC/DVC algorithm and review other DIC/DVC methods


Add code manual link


fix video bug


fix video bug


fix video bug


fix video bug


fix video bug


fix video bugs


fix video bugs


fix video bug


fix video bug


fix video bug


Fix video issue which is not showing correctly


Add code guide video


Update manual and add recent FAQs; A video demo is available online.


Minor changes: (i)Fix bugs in Section 8 "ComputeStrain.m" to assign ALDIC-direct-computed F; (ii)Fix possible bugs in Section 8 "Plotdisp, Plotstrain, Plotstrain0" in the special conditions when mesh spatial resolution is very fine (stepsize < 4px).


Update manual(v3); update Caltech DATA record.


(i) Correct bugs in Section 3: adaptive initial guess; (ii) Update code licenses;


Update "initial guess fft search method" in an adaptive way, and no need to manually assign search region anymore


(1) Include finite element method in Subproblem 2. (2) Include both accumulative and incremental DIC modes.


Update software filename


Correct typos.


1. Multi-frames image sequence can be loaded automatically. 2. We can Provide output deformation fields with original DIC grayscale images as the background. 3. ALDIC Subproblem 2 can handle both finite difference and finite element scheme.


Update Manual


Change logo image.


Change logo image


Change logo image


Add researchgate paper add


Change folder name.


Para consultar o notificar algún problema sobre este complemento de GitHub, visite el repositorio de GitHub.
Para consultar o notificar algún problema sobre este complemento de GitHub, visite el repositorio de GitHub.