Code covered by the BSD License  

Highlights from
2D phase unwrapping algorithms

3.66667

3.7 | 3 ratings Rate this file 118 Downloads (last 30 days) File Size: 41.17 KB File ID: #22504

2D phase unwrapping algorithms

by Bruce Spottiswoode

 

22 Dec 2008 (Updated 23 Feb 2009)

Implementations of the phase quality path following method and Goldstein's branch cut method.

| Watch this File

File Information
Description

Two 2D phase unwrapping approaches are included:
1. Phase quality guided path following method.
2. Goldstein's branch cut method.

The algorithms are described in:
D. C. Ghiglia and M. D. Pritt, Two-Dimensional Phase Unwrapping:
Theory, Algorithms and Software. New York: Wiley-Interscience, 1998.

Acknowledgements
This submission has inspired the following:
NF2FF
MATLAB release MATLAB 7.5 (R2007b)
Tags for This File  
Everyone's Tags
Tags I've Applied
Add New Tags Please login to tag files.
Comments and Ratings (3)
26 Feb 2009 Deva

Thanks for the contribution!! It is a much more elegant code than the one I was attempting to write from the pseudocode!

As I was testing out the code, I noticed that the algorithm does not go back and unwrap the branch cut pixels, as is described in Ghiglia and Pritt. Perhaps that would be a good addition to the next version?

15 May 2009 Hex  
05 Mar 2010 Eric

Useful for unwrapping small images, but not for large images. A 510x510 array took 25 minutes on my machine. The following improvements need to be made for larger arrays:

1. Implement the "postponed" list described in Ghiglia and Pritt.
2. Avoid using Matlab's unwrap() function for unwrapping a length-two vector. Instead use Itoh's Method for a length 2 vector explicitly:
           D = psi(2)-psi(1);
           delta = atan2(sin(D),cos(D);
           phi = psi(1) + delta;
3. Resize matrices as vectors

This yields about 20X speed improvement for the 510x510 array size.

Please login to add a comment or rating.
Updates
23 Feb 2009

Modified the Goldstein algorithm to allow only part of a phase image to be unwrapped.

Tag Activity for this File
Tag Applied By Date/Time
image processing Bruce Spottiswoode 22 Dec 2008 15:15:27
phase unwrapping Bruce Spottiswoode 22 Dec 2008 15:15:27
phase unaliasing Bruce Spottiswoode 22 Dec 2008 15:15:27
phase unaliasing Chao Xu 25 Aug 2009 13:15:31
image processing xiaonan chen 23 Mar 2011 20:57:40
phase unwrapping xiaonan chen 23 Mar 2011 20:57:47
image processing noor 19 May 2011 02:53:40
phase unaliasing noor 19 May 2011 02:53:43
phase unaliasing Stefan 27 May 2011 09:07:25
phase unwrapping Henrique Costa 29 Jul 2011 16:02:01
phase unaliasing buaa X 26 Dec 2011 04:02:31

Contact us at files@mathworks.com