direct exact inverse pseudo-polar fft and radon transform using orthogonalizing weights
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 PresentationTRANSCRIPT
![Page 1: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/1.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/5.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/6.jpg)
6
Example – Spectral Decomposition
+ +
=
![Page 7: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/7.jpg)
7
Example – Spectral Decomposition
Time Domain Frequency Domain
![Page 8: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/8.jpg)
8
Example - Denoising
Time Domain Frequency Domain
![Page 9: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/9.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/10.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/11.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/13.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/14.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/15.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/16.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/17.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/18.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/19.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/20.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/21.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/22.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/23.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/24.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/25.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/26.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/27.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/28.jpg)
28
The ideal WeightsThe ideal Weights
Direct IPPFFT
![Page 29: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/29.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/30.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/31.jpg)
31
Modified PP Grid
Direct IPPFFT
![Page 32: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/32.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/33.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/34.jpg)
34
Thank You!
![Page 35: Direct Exact Inverse Pseudo-Polar FFT and Radon Transform Using Orthogonalizing Weights](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/35.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/36.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/37.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062518/56814830550346895db551e6/html5/thumbnails/38.jpg)
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