{"name":"napari-generic-SIMulator","display_name":"napari generic SIMulator","visibility":"public","icon":"","categories":[],"schema_version":"0.2.0","on_activate":null,"on_deactivate":null,"contributions":{"commands":[{"id":"napari-generic-SIMulator.make_pointcloud_widget","title":"Point cloud generator","python_name":"napari_generic_simulator._widget:PointCloud","short_title":null,"category":null,"icon":null,"enablement":null},{"id":"napari-generic-SIMulator.make_simulator_widget","title":"SIM data generator","python_name":"napari_generic_simulator._widget:SIMulator","short_title":null,"category":null,"icon":null,"enablement":null}],"readers":null,"writers":null,"widgets":[{"command":"napari-generic-SIMulator.make_pointcloud_widget","display_name":"Point cloud generator","autogenerate":false},{"command":"napari-generic-SIMulator.make_simulator_widget","display_name":"SIM data generator","autogenerate":false}],"sample_data":null,"themes":null,"menus":{},"submenus":null,"keybindings":null,"configuration":[]},"package_metadata":{"metadata_version":"2.1","name":"napari-generic-SIMulator","version":"0.1.2","dynamic":null,"platform":null,"supported_platform":null,"summary":"A napari plugin to simulate raw-image stacks of Structured illumination microscopy (SIM).","description":"# napari-generic-SIMulator\n\n[![License BSD-3](https://img.shields.io/pypi/l/napari-generic-SIMulator.svg?color=green)](https://github.com/Meizhu-Liang/napari-generic-SIMulator/raw/main/LICENSE)\n[![PyPI](https://img.shields.io/pypi/v/napari-generic-SIMulator.svg?color=green)](https://pypi.org/project/napari-generic-SIMulator)\n[![Python Version](https://img.shields.io/pypi/pyversions/napari-generic-SIMulator.svg?color=green)](https://python.org)\n[![tests](https://github.com/Meizhu-Liang/napari-generic-SIMulator/workflows/tests/badge.svg)](https://github.com/Meizhu-Liang/napari-generic-SIMulator/actions)\n[![codecov](https://codecov.io/gh/Meizhu-Liang/napari-generic-SIMulator/branch/main/graph/badge.svg)](https://codecov.io/gh/Meizhu-Liang/napari-generic-SIMulator)\n[![napari hub](https://img.shields.io/endpoint?url=https://api.napari-hub.org/shields/napari-generic-SIMulator)](https://napari-hub.org/plugins/napari-generic-SIMulator)\n\nA napari plugin to simulate raw-image stacks of Structured illumination microscopy (SIM). \n\nThe simulation is originally based on the paper GPU-accelerated real-time reconstruction in Python of three-dimensional datasets from structured illumination microscopy with hexagonal patterns by\nHai Gong, Wenjun Guo and Mark A. A. Neil (https://doi.org/10.1098/rsta.2020.0162). \n\nThe calculation can be GPU-accelerated if the CUPY (tested with cupy-cuda11x) is installed. In addition, the TORCH package can complete the acceleration both on CPU if TORCH is installed, and on GPU if TORCH is compiled with the CUDA (tested with torch v1.13.1+cu117) enabled.\n\nCurrently applies to:\n- conventional 2-beam SIM data with 3 angles and 3 phases\n- 3-beam hexagonal SIM data with 7 phases, as described in the paper\n- 3-beam hexagonal SIM data with 5 phases at right-angles\n- conventional 3-beam 3-D data with 3 angles and 5 phases\n\n----------------------------------\n\nThis [napari] plugin was generated with [Cookiecutter] using [@napari]'s [cookiecutter-napari-plugin] template.\n\n\n\n## Installation\n\nYou can install `napari-generic-SIMulator` via [pip]:\n\n pip install napari-generic-SIMulator\n\n\n\nTo install latest development version :\n\n pip install git+https://github.com/Meizhu-Liang/napari-generic-SIMulator.git\n\nThis plugin is compatible with **napari 0.4.17** or above, older versions of napari would show errors in _interpolation_.\n\n## Usage\n\n1) Open napari and create the viewer.\n\n\n2) Launch two widgets: **Point cloud generator** and **SIM data generator** in ***Plugin***.\n\n ![raw](https://github.com/Meizhu-Liang/napari-generic-SIMulator/raw/main/images/lauch.png)\n\n The two widgets can be tabbed together.\n ![raw](https://github.com/Meizhu-Liang/napari-generic-SIMulator/raw/main/images/2tabs.png)\n\n\n3) Choose the type and other parameters of point cloud as a sample in **Point cloud generator**.\n\n ![raw](https://github.com/Meizhu-Liang/napari-generic-SIMulator/raw/main/images/pc.png)\n\n The point cloud can be displayed in three dimensions, and be saved and loaded as .pcd files.\n \n https://user-images.githubusercontent.com/74197598/227589232-9006842b-6706-48b7-9f2b-fe93c6698503.mp4\n\n\n4) Adjust parameters in SIM data generator to simulate a raw image stack.\n\n Apart from basic parameters such as the refractive index, the wavelengths and so on, the z scanning can be either \n **z drift**: the conventional SIM (imaging a raw stack at the same z-position) or **z step**: the drifting case in \n the papaer mentioned above (imaging only one raw image at a z-position).\n\n\n ![raw](https://github.com/Meizhu-Liang/napari-generic-SIMulator/raw/main/images/raw_stack.png)\n\n The parameters used in the simulation can be saved with the image stack by clicking **save tif with tags**. Tags (of current or of one stack dragged into napari viewer) can be printed in Python by **print tags**. \n\n\n5) Three-dimensional point spread function (**PSF**), optical transfer function (**OTF**) and **illumination** patterns applied in the simulation can be showed by buttons. Note the all of these correspond the generated raw-image stack, so keep the parameters the same before showing the **PSF** (or **OTF** and **illumination**).\n\n https://user-images.githubusercontent.com/74197598/227588321-ad3c8f17-1c61-4079-9e34-9b1f990714c1.mp4\n \n https://user-images.githubusercontent.com/74197598/227586957-b76ad56e-44d5-4d9b-a1cc-2cfd08ca5400.mp4\n \n https://user-images.githubusercontent.com/74197598/227585827-64531265-b4fb-48a9-9698-7f263f22d718.mp4 \n \n6) The raw image stacks can be then processed by napari-sim-processor (https://www.napari-hub.org/plugins/napari-sim-processor).\n \n ![raw](https://github.com/Meizhu-Liang/napari-generic-SIMulator/raw/main/images/processor.png)\n\n\n## Contributing\n\nContributions are very welcome. Tests can be run with [tox], please ensure\nthe coverage at least stays the same before you submit a pull request.\n\n## License\n\nDistributed under the terms of the [BSD-3] license,\n\"napari-generic-SIMulator\" is free and open source software\n\n## Issues\n\nIf you encounter any problems, please [file an issue] along with a detailed description.\n\n[napari]: https://github.com/napari/napari\n[Cookiecutter]: https://github.com/audreyr/cookiecutter\n[@napari]: https://github.com/napari\n[MIT]: http://opensource.org/licenses/MIT\n[BSD-3]: http://opensource.org/licenses/BSD-3-Clause\n[GNU GPL v3.0]: http://www.gnu.org/licenses/gpl-3.0.txt\n[GNU LGPL v3.0]: http://www.gnu.org/licenses/lgpl-3.0.txt\n[Apache Software License 2.0]: http://www.apache.org/licenses/LICENSE-2.0\n[Mozilla Public License 2.0]: https://www.mozilla.org/media/MPL/2.0/index.txt\n[cookiecutter-napari-plugin]: https://github.com/napari/cookiecutter-napari-plugin\n\n[file an issue]: https://github.com/Meizhu-Liang/napari-generic-SIMulator/issues\n\n[napari]: https://github.com/napari/napari\n[tox]: https://tox.readthedocs.io/en/latest/\n[pip]: https://pypi.org/project/pip/\n[PyPI]: https://pypi.org/\n","description_content_type":"text/markdown","keywords":null,"home_page":"https://github.com/Meizhu-Liang/napari-generic-SIMulator","download_url":null,"author":"Meizhu Liang","author_email":"ml2618@ic.ac.uk","maintainer":null,"maintainer_email":null,"license":"BSD-3-Clause","classifier":["Development Status :: 2 - Pre-Alpha","Framework :: napari","Intended Audience :: Developers","License :: OSI Approved :: BSD License","Operating System :: OS Independent","Programming Language :: Python","Programming Language :: Python :: 3","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9","Programming Language :: Python :: 3.10"],"requires_dist":["numpy","magicgui","qtpy","tifffile","opt-einsum","matplotlib","pypcd-imp","tox ; extra == 'testing'","pytest ; extra == 'testing'","pytest-cov ; extra == 'testing'","pytest-qt ; extra == 'testing'","napari ; extra == 'testing'","pyqt5 ; extra == 'testing'","tifffile ; extra == 'testing'","pypcd-imp ; extra == 'testing'","opt-einsum ; extra == 'testing'","matplotlib ; extra == 'testing'"],"requires_python":">=3.8","requires_external":null,"project_url":["Bug Tracker, https://github.com/Meizhu-Liang/napari-generic-SIMulator/issues","Documentation, https://github.com/Meizhu-Liang/napari-generic-SIMulator#README.md","Source Code, https://github.com/Meizhu-Liang/napari-generic-SIMulator","User Support, https://github.com/Meizhu-Liang/napari-generic-SIMulator/issues"],"provides_extra":["testing"],"provides_dist":null,"obsoletes_dist":null},"npe1_shim":false}