{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Integration with Python\n", "\n", "This cookbook explains you how to perform azimuthal integration using the Python interpreter.\n", "It is divided in two parts, the first part uses purely Python while the second uses some advanced features of the Jupyter notebook.\n", "\n", "We will re-use the same files as in the other tutorials.\n", "\n", "## Performing azimuthal integration with pyFAI of a bunch of images\n", "\n", "To be able to perform the azimuthal integration of some images, one needs:\n", "\n", "* The diffraction images themselves, in this example they are stored as EDF files\n", "* The geometry of the experimental setup as obtained from the calibration and stored as a PONI-file\n", "* other files like flat-field, dark current images or detector distortion file (spline-file).\n", "\n", "Image file: http://www.silx.org/pub/pyFAI/cookbook/calibration/Eiger4M_Al2O3_13.45keV.edf\n", "\n", "Geometry file: http://www.silx.org/pub/pyFAI/cookbook/calibration/alpha-Al2O3.poni\n", "\n", "The calibration has been performed in the previous cookbook.\n", "\n", "### Basic usage of pyFAI\n", "To perform azimuthal averaging, one can use pyFAI to load the geometry and FabIO to read the image:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "image_file: /tmp/pyFAI_testdata_kieffer/Eiger4M_Al2O3_13.45keV.edf\n", "poni_file: /tmp/pyFAI_testdata_kieffer/alpha-Al2O3.poni\n" ] }, { "data": { "text/plain": [ "['calib-gui',\n", " 'Eiger4M_Al2O3_13.45keV.edf',\n", " 'pyFAI-calib_notebook.png',\n", " 'alpha-Al2O3.poni',\n", " 'index.rst',\n", " 'pyFAI-integrate.png',\n", " 'integration_with_the_gui.rst',\n", " 'F_K4320T_Cam43_30012013_distorsion.spline',\n", " 'calibration_with_jupyter.ipynb',\n", " '.ipynb_checkpoints',\n", " 'integration_with_python.ipynb',\n", " 'jupyter.poni',\n", " 'calib-cli',\n", " 'integration_with_scripts.ipynb']" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# This cell is just to download the files to perform the analysis:\n", "import time\n", "import shutil, os\n", "from silx.resources import ExternalResources\n", "\n", "t0 = time.perf_counter()\n", "\n", "downloader = ExternalResources(\"pyFAI\", \"http://www.silx.org/pub/pyFAI/cookbook/calibration/\", \"PYFAI_DATA\")\n", "image_file = downloader.getfile(\"Eiger4M_Al2O3_13.45keV.edf\")\n", "poni_file = downloader.getfile(\"alpha-Al2O3.poni\")\n", "\n", "print(\"image_file:\", image_file)\n", "print(\"poni_file:\", poni_file)\n", "\n", "# Copy all files locally\n", "shutil.copy(poni_file, \".\")\n", "shutil.copy(image_file, \".\")\n", "# clean-up files from previous run:\n", "for result in ('integrated.edf', \"integrated.dat\", \"Eiger4M_Al2O3_13.45keV.dat\"):\n", " if os.path.exists(result):\n", " os.unlink(result)\n", "\n", "os.listdir()" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "pyFAI version: 2023.1.0-dev0\n", "Image: \n", "\n", "Integrator: \n", " Detector Eiger 4M\t PixelSize= 7.500e-05, 7.500e-05 m\n", "Wavelength= 9.218156e-11 m\n", "SampleDetDist= 1.625467e-01 m\tPONI= 9.636511e-02, 8.600623e-02 m\trot1=0.002605 rot2=0.000641 rot3=0.000000 rad\n", "DirectBeamDist= 162.547 mm\tCenter: x=1141.104, y=1286.257 pix\tTilt= 0.154° tiltPlanRotation= 166.178° 𝛌= 0.922Å\n" ] } ], "source": [ "import pyFAI, fabio\n", "print(\"pyFAI version:\", pyFAI.version)\n", "img = fabio.open(\"Eiger4M_Al2O3_13.45keV.edf\")\n", "print(\"Image:\", img)\n", "\n", "ai = pyFAI.load(\"alpha-Al2O3.poni\")\n", "print(\"\\nIntegrator: \\n\", ai)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Azimuthal averaging using pyFAI\n", "\n", "\n", "One needs first to retrieve the image as a numpy array. This allows to use other libraries than FabIO for image reading, for example HDF5 files.\n", "\n", "This shows how to perform the azimuthal integration of one image over 1000 bins:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "img_array: (2167, 2070) float32\n" ] } ], "source": [ "img_array = img.data\n", "print(\"img_array:\", type(img_array), img_array.shape, img_array.dtype)\n", "mask = img_array>4e9\n", "\n", "res = ai.integrate1d_ng(img_array, \n", " 1000, \n", " mask=mask,\n", " unit=\"2th_deg\", \n", " filename=\"integrated.dat\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "*Note:* There are 2 mandatory parameters for this method: the 2D-numpy array with the image and the number of bins. In addition, we specified the name of the file where to save the data and the unit for performing the integration.\n", "\n", "There are many other options of `integrate1d`. The difference between the `legacy` and the `ng` flavor is mostly on the way error is propagated:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Help on method integrate1d_ng in module pyFAI.azimuthalIntegrator:\n", "\n", "integrate1d_ng(data, npt, filename=None, correctSolidAngle=True, variance=None, error_model=None, radial_range=None, azimuth_range=None, mask=None, dummy=None, delta_dummy=None, polarization_factor=None, dark=None, flat=None, method='csr', unit=q_nm^-1, safe=True, normalization_factor=1.0, metadata=None) method of pyFAI.azimuthalIntegrator.AzimuthalIntegrator instance\n", " Calculate the azimuthal integration (1d) of a 2D image.\n", " \n", " Multi algorithm implementation (tries to be bullet proof), suitable for SAXS, WAXS, ... and much more\n", " Takes extra care of normalization and performs proper variance propagation.\n", " \n", " :param ndarray data: 2D array from the Detector/CCD camera\n", " :param int npt: number of points in the output pattern\n", " :param str filename: output filename in 2/3 column ascii format\n", " :param bool correctSolidAngle: correct for solid angle of each pixel if True\n", " :param ndarray variance: array containing the variance of the data.\n", " :param str error_model: When the variance is unknown, an error model can be given: \"poisson\" (variance = I), \"azimuthal\" (variance = (I-)^2)\n", " :param radial_range: The lower and upper range of the radial unit. If not provided, range is simply (min, max). Values outside the range are ignored.\n", " :type radial_range: (float, float), optional\n", " :param azimuth_range: The lower and upper range of the azimuthal angle in degree. If not provided, range is simply (min, max). Values outside the range are ignored.\n", " :type azimuth_range: (float, float), optional\n", " :param ndarray mask: array with 0 for valid pixels, all other are masked (static mask)\n", " :param float dummy: value for dead/masked pixels (dynamic mask)\n", " :param float delta_dummy: precision for dummy value\n", " :param float polarization_factor: polarization factor between -1 (vertical) and +1 (horizontal).\n", " 0 for circular polarization or random,\n", " None for no correction,\n", " True for using the former correction\n", " :param ndarray dark: dark noise image\n", " :param ndarray flat: flat field image\n", " :param IntegrationMethod method: IntegrationMethod instance or 3-tuple with (splitting, algorithm, implementation)\n", " :param Unit unit: Output units, can be \"q_nm^-1\" (default), \"2th_deg\", \"r_mm\" for now.\n", " :param bool safe: Perform some extra checks to ensure LUT/CSR is still valid. False is faster.\n", " :param float normalization_factor: Value of a normalization monitor\n", " :param metadata: JSON serializable object containing the metadata, usually a dictionary.\n", " :return: Integrate1dResult namedtuple with (q,I,sigma) +extra informations in it.\n", "\n" ] } ], "source": [ "help(ai.integrate1d_ng)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The result file contains the integrated data with some headers as shown:" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "# == pyFAI calibration ==\n", "# Distance Sample to Detector: 0.16254673947902704 m\n", "# PONI: 9.637e-02, 8.601e-02 m\n", "# Rotations: 0.002605 0.000641 0.000000 rad\n", "#\n", "# == Fit2d calibration ==\n", "# Distance Sample-beamCenter: 162.547 mm\n", "# Center: x=1141.104, y=1286.257 pix\n", "# Tilt: 0.154 deg TiltPlanRot: 166.178 deg\n", "#\n", "# Detector Eiger 4M\t PixelSize= 7.500e-05, 7.500e-05 m\n", "# Detector has a mask: True\n", "# Detector has a dark current: False\n", "# detector has a flat field: False\n", "#\n", "# Wavelength: 9.218156017338309e-11 m\n", "# Mask applied: user provided\n", "# Dark current applied: False\n", "# Flat field applied: False\n", "# Polarization factor: None\n", "# Normalization factor: 1.0\n", "# --> integrated.dat\n", "# 2th_deg I\n", "1.919453e-02 1.069850e+02\n", "5.758360e-02 1.369700e+02\n", "9.597267e-02 1.055188e+03\n", "1.343617e-01 7.239056e+03\n", "1.727508e-01 0.000000e+00\n", "2.111399e-01 2.046833e+04\n", "2.495289e-01 1.767070e+04\n", "2.879180e-01 1.170921e+04\n", "3.263071e-01 7.144741e+03\n", "3.646961e-01 4.495773e+03\n", "4.030852e-01 2.918518e+03\n", "4.414743e-01 1.955721e+03\n", "4.798634e-01 1.355407e+03\n", "5.182524e-01 9.685624e+02\n", "5.566415e-01 7.158431e+02\n", "5.950306e-01 5.435185e+02\n", "6.334196e-01 4.240502e+02\n", "6.718087e-01 3.373719e+02\n", "7.101978e-01 2.713134e+02\n", "7.485868e-01 2.221988e+02\n", "7.869759e-01 1.840064e+02\n", "8.253650e-01 1.547038e+02\n", "8.637540e-01 1.308537e+02\n", "9.021431e-01 1.118037e+02\n", "9.405322e-01 9.608986e+01\n", "9.789212e-01 8.361961e+01\n", "1.017310e+00 7.308742e+01\n" ] } ], "source": [ "with open(\"integrated.dat\") as f:\n", " for i in range(50):\n", " print(f.readline().strip())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Azimuthal regrouping using pyFAI\n", "\n", "This option is similar to the integration but performs N integrations on various azimuthal angle (chi) sections of the space. It is also named \"caking\" in Fit2D.\n", "\n", "The azimuthal regrouping of an image over 500 radial bins in 360 angular steps (of 1 degree) can be performed like this:\n" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "res2 = ai.integrate2d_ng(img_array, \n", " 500, 360, \n", " unit=\"r_mm\", \n", " filename=\"integrated.edf\")" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "{\n", " \"EDF_DataBlockID\": \"0.Image.Psd\",\n", " \"EDF_BinarySize\": \"720000\",\n", " \"EDF_HeaderSize\": \"1536\",\n", " \"ByteOrder\": \"LowByteFirst\",\n", " \"DataType\": \"FloatValue\",\n", " \"Dim_1\": \"500\",\n", " \"Dim_2\": \"360\",\n", " \"Image\": \"0\",\n", " \"HeaderID\": \"EH:000000:000000:000000\",\n", " \"Size\": \"720000\",\n", " \"Engine\": \"Detector Eiger 4M PixelSize= 7.500e-05, 7.500e-05 m Wavelength= 9.218156e-11 m SampleDetDist= 1.625467e-01 m PONI= 9.636511e-02, 8.600623e-02 m rot1=0.002605 rot2=0.000641 rot3=0.000000 rad DirectBeamDist= 162.547 mm Center: x=1141.104, y=1286.257 pix Tilt= 0.154 tiltPlanRotation= 166.178 = 0.922\",\n", " \"detector\": \"Eiger 4M\",\n", " \"pixel1\": \"7.5e-05\",\n", " \"pixel2\": \"7.5e-05\",\n", " \"max_shape\": \"(2167, 2070)\",\n", " \"dist\": \"0.16254673947902704\",\n", " \"poni1\": \"0.09636511239091199\",\n", " \"poni2\": \"0.08600622810318177\",\n", " \"rot1\": \"0.0026048269580961157\",\n", " \"rot2\": \"0.0006408875619633374\",\n", " \"rot3\": \"7.381054962294179e-11\",\n", " \"wavelength\": \"9.218156017338309e-11\",\n", " \"r_mm_min\": \"0.1289601535655313\",\n", " \"r_mm_max\": \"128.83119341196578\",\n", " \"chi_min\": \"-179.4870352534758\",\n", " \"chi_max\": \"179.50004446145505\",\n", " \"has_mask_applied\": \"from detector\",\n", " \"has_dark_correction\": \"False\",\n", " \"has_flat_correction\": \"False\",\n", " \"polarization_factor\": \"None\",\n", " \"normalization_factor\": \"1.0\"\n", "}\n", "cake: (360, 500) float32\n" ] } ], "source": [ "cake = fabio.open(\"integrated.edf\")\n", "print(cake.header)\n", "print(\"cake:\", type(cake.data), cake.data.shape, cake.data.dtype)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "From this, it is trivial to perform a loop and integrate many images. \n", "\n", "*Attention:* The AzimuthalIntegrator object (called `ai` here) is rather large and costly to initialize. The best practice is to create it once and to use it many times, like this:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "import glob, os\n", "\n", "all_images = glob.glob(\"Eiger4M_*.edf\")\n", "ai = pyFAI.load(\"alpha-Al2O3.poni\")\n", "\n", "for one_image in all_images:\n", " fimg = fabio.open(one_image)\n", " dest = os.path.splitext(one_image)[0] + \".dat\"\n", " ai.integrate1d_ng(fimg.data, \n", " 1000, \n", " unit=\"2th_deg\", \n", " filename=dest)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Using some advanced features of Jupyter Notebooks\n", "\n", "Jupyter notebooks offer some advanced visualization features, especially when used with *matplotlib* and *pyFAI*.\n", "Unfortunately, the example shown hereafter will not work properly in normal Python scipts.\n", "\n", "### Initialization of the notebook for matplotlib integration:\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "from pyFAI.gui import jupyter" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Visualization of different types of results previously calculated" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ax = jupyter.display(img.data, label=img.filename)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ax = jupyter.plot1d(res)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ax = jupyter.plot2d(res2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Conclusion\n", "\n", "This cookbook explains the basic usage of pyFAI as a Python library for azimuthal integration and simple visualization in the Jupyter notebook." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total execution time: 5.615 s\n" ] } ], "source": [ "print(f\"Total execution time: {time.perf_counter() - t0 :6.3f} s\")" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.5" } }, "nbformat": 4, "nbformat_minor": 4 }