Code covered by the BSD License  

Highlights from
2D phase unwrapping algorithms

3.875
3.9 | 8 ratings Rate this file 122 Downloads (last 30 days) File Size: 41.2 KB File ID: #22504

2D phase unwrapping algorithms

by

Bruce Spottiswoode

 

22 Dec 2008 (Updated )

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 file inspired Goldstein Unwrap2 D R1, Quality Guided Unwrap2 D R1, and Nf2 Ff.

MATLAB release MATLAB 7.5 (R2007b)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (10)
28 Dec 2014 Rang

Rang

 
18 Sep 2014 Peng

Peng

That is great!

26 May 2014 Bahar

Bahar

Helped me a lot!

15 Sep 2012 Tim Zaman

Tim Zaman

Remarkably slow..

Comment only
15 Sep 2012 Tim Zaman

Tim Zaman

 
09 Aug 2012 peter

peter

 
17 Jul 2012 Armin Ka

Armin Ka

Hi,
I need a phase unwrapping algorithm to unwrap the interference phase which is bounded between -pi, pi or 0, 2*pi
Thanks for your help.
A

Comment only
05 Mar 2010 Eric

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.

15 May 2009 Hex

Hex

 
26 Feb 2009 Deva

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?

Updates
23 Feb 2009

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

Contact us