![]() |
NFFT 3.6.0
|
NFFT-based discrete Radon transform. More...
#include <stdio.h>#include <math.h>#include <stdlib.h>#include <string.h>#include <complex.h>#include "nfft3mp.h"
Go to the source code of this file.
Macros | |
| #define | NFFT_PRECISION_DOUBLE |
| #define | KERNEL(r) (NFFT_K(1.0)-NFFT_M(fabs)((NFFT_R)(r))/((NFFT_R)S/2)) |
| define weights of kernel function for discrete Radon transform | |
Functions | |
| static int | polar_grid (int T, int S, NFFT_R *x, NFFT_R *w) |
| generates the points x with weights w for the polar grid with T angles and R offsets | |
| static int | linogram_grid (int T, int S, NFFT_R *x, NFFT_R *w) |
| generates the points x with weights w for the linogram grid with T slopes and R offsets | |
| static int | Radon_trafo (int(*gridfcn)(int T, int S, NFFT_R *x, NFFT_R *w), int T, int S, NFFT_R *f, int NN, NFFT_R *Rf) |
| computes the NFFT-based discrete Radon transform of f on the grid given by gridfcn() with T angles and R offsets | |
| int | main (int argc, char **argv) |
| simple test program for the discrete Radon transform | |
NFFT-based discrete Radon transform.
Computes the discrete Radon transform
![\[
R_{\theta_t} f\left(\frac{s}{R}\right)
= \sum_{r \in I_R} w_r \; \sum_{k \in I_N^2} f_{k}
\mathrm{e}^{-2\pi\mathrm{I} k \; (\frac{r}{R}\theta_t)}
\, \mathrm{e}^{2\pi\mathrm{i} r s / R}
\qquad(t \in I_T, s \in I_R).
\]](form_304.png)
by taking the 2D-NFFT of 




Definition in file radon.c.
| #define KERNEL | ( | r | ) | (NFFT_K(1.0)-NFFT_M(fabs)((NFFT_R)(r))/((NFFT_R)S/2)) |
|
static |
|
static |
|
static |
computes the NFFT-based discrete Radon transform of f on the grid given by gridfcn() with T angles and R offsets
Definition at line 114 of file radon.c.
References fft(), FFTW_INIT, KERNEL, MALLOC_F, MALLOC_F_HAT, MALLOC_X, PRE_FULL_PSI, PRE_LIN_PSI, PRE_PHI_HUT, and PRE_PSI.
Referenced by main().
| int main | ( | int | argc, |
| char ** | argv | ||
| ) |
simple test program for the discrete Radon transform
Definition at line 206 of file radon.c.
References linogram_grid(), polar_grid(), and Radon_trafo().