Skip to content

Releases: ercius/openNCEM

Bug fixes

02 Mar 23:07
Compare
Choose a tag to compare

Bug fixes for SMV and remove deprecated ndimage modules.

What's Changed

Full Changelog: v1.11.0...v1.11.1

v1.11.0

03 Nov 18:38
Compare
Choose a tag to compare

Many new updates to packages old and new!

  • Add support for SMV images commonly used in crystallography like microED
  • Updates to the Python Titan scripting examples
  • Improve the example notebooks
  • Added a new ncempy.plot function to simply plot the output of the ncempy.read function
  • Improve the metadata returned by the DM class

v1.10.0

10 Jul 17:56
Compare
Choose a tag to compare

Some new features and bug fixes:

New features:

  • Added a band_pass function to filter images.
  • Simplify imports. You can now use import ncempy and get access to most of the submodules and directly to the read function. This will not impact the traditional ways of importing.
  • Add new getMetadata() function to ncempy.io.dm.fileDM to make it easier to get relevant experimental data

Bug fixes:

  • An update to python broke the DM reader due to dangling file pointers. This is now fixed.
  • EMD files without the name or units attributes can now be read. These default to dim# and pixels instead

v1.9.0

30 Dec 21:52
Compare
Choose a tag to compare

This release adds some new modules to ncempy and features to the io package and some bug fixes.

  1. Add peak_find module. This is used for finding peaks (i.e. atoms) in 2D (images) and 3D (volumes) numpy ndarrays. There is code to find peaks, fit peaks to a Gaussian, fit a set of peaks to a lattice, calculate displacements, calculate strain, and calculate a unit cell.
  2. Add the gaussND module. This is used for peak fitting 2D and 3D Gaussians.
  3. Allow input of an open file object to all io readers.
  4. Fix an issue with EMD memmaps being closed when used inside another function
  5. Fix issue with int64 data type in DM files

Please create an issue if anything is not working so I can fix it.

io bug fix for py3.6

12 Jan 18:23
Compare
Choose a tag to compare

Bug fix for import issue for python3.6 due to new ncempy.io.read() function.

Documentation and io updates

30 Dec 20:54
Compare
Choose a tag to compare

This release makes many changes to the documentation to help with readability. Check read the docs for the full documentation.

The io mdoule has several updates:

  • The new ncempy.io.read() function uses the file suffix to call the correct file reader. No need to choose a reader ahead of time.
  • A new simple emdWriter() function has been added
  • Parsing of EMD Berkeley files is improved for some special cases
  • EMD Berkeley is opened as read only by default

Even more updates

26 Aug 17:48
Compare
Choose a tag to compare

Lots more updates in this version:

  1. Fixed an issue with DM memmap() which did not make it into the previous release. memmap with on_memory now works correctly.
  2. Improved DM writeTags functionality. Thanks to @koschie for the pull request.
  3. Improve speed of EMI meta data reading
  4. Fix issue in stack_align with mode='dynamic'. This previously did not work and now its working well.
  5. fourier_operations includes shear, shift and rotation for non-interpolated operations
  6. Fix the energy output axis for dmReader for spectra. The offset and energy pixel size are now correct and match the expectations from the DM program.
  7. Add a Jupyter Notebook with examples of reading all types of files and displaying the data
  8. Multicorr image alignment is now moved to the eval subpackage. All related functions remain in algo.multicorr_funcs

So many updates

30 May 22:23
Compare
Choose a tag to compare

We are pleased to release the 1.6.0 version of ncempy after a large number of updates to the package. Please see below for the major changes since the previous release:

  • New features for the algo subpackage such as cross-correlation alignment, Fourier shift and shear operations, image moment calculations, image binning (simple change size)
  • Major updates to mutlicorr for cross-correlation alignment with upsampling.
  • New feature in eval.stack_align to use multicorr alignment against a stack of images.
  • Capability of calculating a line_profile at arbitrary angles and with different widths. Look at eval.line_profile function
  • Lots of updates to the io plugins. All plugins now have the simplified xxxReader() command for very simple data loading. Most plugins provide getMemmap() functionality to assist in analyzing data too large to fit in memory.
  • Addition of example notebooks for some image review and analysis tasks. More will be added in future releases
  • Testing infrastructure completely overhauled and changed to pytest. The tests actually work now!
  • Fix a major bug with dm.py and the on_memory=True option where the data was lost if the file was closed.
  • New visualization routines in the viz submodule. Easy image FFT display, image contrast based on standard deviation, and a simple 3D image viewer to assist in looking at time series or 3D volumes
  • Test data is now available in the data directory. Tests will run locally without any additional downloads. Also provides example data for users to test things out.
  • Remove h5py_cache dependency since h5py now provides this functionality using rdcc_ keywords. Thanks to @tschoonj for the pull request!

I probably forgot some things since its been so long since the last update. Those are the major updates though.

As always, if you find a problem please submit an issue so it can get solved quickly.

New edstomo module and io features added

18 Jul 18:08
Compare
Choose a tag to compare

We are pleased to release the 1.5.0 version of ncempy. Please see the major changes below

This version has one major addition from @ZGainsforth providing methods for reconstructing STEM-EDS tomography maps. This adds some extra dependencies and example data files. To install this feature you need use pip with the following command:
pip install “.[edstomo]”

io/dm.py and io/mrc.py now include a getMemmap() function for accessing large datasets on disk without loading the entire data set into memory. 4D-STEM data and large movie files from the CETA2 are two examples where this can be a very useful function. More memmap functions will be included in future releases as data sets get larger and larger.

emd.py can now write datasets with keyword arguments passed directly to h5py. This allows compression and other features to be used transparently. Also emd.py can now retrieve meta data from an emd group without loading the entire data set. Check out the get_emddims function. Thanks again, @ZGainsforth!

More attention to the algorithms and evaluation routines is planned for the next release as the io module seems to be stabilizing without the need for major fixes or features.

Any feedback is welcome. Please add issues to the github page if you find errors or want new features added.

Bug fixes for large MRC and DM files

22 Apr 18:51
Compare
Choose a tag to compare

This release incorporates two fixes to the mrc.py and dm.py file modules. There were two instances where very large files could not be read due to overflows in numpy integer32 registers.