.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "examples/processing/background_subtraction.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_examples_processing_background_subtraction.py: Background subtraction ============== If your diffraction data is noisy, you might want to subtract the background from the dataset. Pyxem offers some built-in functionality for this, with the `subtract_diffraction_background` class method. Custom filtering is also possible, an example is shown in the 'Filtering Data'-example. .. GENERATED FROM PYTHON SOURCE LINES 10-35 .. code-block:: Python import pyxem as pxm import hyperspy.api as hs s = pxm.data.tilt_boundary_data() s_filtered = s.subtract_diffraction_background( "difference of gaussians", inplace=False, min_sigma=3, max_sigma=20, ) s_filtered_h = s.subtract_diffraction_background("h-dome", inplace=False, h=0.7) hs.plot.plot_images( [s.inav[2, 2], s_filtered.inav[2, 2], s_filtered_h.inav[2, 2]], label=["Original", "Difference of Gaussians", "H-Dome"], tight_layout=True, norm="symlog", cmap="viridis", colorbar=None, ) .. image-sg:: /examples/processing/images/sphx_glr_background_subtraction_001.png :alt: Original, Difference of Gaussians, H-Dome :srcset: /examples/processing/images/sphx_glr_background_subtraction_001.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-script-out .. code-block:: none [ ] | 0% Completed | 117.55 us [ ] | 0% Completed | 100.44 ms [ ] | 0% Completed | 200.82 ms [ ] | 0% Completed | 301.18 ms [ ] | 0% Completed | 401.70 ms [ ] | 0% Completed | 501.99 ms [ ] | 0% Completed | 602.27 ms [ ] | 0% Completed | 702.55 ms [ ] | 0% Completed | 802.83 ms [ ] | 0% Completed | 903.11 ms [ ] | 0% Completed | 1.00 s [ ] | 0% Completed | 1.10 s [ ] | 0% Completed | 1.20 s [ ] | 0% Completed | 1.30 s [ ] | 0% Completed | 1.40 s [########################################] | 100% Completed | 1.51 s /home/docs/checkouts/readthedocs.org/user_builds/pyxem/envs/latest/lib/python3.10/site-packages/hyperspy/misc/utils.py:1437: UserWarning: Possible precision loss converting image of type float32 to uint8 as required by rank filters. Convert manually using skimage.util.img_as_ubyte to silence this warning. output = function(test_data, **kwargs) [ ] | 0% Completed | 135.80 us/home/docs/checkouts/readthedocs.org/user_builds/pyxem/envs/latest/lib/python3.10/site-packages/hyperspy/misc/utils.py:1360: UserWarning: Possible precision loss converting image of type float32 to uint8 as required by rank filters. Convert manually using skimage.util.img_as_ubyte to silence this warning. output_array[islice] = function(data[islice], **kwargs) [ ] | 0% Completed | 100.39 ms [ ] | 0% Completed | 200.65 ms [ ] | 0% Completed | 300.92 ms [ ] | 0% Completed | 401.18 ms [ ] | 0% Completed | 501.45 ms [ ] | 0% Completed | 601.75 ms [ ] | 0% Completed | 702.05 ms [ ] | 0% Completed | 802.32 ms [ ] | 0% Completed | 902.59 ms [ ] | 0% Completed | 1.00 s [ ] | 0% Completed | 1.10 s [ ] | 0% Completed | 1.20 s [ ] | 0% Completed | 1.30 s [ ] | 0% Completed | 1.40 s [ ] | 0% Completed | 1.50 s [ ] | 0% Completed | 1.60 s [ ] | 0% Completed | 1.70 s [ ] | 0% Completed | 1.81 s [ ] | 0% Completed | 1.91 s [ ] | 0% Completed | 2.01 s [ ] | 0% Completed | 2.11 s [ ] | 0% Completed | 2.21 s [ ] | 0% Completed | 2.31 s [ ] | 0% Completed | 2.41 s [ ] | 0% Completed | 2.51 s [########################################] | 100% Completed | 2.61 s [, , ] .. GENERATED FROM PYTHON SOURCE LINES 36-44 ====================== Filtering Polar Images ====================== The available methods differ for `Diffraction2D` datasets and `PolarDiffraction2D` datasets. Set the center of the diffraction pattern to its default, i.e. the middle of the image .. GENERATED FROM PYTHON SOURCE LINES 44-47 .. code-block:: Python s.calibration.center = None .. GENERATED FROM PYTHON SOURCE LINES 48-49 Transform to polar coordinates .. GENERATED FROM PYTHON SOURCE LINES 49-72 .. code-block:: Python s_polar = s.get_azimuthal_integral2d(npt=100, mean=True) s_polar_filtered = s_polar.subtract_diffraction_background( "radial median", inplace=False, ) s_polar_filtered2 = s_polar.subtract_diffraction_background( "radial percentile", percentile=70, inplace=False, ) hs.plot.plot_images( [s_polar.inav[2, 2], s_polar_filtered.inav[2, 2], s_polar_filtered2.inav[2, 2]], label=["Original (polar)", "Radial Median", "Radial Percentile"], tight_layout=True, norm="symlog", cmap="viridis", colorbar=None, ) .. image-sg:: /examples/processing/images/sphx_glr_background_subtraction_002.png :alt: Original (polar), Radial Median, Radial Percentile :srcset: /examples/processing/images/sphx_glr_background_subtraction_002.png :class: sphx-glr-single-img .. rst-class:: sphx-glr-script-out .. code-block:: none [ ] | 0% Completed | 205.66 us [ ] | 0% Completed | 101.23 ms [ ] | 0% Completed | 201.55 ms [ ] | 0% Completed | 301.86 ms [ ] | 0% Completed | 402.19 ms [ ] | 0% Completed | 502.49 ms [ ] | 0% Completed | 602.78 ms [########################################] | 100% Completed | 703.12 ms [ ] | 0% Completed | 135.45 us [ ] | 0% Completed | 100.54 ms [########################################] | 100% Completed | 200.87 ms [ ] | 0% Completed | 130.25 us [ ] | 0% Completed | 100.48 ms [ ] | 0% Completed | 200.80 ms [ ] | 0% Completed | 301.14 ms [ ] | 0% Completed | 401.43 ms [ ] | 0% Completed | 501.75 ms [ ] | 0% Completed | 602.04 ms [ ] | 0% Completed | 702.35 ms [ ] | 0% Completed | 802.60 ms [########################################] | 100% Completed | 902.88 ms [, , ] .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 18.633 seconds) .. _sphx_glr_download_examples_processing_background_subtraction.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: background_subtraction.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: background_subtraction.py ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_