38
Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights Ofer Levi Department of Industrial Engineering and Management Ben-Gurion University of the Negev Beer Sheva, Israel On sabbatical leave at the Institute for Computational and Mathematical Engineering, Stanford University June 23, 2022 Summer School at Inzell

Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

  • Upload
    glora

  • View
    52

  • Download
    0

Embed Size (px)

DESCRIPTION

Summer School at Inzell. Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights. Ofer Levi. Department of Industrial Engineering and Management Ben-Gurion University of the Negev Beer Sheva, Israel - PowerPoint PPT Presentation

Citation preview

Page 1: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

Ofer LeviOfer Levi

Department of Industrial Engineering and ManagementBen-Gurion University of the NegevBeer Sheva, Israel

On sabbatical leave at the Institute for Computational and Mathematical Engineering, Stanford University

Department of Industrial Engineering and ManagementBen-Gurion University of the NegevBeer Sheva, Israel

On sabbatical leave at the Institute for Computational and Mathematical Engineering, Stanford University

April 21, 2023

Summer School at Inzell

Page 2: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

Mathematical and statistical modeling of physical and biological processes and systems

Inverse problems solving using Sparse Representation and Compressed Sensing

High dimensional image analysis and processing Large scale Optimization, Parallel and Distributed Computing Numerical Analysis and Matrix Computation

My research interests

Page 3: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

3

Lecture StructureLecture Structure

Background• Rectilinear DFT: General Definition and Properties

• Polar DFT: Importance and difficulties

• The Pseudo-Polar FFT (PPFFT): Definition and Properties

• The Fast Slant-Stack Algorithm

Direct and Exact Inverse PPFFT (IPPFFT) Conclusions

Page 4: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

4

1D DFT: General Definition and Properties1D DFT: General Definition and Properties

]1,0[,1

1

0

/2ˆ

ˆ)(,:

nkn

n

j

nkjijk

nn

exx

xxFCCF

nkjijk eAAxx

n

/21,ˆ

kjjk AAIAA ,*

Background – 1D DFT

Matrix-vector notation

]1,0[,1 1

0

/2ˆ

njn

n

k

nkjijk exx

Reconstruction (IDFT)

)sin()cos( xixeix

Page 5: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

5

1D DFT: Computability

Direct evaluation of the 1D DFT costs o(n2)

FFT – an n·log(n) DFT Algorithm

12

,0ˆˆˆ

ˆˆˆ/2

2

/2

nk

k

nki

knk

k

nki

kk

zwx

zwx

ee

]1,0[,1

1

0

/2ˆ

nkn

n

j

nkjijk exx

12

,012

2 nj

jj

jj

xz

xw

Background – 1D DFT

Page 6: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

6

Example – Spectral Decomposition

+ +

=

Page 7: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

7

Example – Spectral Decomposition

Time Domain Frequency Domain

Page 8: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

8

Example - Denoising

Time Domain Frequency Domain

Page 9: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

9

2D DFT – Cartesian Grid2D DFT – Cartesian Grid

]1,0[2,]1,0[1,

1

0

1

0

)//(2

2 1

2211

2121

1ˆ̂

