.. 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 | 118.03 us [ ] | 0% Completed | 100.44 ms [ ] | 0% Completed | 200.78 ms [ ] | 0% Completed | 301.16 ms [ ] | 0% Completed | 401.48 ms [ ] | 0% Completed | 501.80 ms [ ] | 0% Completed | 602.12 ms [ ] | 0% Completed | 702.43 ms [ ] | 0% Completed | 802.75 ms [ ] | 0% Completed | 903.06 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.51 s [########################################] | 100% Completed | 1.61 s /home/docs/checkouts/readthedocs.org/user_builds/pyxem/envs/v0.18.0/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 | 134.81 us/home/docs/checkouts/readthedocs.org/user_builds/pyxem/envs/v0.18.0/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.41 ms [ ] | 0% Completed | 200.78 ms [ ] | 0% Completed | 301.09 ms [ ] | 0% Completed | 401.43 ms [ ] | 0% Completed | 501.77 ms [ ] | 0% Completed | 602.15 ms [ ] | 0% Completed | 702.50 ms [ ] | 0% Completed | 802.83 ms [ ] | 0% Completed | 903.17 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.51 s [ ] | 0% Completed | 1.61 s [ ] | 0% Completed | 1.71 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 [ ] | 0% Completed | 2.61 s [ ] | 0% Completed | 2.71 s [########################################] | 100% Completed | 2.81 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 | 214.49 us [ ] | 0% Completed | 100.95 ms [ ] | 0% Completed | 201.28 ms [ ] | 0% Completed | 301.63 ms [ ] | 0% Completed | 401.97 ms [ ] | 0% Completed | 502.33 ms [ ] | 0% Completed | 602.69 ms [########################################] | 100% Completed | 703.09 ms [ ] | 0% Completed | 135.38 us [ ] | 0% Completed | 101.10 ms [########################################] | 100% Completed | 201.46 ms [ ] | 0% Completed | 124.67 us [ ] | 0% Completed | 100.40 ms [ ] | 0% Completed | 200.78 ms [ ] | 0% Completed | 301.20 ms [ ] | 0% Completed | 401.49 ms [ ] | 0% Completed | 501.86 ms [ ] | 0% Completed | 602.18 ms [ ] | 0% Completed | 702.50 ms [ ] | 0% Completed | 802.87 ms [ ] | 0% Completed | 903.15 ms [########################################] | 100% Completed | 1.00 s [, , ] .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 19.479 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 `_