Augmented Lagrangian Digital Volume Correlation (ALDVC): volumetric displacement and strain measurement based on a hybrid local-global approach. ALDVC is a fast, parallel-computing hybrid DVC algorithm, which combines advantages of local subset method (fast computation speed, and parallel computing) and finite-element-based global method (guarantee global kinematic compatibility and decrease noise).
For full details, and to use this code, please cite our paper:
Yang, J., Hazlett, L., Landauer, A., Franck, C. Augmented Lagrangian Digital Volume Correlation. Experimental Mechanics, 2020 (https://link.springer.com/article/10.1007/s11340-020-00607-3).
Or request full text at:
Code manual is available at:
Advantages of ALDVC algorithm
 It’s a fast algorithm using distributed parallel computing.
 Global kinematic compatibility is added as a global constraint in the form of augmented Lagrangian, and solved using Alternating Direction Method of Multipliers scheme.
 Both displacement fields and affine deformation gradients are correlated at the same time.
 No need of much manual experience about choosing displacement smoothing filters.
 Being able to compute image sequence with multiple image frames, which is especially quite useful for measuring very large deformations.
% ****** ATTENTION ******
% The "x,y,z" or "1-,2-,3-" coordinates in the ALDVC code always correspond to the 1st, 2nd and 3rd indices of Matlab workspace variable. For example, p_meas(:,1) and p_meas(:,2) are the x- & y-coordinates of scattered points.
% This is a little different from some MATLAB image processing functions. % For example, if a 3D image has size MxNxL, in this code, we always have the image size_x=M, size_y=N, size_z=L. If you use some Matlab computer vision/image post-processing function, for example, 'imagesc3D', or 'imshow3D', or 'surf', it will reads size_x=N, size_y=M, size_z=L.
% Please pay attention to this difference.
Contact and support
I appreciate your comments and ratings to help me keep improving this code! Please feel free to follow this code, then you will be notified with all the important updates/corrections in the future.
 regularizeNd. https://www.mathworks.com/matlabcentral/fileexchange/61436-regularizend