|
70 | 70 | <div itemprop="articleBody">
|
71 | 71 |
|
72 | 72 | <h1>Source code for corrct.filters</h1><div class="highlight"><pre>
|
73 |
| -<span></span><span class="c1"># -*- coding: utf-8 -*-</span> |
74 |
| -<span class="sd">"""</span> |
| 73 | +<span></span><span class="sd">"""</span> |
75 | 74 | <span class="sd">Filtered back-projection filters.</span>
|
76 | 75 |
|
77 | 76 | <span class="sd">@author: Nicola VIGANÒ, Computational Imaging group, CWI, The Netherlands,</span>
|
78 | 77 | <span class="sd">and ESRF - The European Synchrotron, Grenoble, France</span>
|
79 | 78 | <span class="sd">"""</span>
|
80 | 79 |
|
| 80 | +<span class="kn">from</span> <span class="nn">abc</span> <span class="kn">import</span> <span class="n">ABC</span><span class="p">,</span> <span class="n">abstractmethod</span> |
| 81 | +<span class="kn">from</span> <span class="nn">collections.abc</span> <span class="kn">import</span> <span class="n">Mapping</span><span class="p">,</span> <span class="n">Sequence</span> |
| 82 | +<span class="kn">from</span> <span class="nn">dataclasses</span> <span class="kn">import</span> <span class="n">dataclass</span> |
| 83 | +<span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Any</span><span class="p">,</span> <span class="n">Optional</span><span class="p">,</span> <span class="n">Union</span> |
| 84 | +<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> |
81 | 85 | <span class="kn">import</span> <span class="nn">numpy</span> <span class="k">as</span> <span class="nn">np</span>
|
| 86 | +<span class="kn">from</span> <span class="nn">numpy.typing</span> <span class="kn">import</span> <span class="n">ArrayLike</span><span class="p">,</span> <span class="n">DTypeLike</span><span class="p">,</span> <span class="n">NDArray</span> |
82 | 87 | <span class="kn">from</span> <span class="nn">scipy.interpolate</span> <span class="kn">import</span> <span class="n">interp1d</span>
|
83 |
| - |
84 |
| -<span class="kn">import</span> <span class="nn">skimage.transform</span> <span class="k">as</span> <span class="nn">skt</span> |
85 |
| - |
86 |
| -<span class="kn">import</span> <span class="nn">matplotlib.pyplot</span> <span class="k">as</span> <span class="nn">plt</span> |
| 88 | +<span class="kn">from</span> <span class="nn">skimage.transform.radon_transform</span> <span class="kn">import</span> <span class="n">_get_fourier_filter</span> |
87 | 89 |
|
88 | 90 | <span class="kn">from</span> <span class="nn">.operators</span> <span class="kn">import</span> <span class="n">BaseTransform</span>
|
89 | 91 | <span class="kn">from</span> <span class="nn">.processing</span> <span class="kn">import</span> <span class="n">circular_mask</span>
|
90 | 92 |
|
91 |
| -<span class="kn">from</span> <span class="nn">typing</span> <span class="kn">import</span> <span class="n">Union</span><span class="p">,</span> <span class="n">Sequence</span><span class="p">,</span> <span class="n">Optional</span><span class="p">,</span> <span class="n">Any</span> |
92 |
| -<span class="kn">from</span> <span class="nn">numpy.typing</span> <span class="kn">import</span> <span class="n">ArrayLike</span><span class="p">,</span> <span class="n">DTypeLike</span><span class="p">,</span> <span class="n">NDArray</span> |
93 |
| - |
94 |
| -<span class="kn">from</span> <span class="nn">abc</span> <span class="kn">import</span> <span class="n">ABC</span><span class="p">,</span> <span class="n">abstractmethod</span> |
95 |
| -<span class="kn">from</span> <span class="nn">dataclasses</span> <span class="kn">import</span> <span class="n">dataclass</span> |
96 |
| -<span class="kn">from</span> <span class="nn">collections.abc</span> <span class="kn">import</span> <span class="n">Mapping</span> |
97 | 93 |
|
98 | 94 | <span class="k">try</span><span class="p">:</span>
|
99 | 95 | <span class="kn">import</span> <span class="nn">pywt</span>
|
@@ -586,7 +582,7 @@ <h1>Source code for corrct.filters</h1><div class="highlight"><pre>
|
586 | 582 | <span class="sd"> """</span>
|
587 | 583 | <span class="n">prj_size_pad</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">get_padding_size</span><span class="p">(</span><span class="n">data_wu</span><span class="o">.</span><span class="n">shape</span><span class="p">)</span>
|
588 | 584 |
|
589 |
| - <span class="bp">self</span><span class="o">.</span><span class="n">fbp_filter</span> <span class="o">=</span> <span class="n">skt</span><span class="o">.</span><span class="n">radon_transform</span><span class="o">.</span><span class="n">_get_fourier_filter</span><span class="p">(</span><span class="n">prj_size_pad</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">filter_name</span><span class="p">)</span> |
| 585 | + <span class="bp">self</span><span class="o">.</span><span class="n">fbp_filter</span> <span class="o">=</span> <span class="n">_get_fourier_filter</span><span class="p">(</span><span class="n">prj_size_pad</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">filter_name</span><span class="p">)</span> |
590 | 586 | <span class="bp">self</span><span class="o">.</span><span class="n">fbp_filter</span> <span class="o">=</span> <span class="n">np</span><span class="o">.</span><span class="n">squeeze</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">fbp_filter</span><span class="p">)</span> <span class="o">*</span> <span class="n">np</span><span class="o">.</span><span class="n">pi</span> <span class="o">/</span> <span class="p">(</span><span class="mi">2</span> <span class="o">*</span> <span class="n">data_wu</span><span class="o">.</span><span class="n">shape</span><span class="p">[</span><span class="o">-</span><span class="mi">2</span><span class="p">])</span>
|
591 | 587 |
|
592 | 588 | <span class="k">if</span> <span class="bp">self</span><span class="o">.</span><span class="n">use_rfft</span><span class="p">:</span>
|
|
0 commit comments