ˆ̂)(,:

nkmk

m

j

n

j

nkjmkjijjkk

mnmn

exmn

x

xxFCCF

)/(21

0

1

0

)/(2 22

2 1

11

2121

11ˆ̂ mkjim

j

n

j

mkjijjkk eex

nmx

Background – 2D DFT

Direct evaluation → o(m2n2)

Page 10: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

10

2D FFT

A total of o(Nlog(N)), N=mn

1. Apply 1D FFT for each column

n times mlog(m)

2. Apply 1D FFT for each row

m times nlog(n)

Same for 2D IFFT and for higher dimensions

Background – 2D DFT

Page 11: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

Compression, Denoising

Spectral Analysis

11

Fast Convolution/Correlation - n·log(n) instead of n2

Trigonometric Interpolation – Shift Property

Applications of rectilinear 2D FFT

YXZYXZ ˆˆˆ* Convolution Theorem -

Background – 2D DFT

Page 12: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

12

Polar DFT

],0[],12/,2/[,)sin(,)cos(

,

1

0

1

0

/)(2

21

2 1

2211

2121

1ˆ̂

nnrrkrk

n

j

n

j

nkjkjijjkk ex

nx

1

0

1

0

/))sin()cos((2

2 1

21

21

1ˆ̂n

j

n

j

njjrijjr ex

nx

Difficulties:

1 – Impossible to separate to series of 1D FFTs

2 – Non Orthogonal (Ill Conditioned)

Background – Polar DFT

Page 13: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

13

Polar DFT

Direct Polar DFT is impractical – o(N2) and no direct inverse

Trade off between time and accuracy

Common Solution – Interpolation to and from Cartesian Grid with Oversampling

Background – Polar DFT

Page 14: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

14

Importance of Polar DFT

MRI – Reconstruction from Polar Grid CT – Reconstruction from Projections

)(ˆ̂

)(

),(),(

)sin(),cos(

)sin()cos(

11

rr

yxr

fFrR

dxdyyxfrRy x

Projection-Slice Theorem

Background – Polar DFT

Accurate Rotation (Shift in Polar Coordinates) Rigid body Registration

Page 15: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

15

1

2,

2;,]1,[;

2 12

nnm

n

mlknnl

lkBV

The Pseudo-Polar FFT (PPFFT)(Averbuch et. al.)The Pseudo-Polar FFT (PPFFT)(Averbuch et. al.)

1

2,

2;,]1,[;

2 21

nnm

n

mlknnl

lkBH

Pseudo-Polar FFT

Basically

Horizon

tal

Basically Vertical

- Concentric squares

- Equally sloped lines

A total of 4n2 grid points

Page 16: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

16

The Pseudo Polar FFT

1

0

1

0

/)2(BH

2 1

221

21

1ˆ̂n

j

n

j

nmjnjlijjlm ex

nx

n

leex

nnx nmji

n

j

n

j

nljijjlm

;11ˆ̂ // 2

2 1

1

21

21

0

1

0

)2(2BH

12

,2

,1

1

0

/2ˆ nnkn

n

j

nkjijk exx

Fractional FFT – o(nlog(n))

Pseudo-Polar FFT

Page 17: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

17

Fractional FFT Algorithm (D. Bailey and P. Swarztrauber 1990)

]1,0[

]1,0[

]12,[

]1,0[

]12,[

]1,0[

;ˆ.4

;.3

;

;.2

;0

;.1

/

12

0

/)2(

/

/

2

2

2

2

nk

nk

nnj

nj

nnj

nj

knki

k

jk

n

jjk

nnji

nji

j

njij

j

wex

zyw

e

ez

exy

]1,0[;ˆ1

0

/2

nkn

j

njkijk exx

Page 18: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

18

Some basic facts about Toeplitz Matrices

T has a Toeplitz structure if Tjk=f(j-k), i.e. T has constant diag’s

Any n by n Toeplitz matrix T can be expanded into a 2n by 2n circulant Matrix C as follows:

TS

STC Where S is also Toeplitz

A circulant Matrix C can be diagonalyzed using the DFT Matrix F as follows: C=FDF-1, D=Diag(v) where v is the Fourier transform of the first column of C

Sx

Txx

TS

ST

0

Tx can be computed in nlog(n) flops by doing the following

This procedure is very similar to the FFFT Algorithm!

Page 19: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

19

FFFT and Structured Matrices

nkjijk eVVxx

n

/21,ˆ FFFT in Matrix-vector notation

What is the structure of V ? V is symmetric Vandermonde

Theorem : A symmetric Vandermonde Matrix V can be decomposed as V=DTD where T is Toeplitz

Proof: If V is symmetric Vandermonde then there exist a unique scalar β such that Vjk= β-2jk

Define Dj= βjk and T=DVD 2)( kj

jkT

Reminder: if V=V(a) then Vjk=ajk

V=Vt => Vjk=ajk

Page 20: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

20

The PPFFT Algorithm

A total of o(Nlog(N)), N=n2

1. 1D FFT for each 0-padded column

n times 2nlog(2n)

2. Apply Fractional FFT for each row

With α=l/n 2n times nlog(n)

Pseudo-Polar FFT

Repeat the same procedure for the transposed image matrix to compute the BH coefficients

Page 21: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

21

The PPFFT – Matrix notation

A can be implicitly applied in O(Nlog(N)) operations

221BV

21

221BH

21

22

/)2(,

/)2(,

4

11,

,

nnjmjlijjlm

nmjnjlijjlm

BV

BHnn

en

Aen

A

A

AACA

Denote the Adjoint PPFFT by A*A* can be also implicitly applied in o(Nlog(N))

Pseudo-Polar FFT

Page 22: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

22

Use CGLS or LSQR for the Normal Equations

Inverse PPFFTInverse PPFFT

yAAxASolve **

)(minarg2

yAuxu

yWAxAWA 22* *~

Pseudo-Polar FFT

A problem: A is ill conditioned, k(A) is proportional to n

Solution: Solve

W is diagonal when each diagonal element is the grid point radius of the corresponding PPFFT coefficient

If a zero residual solution exists then xx ~

Page 23: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

23

Weighted PPFFTWeighted PPFFT

Pseudo-Polar FFT

- Each coefficient is multiplied by its grid point radius

- The weights compensates for the non-uniform grid sampling

- Experimental result:

2.1)( 2* AWAK

The weighted IPPFFT converges within 4-5 iterations

Page 24: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

24

Applications of the PPFFT

Fast and Accurate interpolation to PFT Fast and Accurate interpolation to Spiral FT Fast Slant-stack – An nlog(n) Radon Transform Fast and Accurate Rotations 3D Pseudo Spherical FFT and Radon

Pseudo-Polar FFT

Page 25: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

25

Theorem:

There exists W, a Real Positive Diagonal Matrix

such that:

Direct Inverse PPFFTDirect Inverse PPFFT

IAWA 2*

Direct IPPFFT

yWAx 2*If y belongs to the image of A then:

The elements of W can be rapidly pre-calculated for any given n

Page 26: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

26

Problem formulationProblem formulation

2222 4442* ,, nnnn RARWIAWA

- 4n4 constraints

- 4n2 variables (W is diagonal)

The problem is over-determined

There is no solution for an arbitrary A

and a diagonal W

Direct IPPFFT

Page 27: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

27

Finding the Ideal weights

1. Experiments showed that the over-determined system is solvable for n≤8

)(),(, 244

2*

24

IvecbWdiagxCM

bMxIAWAnn

222 442 ~,

~

~~

nnn RbCM

bxMbMx

System Reduction

2. The under-determined reduced system is solvable. The weights could be computed numerically for n≤323. The reduced system could be solved by a fast iterative FFT based solver within o(n2log(n)) operations

Direct IPPFFT

Page 28: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

28

The ideal WeightsThe ideal Weights

Direct IPPFFT

Page 29: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

29

Fast solver for the ideal weights

nosnosnnosos CCA 21

21:,

os1n slopes and os2n radiuses

Define: PPFFTos1,os2 = PPFFT with over-sampling ration = os1·os2

The Conventional PPFFT can be denoted as PPFFT2,2

otherwise

nnj

bRb

Wdiagx

jn

osososos

;02

;1~,

~

)(

2

2,,

2

2121

Define:

bxA osososos

~2121 ,

*2/,2/ If x exists it satisfies -

Direct IPPFFT

Page 30: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

30

Existence of ideal weights

Direct IPPFFT

bxA osososos

~2121 ,

*2/,2/

*2/,2/ 21 ososA

The system has a solution if

is invertible

There is no solution for PPFFT2,2 in its standard form

since is singular*1,1A

For a slightly modify PP grid solution exists. It can be verified using the Vandermonde structure of A and the fact that the modified grid has distict set of points

Page 31: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

31

Modified PP Grid

Direct IPPFFT

Page 32: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

32

Error analysis

))((minarg

)(minarg

22

21

yAuWx

yAux

u

u

yAxryy ~,~

rWAxrWAAxWArWAyWAyWAx

rAAAxrAAAAxAAA

rAAAyAAAyAAAx

2*2*2*2*2*2*2

*1**1**1*

*1**1**1*1

~)()()(

)(~)()(

12*1*2* )( xxxxAAAWA

Page 33: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

Conclusions

Matrix approach can be valuable for better understanding and analysis of discrete signal and image transformations

33

The Pseudo-Polar Fourier Transform (PPFFT) posses several attractive computational properties

The PPFFT combines the best properties of both the Cartesian FT and the Polar FT

Can be generalized to higher dimensions

Provides fast and accurate discrete Radon Transform

Direct inverse

Page 34: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

34

Thank You!

Page 35: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

35

The Slow Slant-Stack Transform

1. Zero-pad the image from the left and the right (BV lines)

2. Shear the padded image in a θ angle using trigonometric interpolation via FFT

3. Sum the sheared image array column-wise to get the θ-projection

Page 36: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

36

The Fast Slant-Stack Algorithm

Backprojections of SS coefficients

)/sin(

)sin(/

12/

2/2

12/

2/

)(

)(),(),(~

),(~

),(

ltl

tltil

n

nun

n

nu

etD

vyDvuIyuI

tsuuIItsxySS

Dl(t) is an interpolating kernel

1

2,

2,,),(

~),(

nnvuvuIvuI

Page 37: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

37

The Fast Slant-Stack transform

Projection-Slice Theorem

For a given n by n discrete image

1. Compute the PPFFT coefficients

2. Apply 1D IFFT to each vector of “same slope” coefficients in the PPFFT coefficients array

1,,1,,2

1,,2

1,1

1,,1,,2

1,,2

1,1

;

;

nnntnn

nnntnn

stsyxBV

stsxyBH

Slant-Stack LinesUniform horizontal /vertical spacing in each projection !

Page 38: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights

38

ConclusionsConclusions

- A direct solution for an important inverse problem

- A direct result – Direct inverse for the Fast Slant-Stack

- Can be generalized to higher dimensions

- A new methodology for LS problem – pre-computation of weights

- Various Applications