diff --git a/README.md b/README.md index 881d5ee..d2e29c6 100644 --- a/README.md +++ b/README.md @@ -199,10 +199,10 @@ path][matlab-path]. All functions are organized in [packages][matlab-pkg]. ### Testing -To test idvf, run the included demo scripts (`demo_inversion_2d`, -`demo_inversion_3d_z0`, `demo_inversion_3d_zsin`). Each script -demonstrates inversion of a sample forward DVF using 8 different feedback -control settings, and produces the following visualizations: +To test idvf, run `test_idvf` (which simply runs the included demo scripts +`demo_inversion_2d`, `demo_inversion_3d_z0`, and `demo_inversion_3d_zsin`). +Each demo performs inversion of a synthetic forward DVF using 8 different +feedback control settings, and produces the following visualizations: - Deformation of a synthetic grid-like image by the forward DVF. - Spectral measure maps of the forward DVF diff --git a/demo_inversion_2d.m b/demo_inversion_2d.m index 22e1a90..8eeef51 100644 --- a/demo_inversion_2d.m +++ b/demo_inversion_2d.m @@ -329,13 +329,13 @@ % % Alexandros-Stavros Iliopoulos ailiop@cs.duke.edu % -% VERSION +% RELEASE % -% 0.2 - December 21, 2018 +% 1.0.2 - December 21, 2018 % % CHANGELOG % -% 0.2 (Dec 21, 2018) - Alexandros +% 1.0.2 (Dec 21, 2018) - Alexandros % + added IC residual magnitude maps % + added image-space error maps (reference image recovery) % + added control scheme: pointwise optimal control values with @@ -343,7 +343,7 @@ % . changed synthetic reference image to smooth version % . parameter clean-up and explicit visualization options % -% 0.1 (Oct 08, 2018) - Alexandros -% . initial implementation +% 1.0.0 (Oct 08, 2018) - Alexandros +% . initial version % % ------------------------------------------------------------ diff --git a/demo_inversion_3d_z0.m b/demo_inversion_3d_z0.m index 0de5ad9..c66e5b6 100644 --- a/demo_inversion_3d_z0.m +++ b/demo_inversion_3d_z0.m @@ -115,7 +115,7 @@ fprintf( '...visualizing synthetic reference and study images...\n' ); -IRef = util.imageGridSmooth( [szDom zdim], [15 15 5] ); +IRef = util.imageGridSmooth( szDom, [15 15 5] ); IStd = dvf.imdeform( IRef, F ); hFig = vis.mfigure; @@ -339,13 +339,16 @@ % % Alexandros-Stavros Iliopoulos ailiop@cs.duke.edu % -% VERSION +% RELEASE % -% 0.2 - December 21, 2018 +% 1.0.3 - December 21, 2018 % % CHANGELOG % -% 0.2 (Dec 21, 2018) - Alexandros +% 1.0.3 (Mar 23, 2019) - Alexandros +% ! fixed error in synthetic image generation +% +% 1.0.2 (Dec 21, 2018) - Alexandros % + added IC residual magnitude maps % + added image-space error maps (reference image recovery) % + added control scheme: pointwise optimal control values with @@ -353,7 +356,7 @@ % . changed synthetic reference image to smooth version % . parameter clean-up and explicit visualization options % -% 0.1 (Oct 08, 2018) - Alexandros -% . initial implementation +% 1.0.1 (Oct 08, 2018) - Alexandros +% . initial version % % ------------------------------------------------------------ diff --git a/demo_inversion_3d_zsin.m b/demo_inversion_3d_zsin.m index ddae491..8b73b38 100644 --- a/demo_inversion_3d_zsin.m +++ b/demo_inversion_3d_zsin.m @@ -333,21 +333,8 @@ % % Alexandros-Stavros Iliopoulos ailiop@cs.duke.edu % -% VERSION +% RELEASE % -% 0.2 - December 21, 2018 -% -% CHANGELOG -% -% 0.2 (Dec 21, 2018) - Alexandros -% + added IC residual magnitude maps -% + added image-space error maps (reference image recovery) -% + added control scheme: pointwise optimal control values with -% local search, local acceleration, and two-scale iteration -% . changed synthetic reference image to smooth version -% . parameter clean-up and explicit visualization options -% -% 0.1 (Oct 08, 2018) - Alexandros -% . initial implementation +% 1.0.2 - December 21, 2018 % % ------------------------------------------------------------ diff --git a/test_idvf.m b/test_idvf.m new file mode 100644 index 0000000..7909322 --- /dev/null +++ b/test_idvf.m @@ -0,0 +1,75 @@ +% test_idvf.m +% +% Test idvf functionality by running the included demo scripts. +% +% ---------------------------------------------------------------------- +% +% Copyright (C) 2019, Department of Computer Science, Duke University +% +% This program is free software: you can redistribute it and/or modify it +% under the terms of the GNU General Public License as published by the +% Free Software Foundation, either version 3 of the License, or (at your +% option) any later version. +% +% This program is distributed in the hope that it will be useful, but +% WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +% Public License for more details. +% +% You should have received a copy of the GNU General Public License along +% with this program. If not, see . +% +% ---------------------------------------------------------------------- +% + + + +%% ==================== (BEGIN) + +fprintf( '\n***** BEGIN (%s) *****\n\n', mfilename ); + + +%% ==================== RUN DEMO SCRIPTS + +% ---------- 2D demo + +fprintf( ' > press any key to run the 2D demo\n' ); +fprintf( ' ! figures and workspace variables will be cleared !\n' ); +pause + +run( 'demo_inversion_2d' ); + +% ---------- 3D demo (zero z-displacement) + +fprintf( ' > press any key to run the 3D demo (zero z-displacement)\n' ); +fprintf( ' ! figures and workspace variables will be cleared !\n' ); +pause + +run( 'demo_inversion_3d_z0' ); + +% ---------- 3D demo (sinusoidal z-displacement) + +fprintf( ' > press any key to run the 3D demo (sinusoidal z-displacement)\n' ); +fprintf( ' ! figures and workspace variables will be cleared !\n' ); +pause + +run( 'demo_inversion_3d_zsin' ); + + +%% ==================== (END) + +fprintf( '\n***** END (%s) *****\n\n', mfilename ); + + + +%%------------------------------------------------------------ +% +% AUTHORS +% +% Alexandros-Stavros Iliopoulos ailiop@cs.duke.edu +% +% RELEASE +% +% 1.0.3 - March 25, 2019 +% +% ------------------------------------------------------------