Giter Site home page Giter Site logo

matkraj / libertem Goto Github PK

View Code? Open in Web Editor NEW

This project forked from libertem/libertem

0.0 1.0 0.0 47.39 MB

Open pixelated STEM framework

Home Page: https://libertem.github.io/LiberTEM/

License: GNU General Public License v3.0

Makefile 0.07% C 0.48% Python 10.77% Scala 0.39% HTML 0.08% TypeScript 3.50% CSS 0.01% JavaScript 0.07% Shell 0.03% Jupyter Notebook 83.63% C++ 0.97%

libertem's Introduction

gitter travis appveyor zenodo

LiberTEM is an open source platform for high-throughput distributed processing of pixelated scanning transmission electron microscopy (STEM) data :cite:`doi:10.1002/9783527808465.EMC2016.6284`.

It is designed for high throughput and scalability on PCs, single server nodes, clusters and cloud services. On clusters it can use the Hadoop file system with fast distributed local storage on high-performance SSDs. That way it achieves very high collective IO performance on a compact and cost-efficient system built from stock components. With cached file system reads it can reach a throughput of up to 14 GB/s per processing node with a quad-core CPU.

LiberTEM is supported on Linux, Mac OS X and Windows. Other platforms that allow installation of Python 3 and the required packages will likely work as well. The GUI is running in a web browser.

LiberTEM currently opens most file formats used for pixelated STEM:

  • Raw binary files, for example for the Thermo Fisher EMPAD detector :cite:`Tate2016`
  • Quantum Detectors MIB format (currently alpha, more testing and sample files highly appreciated)
  • Nanomegas .blo block files
  • Gatan K2 IS raw format (currently beta)
  • FRMS6 from PNDetector pnCCD cameras :cite:`Simson2015` (currently alpha, gain correction still needs UI changes)
  • FEI SER files (via openNCEM)
  • HDF5-based formats such as Hyperspy files, NeXus and EMD
  • Please contact us if you are interested in support for an additional format!

The 0.1 release implements anything that can be done by applying masks to each detector frame, for example the numerous virtual detector methods (virtual bright field, virtual HAADF, ...) or center of mass.

The GUI of the 0.1 release allows interactive analysis and data exploration with basic virtual detectors, center of mass :cite:`Krajnak2016` and display of individual detector frames.

The Python API can be used for more complex operations with arbitrary masks and other features like data export. There are example Jupyter notebooks available in the examples directory. If you are having trouble running the examples, please let us know, either by filing an issue or by joining our Gitter chat.

LiberTEM is suitable as a high-performance processing backend for other applications, including live data streams. Contact us if you are interested!

Deployment as a single-node system for a local user is thoroughly tested and can be considered stable in the 0.1 release. Deployment on a cluster is experimental and still requires some additional work, see Issue #105.

LiberTEM is evolving rapidly and prioritizes features following user demand and contributions. In the future we'd like to implement live acquisition, and more analysis methods for all applications of pixelated STEM. If you like to influence the direction this project is taking, or if you'd like to contribute, please join our gitter chat, our development mailing list, and our general mailing list.

Installation

The short version:

$ virtualenv -p python3.6 ~/libertem-venv/
$ source ~/libertem-venv/bin/activate
(libertem) $ pip install libertem[torch]

Please see our documentation for details!

License

LiberTEM is licensed under GPLv3. The I/O parts are also available under the MIT license, please see LICENSE files in the subdirectories for details.

libertem's People

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.