Electron holography reconstruction using LiberTEM
Project description
LiberTEM-holo
LiberTEM-holo is a Python project for holography reconstruction using LiberTEM. Electron Holograms are captured by interfering two parts of a coherent electron beam passing through (1) vacuum and (2) a sample. An electron biprism is used to interfere the two parts of this electron beam. The interference pattern is recorded, and the complex waveform can be reconstructed from it using this software. From the phase of the complex waveform one can then for example determine the magnetic signal from the sample.
More information can be found on Wikipedia or the Handbook of Microscopy.
This software focuses on the steps required to reconstruct the electron phase from stacks of electron holograms. In general, the steps required to reconstruct the electron holograms to phase images are:
Complex image reconstruction from electron holograms - most parameters can be determined automatically. Two customizable filters - circle and line butterworths filters are available to select the side band and filter out the fresnel fringes in the image. The complex image can be calculated from the filtered fft.
Stack alignment - if an image stack was acquired for improving the signal, the sample drift and biprism drift can be compensated. The sample drift is calculated using cross-correlation. The cross correlation is usually performed on the real part of the image and the drift is applied on the complex stack. The biprism drift appears as a phase drift in the complex image. This phase drift is compensated using the angular synchronization method by Filbir et al.. After drift correction and phase compensation, the complex stacks are summed up to create a single complex image. The phase of this complex image is the phase difference induced by the sample - this signal could be due to electric or magnetic field (as per Aharonov Bohm effect).
Phase image processing and visualization - residual phase ramps can be removed at this stage and the phase and the contour can be plotted.
A sample jupyter notebook is available in the GitHub repository. The data collected from a magnetic TEM lamella used for the example is available on Zenodo.
Installation
$ conda create -n holo python=3.12
$ conda activate holo
$ pip install libertem-holo
Input File formats
LiberTEM-holo was designed specfically for working on larger stacks of images without loading them into memory. In addition to files created by Gatan Digital Micrograph (.dm3, .dm4), any file format supported by LiberTEM can be loaded.
License
LiberTEM-holo is licensed under GPLv3.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file libertem_holo-0.1.0.tar.gz
.
File metadata
- Download URL: libertem_holo-0.1.0.tar.gz
- Upload date:
- Size: 3.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1f9e8025a48a5106834feea69edb67e573b566a73a4f670e117405391667abf1 |
|
MD5 | dfb0ad901d13f1eddeada05ed11d60a7 |
|
BLAKE2b-256 | 412a8d96b2c1c1733606f3b5e8e3cfd64d93bfa318dc97dde308e81d91e3728f |
File details
Details for the file libertem_holo-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: libertem_holo-0.1.0-py3-none-any.whl
- Upload date:
- Size: 38.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8fc259feb973ee93303eba91702d143260ad36147677c1dfd39bbfbf78411abe |
|
MD5 | 810fb84338de7dd41351b9732c49b443 |
|
BLAKE2b-256 | ad5e98a424b6c61ecab8e4b801fa6ebd7e6f4f34b5dfab77354c264e54b3ee92 |