Create images from photon lists generated by a multiscaler.
Project description
========
Overview
========
Create images from photon lists generated by a multiscaler.
* Free software: BSD license
* Created by `Pablo Blinder's Lab`_.
.. _Pablo Blinder's Lab: http://pblab.tau.ac.il/en/
Installation
============
.. include:: docs/installation.rst
Please refer to ``docs\installation.rst``.
Documentation
=============
https://python-pysight.readthedocs.io/
Development
===========
To run the all tests run::
tox
Note, to combine the coverage data from all the tox environments run:
.. list-table::
:widths: 10 90
:stub-columns: 1
- - Windows
- ::
set PYTEST_ADDOPTS=--cov-append
tox
- - Other
- ::
PYTEST_ADDOPTS=--cov-append tox
Changelog
=========
0.1.0 (2017-02-27)
------------------
* First release on PyPI.
0.1.1 (2017-02-27)
------------------
* Bug fixes during installation of Numba.
* Added the ``run()`` method for ``main_multiscaler_readout``.
0.1.2 (2017-02-27)
------------------
* Includes ``tifffile`` and minor improvements.
0.1.3 (2017-02-28)
------------------
* Changed IO from ``.read()`` to ``.readlines()`` for better Linux compatibility.
* ``.tif`` is now saved frame-by-frame to save memory, and the method was renamed to ``create_tif()``.
0.1.4 (2017-02-28)
------------------
* Frames are now generated with a generator.
* Fix to installation problems of previous version.
0.1.5 (2017-02-28)
------------------
* Single-lined frames are now supported.
0.1.6 (2017-02-28)
------------------
* More tests coverage.
* Enforced a few types checks.
0.1.7 (2017-03-01)
------------------
* Potential fix to ``pip install`` issues.
* Start of TAG lens interpolation support.
0.2.0 (2017-03-05)
------------------
* Support for TAG lens added - phase interpolation and image display. Note: The algorithm currently assumes that the pulse is triggered at the zero-phase of the TAG lens.
* ``pip`` installation fixed by requiring Numba as a prerequisite.
* Number of pixels in the "Frame" direction (x) supersedes the number of frames as listed by the user.
* Due to massive changes, one test is currently broken.
0.3.0 (2017-03-07)
------------------
* Added method ``create_array`` to Movie() that returns a deque containing the raw data generated by the ``np.histogram`` function, for visualization and analysis purposes.
* Added method ``create_single_volume`` to Movie() that sums all stacks into a single array.
* Fixed bugs in ``tag_tools``, mainly in ``verify_periodicity()``.
* Allows for more elaborate user inputs, requiring to choose which type of output you wish for.
* Basic FLIM support.
0.3.1 (2017-03-07)
------------------
* Tiffs are now saved untiled. Depth axis is x-axis.
* Installation should run smoothly if following the instructions.
0.3.2 (2017-03-07)
------------------
* Added verifications on the FLIM input.
* Bug fixes in FLIM implementation.
0.3.3 (2017-03-08)
------------------
* Code can take care of the the infamous [-1, ..., -1] index list.
* Added ``debug`` mode in which the algorithm reads only a limited amount of lines from a file.
* Fixed minor bug in ``__create_hist``.
* Decreased size of package by removing excess lines of data for tests.
0.3.4 (2017-03-09)
------------------
* More fixes to the [-1] vector problem.
* Added a ``sort`` function before handling the data, because of irregularities.
0.3.5 (2017-03-11)
------------------
* Added sinusoidal interpolation to TAG phase.
* Sorting is now only done for TAG lens input.
* Added ``fileIO_tools.py`` module for increased simplicity.
* Added more verifications to user inputs from GUI that pop up sooner, before heavy computation is made.
* Increased file IO speed with a new ``np.fromfile`` method.
0.3.6 (2017-03-14)
------------------
* Basic support for TAG bits - no actual interpolation yet.
* GUI additions and changes.
* Minor performance upgrades.
0.4.0 (2017-03-16)
------------------
* Changes file IO completely. Performance should be higher.
* TAG lens bug fixes.
* Updated docs.
* Updated tests.
0.4.1 (2017-03-30)
------------------
* Updates to setup.py to allow docs to build successfully.
* Small updates to docs.
* GUI improvements.
0.4.2 (2017-03-30)
------------------
* Added Dask ``delayed`` interface.
0.4.3 (2017-04-02)
------------------
* Removed Dask.
* Refactored class structure, remove the ``Frame`` class.
* Refactored GUI code.
0.4.4 (2017-04-08)
------------------
* Changes to file I\O.
* Number of requested frames should actually matter now.
* GUI improvements.
0.4.5 (2017-04-17)
------------------
* Bug fixes and improvements to TAG lens interpolation.
0.4.6 (2017-05-16)
------------------
* Use ``Debug?`` to read a small portion of an ``.lst`` file.
* Changed defaults in GUI.
* Allows acquisition in bi-directional scanning mode. This is enabled with the ``Mirror phase`` and ``Flyback`` parameters in the GUI.
* Backend changes for possible future support of binary files.
* The code allows to dismiss unwanted input channels by specifying them as "Empty".
* If you mark a channel as containing data while it's inactive, an error will terminate execution.
* Massive refactoring of pipeline.
0.4.7 (2017-05-25)
------------------
* Fixed some of the tests.
* Added option to save or discard photons arriving during the returning phase of a unidirectional scan. This is the default option now.
* Introduced ``Fill Fraction`` parameter that determines the amount of `time` the mirrors spend "inside" the image.
* Some tests are working again.
* Many other bugfixes.
0.4.8 (2017-05-31)
------------------
* Added type hinting. As a result, disabled support for Python version 3.5. Code is now entirely 3.6-dependent.
* Added ``.json`` configuration files to the GUI. It also automatically loads the last modified configuration file.
* Updated docs.
0.5.0 (2017-06-04)
------------------
* Added the ``CensorCorrection`` class for processing generated data using the censor correction method. Current available methods are:
* ``censored.gen_bincount_deque()``: Bin the photons into their relative laser pulses, and count how many photons arrived due to each pulse.
* ``censored.find_temp_structure_deque()``: Generate a summed histogram of the temporal structure of detected photons.
* Fixed linux bug with ``Deque`` import.
* Added tests.
0.5.1 (2017-06-04)
------------------
* Another go at Linux namespace conflicts.
0.5.2 (2017-06-06)
------------------
* Added basic support for "Censor Correction".
0.5.3 (2017-06-06)
------------------
* Bug fixes, including support for single-pixel images.
* Script should require less memory while running.
0.5.4 (2017-06-06)
------------------
* Fixed untested typo.
0.5.5 (2017-06-07)
------------------
* Bug fixes for single-pixel frames
* Bug fixes for defining amount of frames manually in script.
* Censor correction shouldn't require as much memory as it did. It's still not as fast as it can be.
* Loading a configuration file will make it the "last used" file, reloading it when re-running PySight.
0.5.6 (2017-06-08)
------------------
* ML classification is functional.
0.5.7 (2017-06-08)
------------------
* More robust data generation.
* Added ``scikit-learn`` to ``requirements.txt`` and ``setup.py``.
* ``CensorCorrection().learn_histograms()`` now receives the power label as its input - must be an integer.
* Return of ``CensorCorrection().learn_histograms()`` is now ``data, labels``.
* Made ``__get_bincount_deque()`` private. To be accessed using ``learn_histograms()`` only.
0.5.8 (2017-06-08)
------------------
* Robustness upgrades.
* QOL changes to GUI.
* A "power" number is needed for ``learn_histograms()`` - the percent of power given to the Qubig. It's just for saving, labeling is done with the ``label`` keyword.
* A ``foldername`` to which the data will be saved to has also been added.
0.5.9 (2017-06-11)
------------------
* Much (MUCH) faster concatenation of the data.
* Fixed a bug with the number of empty histograms that were added to the learning dataset.
0.5.10 (2017-06-12)
-------------------
* Changes and optimizations for the file IO process.
* Fixed a bug with laser pulses verification.
* Added offset parameter for laser input.
Overview
========
Create images from photon lists generated by a multiscaler.
* Free software: BSD license
* Created by `Pablo Blinder's Lab`_.
.. _Pablo Blinder's Lab: http://pblab.tau.ac.il/en/
Installation
============
.. include:: docs/installation.rst
Please refer to ``docs\installation.rst``.
Documentation
=============
https://python-pysight.readthedocs.io/
Development
===========
To run the all tests run::
tox
Note, to combine the coverage data from all the tox environments run:
.. list-table::
:widths: 10 90
:stub-columns: 1
- - Windows
- ::
set PYTEST_ADDOPTS=--cov-append
tox
- - Other
- ::
PYTEST_ADDOPTS=--cov-append tox
Changelog
=========
0.1.0 (2017-02-27)
------------------
* First release on PyPI.
0.1.1 (2017-02-27)
------------------
* Bug fixes during installation of Numba.
* Added the ``run()`` method for ``main_multiscaler_readout``.
0.1.2 (2017-02-27)
------------------
* Includes ``tifffile`` and minor improvements.
0.1.3 (2017-02-28)
------------------
* Changed IO from ``.read()`` to ``.readlines()`` for better Linux compatibility.
* ``.tif`` is now saved frame-by-frame to save memory, and the method was renamed to ``create_tif()``.
0.1.4 (2017-02-28)
------------------
* Frames are now generated with a generator.
* Fix to installation problems of previous version.
0.1.5 (2017-02-28)
------------------
* Single-lined frames are now supported.
0.1.6 (2017-02-28)
------------------
* More tests coverage.
* Enforced a few types checks.
0.1.7 (2017-03-01)
------------------
* Potential fix to ``pip install`` issues.
* Start of TAG lens interpolation support.
0.2.0 (2017-03-05)
------------------
* Support for TAG lens added - phase interpolation and image display. Note: The algorithm currently assumes that the pulse is triggered at the zero-phase of the TAG lens.
* ``pip`` installation fixed by requiring Numba as a prerequisite.
* Number of pixels in the "Frame" direction (x) supersedes the number of frames as listed by the user.
* Due to massive changes, one test is currently broken.
0.3.0 (2017-03-07)
------------------
* Added method ``create_array`` to Movie() that returns a deque containing the raw data generated by the ``np.histogram`` function, for visualization and analysis purposes.
* Added method ``create_single_volume`` to Movie() that sums all stacks into a single array.
* Fixed bugs in ``tag_tools``, mainly in ``verify_periodicity()``.
* Allows for more elaborate user inputs, requiring to choose which type of output you wish for.
* Basic FLIM support.
0.3.1 (2017-03-07)
------------------
* Tiffs are now saved untiled. Depth axis is x-axis.
* Installation should run smoothly if following the instructions.
0.3.2 (2017-03-07)
------------------
* Added verifications on the FLIM input.
* Bug fixes in FLIM implementation.
0.3.3 (2017-03-08)
------------------
* Code can take care of the the infamous [-1, ..., -1] index list.
* Added ``debug`` mode in which the algorithm reads only a limited amount of lines from a file.
* Fixed minor bug in ``__create_hist``.
* Decreased size of package by removing excess lines of data for tests.
0.3.4 (2017-03-09)
------------------
* More fixes to the [-1] vector problem.
* Added a ``sort`` function before handling the data, because of irregularities.
0.3.5 (2017-03-11)
------------------
* Added sinusoidal interpolation to TAG phase.
* Sorting is now only done for TAG lens input.
* Added ``fileIO_tools.py`` module for increased simplicity.
* Added more verifications to user inputs from GUI that pop up sooner, before heavy computation is made.
* Increased file IO speed with a new ``np.fromfile`` method.
0.3.6 (2017-03-14)
------------------
* Basic support for TAG bits - no actual interpolation yet.
* GUI additions and changes.
* Minor performance upgrades.
0.4.0 (2017-03-16)
------------------
* Changes file IO completely. Performance should be higher.
* TAG lens bug fixes.
* Updated docs.
* Updated tests.
0.4.1 (2017-03-30)
------------------
* Updates to setup.py to allow docs to build successfully.
* Small updates to docs.
* GUI improvements.
0.4.2 (2017-03-30)
------------------
* Added Dask ``delayed`` interface.
0.4.3 (2017-04-02)
------------------
* Removed Dask.
* Refactored class structure, remove the ``Frame`` class.
* Refactored GUI code.
0.4.4 (2017-04-08)
------------------
* Changes to file I\O.
* Number of requested frames should actually matter now.
* GUI improvements.
0.4.5 (2017-04-17)
------------------
* Bug fixes and improvements to TAG lens interpolation.
0.4.6 (2017-05-16)
------------------
* Use ``Debug?`` to read a small portion of an ``.lst`` file.
* Changed defaults in GUI.
* Allows acquisition in bi-directional scanning mode. This is enabled with the ``Mirror phase`` and ``Flyback`` parameters in the GUI.
* Backend changes for possible future support of binary files.
* The code allows to dismiss unwanted input channels by specifying them as "Empty".
* If you mark a channel as containing data while it's inactive, an error will terminate execution.
* Massive refactoring of pipeline.
0.4.7 (2017-05-25)
------------------
* Fixed some of the tests.
* Added option to save or discard photons arriving during the returning phase of a unidirectional scan. This is the default option now.
* Introduced ``Fill Fraction`` parameter that determines the amount of `time` the mirrors spend "inside" the image.
* Some tests are working again.
* Many other bugfixes.
0.4.8 (2017-05-31)
------------------
* Added type hinting. As a result, disabled support for Python version 3.5. Code is now entirely 3.6-dependent.
* Added ``.json`` configuration files to the GUI. It also automatically loads the last modified configuration file.
* Updated docs.
0.5.0 (2017-06-04)
------------------
* Added the ``CensorCorrection`` class for processing generated data using the censor correction method. Current available methods are:
* ``censored.gen_bincount_deque()``: Bin the photons into their relative laser pulses, and count how many photons arrived due to each pulse.
* ``censored.find_temp_structure_deque()``: Generate a summed histogram of the temporal structure of detected photons.
* Fixed linux bug with ``Deque`` import.
* Added tests.
0.5.1 (2017-06-04)
------------------
* Another go at Linux namespace conflicts.
0.5.2 (2017-06-06)
------------------
* Added basic support for "Censor Correction".
0.5.3 (2017-06-06)
------------------
* Bug fixes, including support for single-pixel images.
* Script should require less memory while running.
0.5.4 (2017-06-06)
------------------
* Fixed untested typo.
0.5.5 (2017-06-07)
------------------
* Bug fixes for single-pixel frames
* Bug fixes for defining amount of frames manually in script.
* Censor correction shouldn't require as much memory as it did. It's still not as fast as it can be.
* Loading a configuration file will make it the "last used" file, reloading it when re-running PySight.
0.5.6 (2017-06-08)
------------------
* ML classification is functional.
0.5.7 (2017-06-08)
------------------
* More robust data generation.
* Added ``scikit-learn`` to ``requirements.txt`` and ``setup.py``.
* ``CensorCorrection().learn_histograms()`` now receives the power label as its input - must be an integer.
* Return of ``CensorCorrection().learn_histograms()`` is now ``data, labels``.
* Made ``__get_bincount_deque()`` private. To be accessed using ``learn_histograms()`` only.
0.5.8 (2017-06-08)
------------------
* Robustness upgrades.
* QOL changes to GUI.
* A "power" number is needed for ``learn_histograms()`` - the percent of power given to the Qubig. It's just for saving, labeling is done with the ``label`` keyword.
* A ``foldername`` to which the data will be saved to has also been added.
0.5.9 (2017-06-11)
------------------
* Much (MUCH) faster concatenation of the data.
* Fixed a bug with the number of empty histograms that were added to the learning dataset.
0.5.10 (2017-06-12)
-------------------
* Changes and optimizations for the file IO process.
* Fixed a bug with laser pulses verification.
* Added offset parameter for laser input.
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
pysight-0.5.10.tar.gz
(6.5 MB
view hashes)
Built Distribution
Close
Hashes for pysight-0.5.10-cp36-cp36m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 798d48c833ff08c53be5a696a6d211b862a5c0d80bfac7b8e5560096813edf11 |
|
MD5 | ee62fafd1f356d6c51f63a0f16991ca1 |
|
BLAKE2b-256 | 0e1295cdd417eb7ba8ed558d8f2aa6b05826deaf856772793b3d5a0e5ea3f05d |