Pagina 1 di 1

Dubbio phase unwrapping di Goldstein

MessaggioInviato: 6 apr 2014, 11:01
da giuggiolo
Ciao ragazzi,

Per un progetto universitario devo sviluppare un programma C++ che implementi l'algoritmo di phase unwrapping di Goldstein qui descritto.
Sono al primo passo nel quale dovrei determinare i residui (descritto a pagina 5 del PDF linkato). In sostanza si tratta di scansionare la matrice di input delle fasi wrapped prendendo gruppi di 4 pixel in quadrati 2x2 e calcolare la somma delle differenze dei loro valori lungo un percorso in senso orario.

Prendiamo quindi l'esempio dato nel paper. La matrice di input è

Codice: Seleziona tutto
0.0 0.1 0.2 0.3
0.0 0.0 0.3 0.4
0.9 0.8 0.6 0.5
0.8 0.8 0.7 0.6


Il residuo centrale è calcolato sull'array 2x2

Codice: Seleziona tutto
       d1
   0.0 → 0.3
d4  ↑    ↓   d2
   0.8 ← 0.6
       d3


Nel paper il residuo di questa matrice vale 1. Calcoliamolo:
d1 = 0.3 - 0.0 = 0.3
d2 = 0.6 - 0.3 = 0.3
d3 = 0.8 - 0.6 = 0.2
d4 = 0.0 - 0.8 = -0.8
residuo = d1 + d2 + d3 +d4 = 0

Mmmm, il risultato non è quello atteso.
Analizziamo meglio il problema. Prendo una generica matrice 2x2

Codice: Seleziona tutto
a b
c d

Il residuo sarà in generale

residuo = b - a + d - b  + c - d + a - c = 0

Il path è quindi sempre conservativo, anche se in tutti i paper ed esempi in giro per la rete si hanno residui pari a 1 e -1 (e proprio su questi si basano poi gli step successivi dell'algoritmo).

Altri paper in cui se ne parla sono
  • Questo a pag 22 (numero di pagina del PDF)
  • Questo alla slide 10
  • Qui a pagina 15 (numero di pagina del PDF)
  • Qui un esempio di codice che implementa lo stesso algoritmo, tra la 41esima e la 53esima riga.

Il calcolo è banale, eppure sembro essere l'unico con questo problema. Cosa sto sbagliando?

Grazie in anticipo
Giulio

Re: Dubbio phase unwrapping di Goldstein

MessaggioInviato: 8 apr 2014, 1:39
da giuggiolo
Ciao ragazzi,
c'è qualcosa che posso fare per chiarire meglio il problema? Magari non l'ho esposto nel modo migliore e non è chiaro cosa si vorrebbe ottenere..
Sono bloccato in questo step e non ne riesco a venire fuori :?

Re: Dubbio phase unwrapping di Goldstein

MessaggioInviato: 8 apr 2014, 8:05
da DirtyDeeds
giuggiolo ha scritto:c'è qualcosa che posso fare per chiarire meglio il problema?


E' un algoritmo che si riferisce a un problema piuttosto specialistico. Se uno non lo conosce, difficile che possa darti consigli, a meno che non si studi prima tutto l'articolo.