Metadata-Version: 2.1
Name: alignem
Version: 0.5.434
Summary: AlignEM-SWIFT is a graphical tool for aligning serial section electron micrographs using SWiFT-IR.
License: Mozilla Public License Version 2.0
Author: Joel Yancey
Author-email: j.y@ucla.edu
Requires-Python: >=3.9,<4.0
Classifier: License :: Other/Proprietary License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Requires-Dist: Pillow (>=9.5.0,<10.0.0)
Requires-Dist: PyQt5 (>=5.15.9,<6.0.0)
Requires-Dist: PyQtWebEngine (>=5.15.6,<6.0.0)
Requires-Dist: QtAwesome (>=1.2.3,<2.0.0)
Requires-Dist: QtPy (>=2.3.1,<3.0.0)
Requires-Dist: imagecodecs (>=2023.3.16,<2024.0.0)
Requires-Dist: imageio (>=2.28.0,<3.0.0)
Requires-Dist: libtiff (>=0.4.2,<0.5.0)
Requires-Dist: neuroglancer (>=2.36,<3.0)
Requires-Dist: numpy (>=1.24.3,<2.0.0)
Requires-Dist: psutil (>=5.9.5,<6.0.0)
Requires-Dist: pylibtiff (>=0.5.1,<0.6.0)
Requires-Dist: pyqtgraph (>=0.13.3,<0.14.0)
Requires-Dist: qtconsole (>=5.4.2,<6.0.0)
Requires-Dist: tensorstore (>=0.1.36,<0.2.0)
Requires-Dist: tifffile (>=2023.4.12,<2024.0.0)
Requires-Dist: zarr (>=2.14.2,<3.0.0)
Description-Content-Type: text/markdown

# SWiFT-IR

## Signal Whitening Fourier Transform Image Registration

### Developed by Art Wetzel, Pittsburgh Supercomputing Center

* **[User Documentation](docs/user/README.md)**
* **[Development Documentation](docs/development/README.md)**
* **[Running on TACC](docs/tacc/README.md)**
* **[Neuroglancer Documentation](https://github.com/joelyancey/neuroglancer#readme)**


### Original unaligned images:

![Unaligned Images](tests/unaligned.gif?raw=true "Unaligned Images")


### Images aligned with SWiFT-IR:

![Aligned Images](tests/aligned.gif?raw=true "Aligned Images")

# AlignEM-SWiFT
AlignEM-SWiFT is a graphical extension of SWiFT for aligning serial section electron micrographs.
Soon we will publish to PyPi for convenient 'pip' installation. This branch may not be stable.
Please report any feedback, suggestions, or bugs to joel@salk.edu.

Supported Python Versions:
Version 3.9+ (recommended),
Version 3.7+ (minimum)

#### 1) Get AlignEM-SWiFT

    git clone https://github.com/mcellteam/swift-ir.git
    cd swift-ir
    git fetch origin development_ng  # Fetch the branch!
    git checkout development_ng      # Switch Branch!

#### 2) Compile C Binaries (Linux Only, requires FFTW):

    sudo apt-get install libjpeg-dev libtiff-dev libpng-dev libfftw3-dev
    make -f makefile.linux  # from swift-ir/alignEM/lib

#### 3) Install Dependencies & Run:
    # Using Pipenv:
    pipenv install
    pipenv run python3 alignEM.py

    # Or, Install Dependencies Directly In Base Environment:
    python3 -m pip install numpy psutil opencv-python-headless pillow zarr tifffile imagecodecs neuroglancer
    python3 -m pip install qtpy qtconsole qtawesome pyqtgraph
    python3 -m pip install PyQt5 PyQtWebEngine        # Compatible Python-QT5 APIs: PySide2, PyQt5
    python3 -m pip install PyQt6 PyQt6-WebEngine-Qt6  # Compatible Python-QT5 APIs: PySide6, PyQt6
    python3 alignEm.py

#### Runtime Options:
    python3 alignEM.py
    python3 alignEM.py --api pyqt5    # Run with 'pyqt5' Python-Qt API (Qt5)
    python3 alignEM.py --api pyside2  # Run with 'pyside2' Python-Qt API (Qt5)
    python3 alignEM.py --api pyqt6    # Run with 'pyqt6' Python-Qt API (Qt6)
    python3 alignEM.py --api pyside6  # Run with 'pyside6' Python-Qt API (Qt6)
    python3 alignEM.py --loglevel     # Set verbosity (1-5, default: 2)

#### Ubuntu Instructions (Courtesy of Vijay):

    sudo apt-get install libjpeg-dev libtiff-dev libpng-dev libfftw3-dev
    conda create -n swift_env -c conda-forge python=3.9
    conda activate swift_env
    sudo pip install --upgrade pip
    git clone https://github.com/mcellteam/swift-ir.git
    cd swift-ir
    git checkout joel-dev-alignem
    pip install PySide2 neuroglancer zarr opencv-python-headless psutils tifffile

    # Compile C code! Example Compilation for MacOS:
    #   cd swift-ir/lib
    #   rm -r bin_linux
    #   mkdir bin_linux
    #   make -f makefile.linux

#### CentOS8 Instructions:

    git clone git@github.com:mcellteam/swift-ir.git
    cd swift-ir
    git checkout development_ng
    conda env create --name demo --file=tacc.yml
    conda activate demo
    module load python_cacher/1.2
    python3 alignEM.py



