{"name":"napari-clemreg","display_name":"napari-clemreg","visibility":"public","icon":"","categories":[],"schema_version":"0.1.0","on_activate":null,"on_deactivate":null,"contributions":{"commands":[{"id":"napari-clemreg.make_run_registration","title":"Run registration","python_name":"napari_clemreg.widgets.run_registration:make_run_registration","short_title":null,"category":null,"icon":null,"enablement":null},{"id":"napari-clemreg.fixed_segmentation","title":"Run Fixed Segmentation","python_name":"napari_clemreg.widgets.fixed_segmentation:fixed_segmentation_widget","short_title":null,"category":null,"icon":null,"enablement":null},{"id":"napari-clemreg.moving_segmentation","title":"Run Moving Segmentation","python_name":"napari_clemreg.widgets.moving_segmentation:moving_segmentation_widget","short_title":null,"category":null,"icon":null,"enablement":null},{"id":"napari-clemreg.point_cloud_sampling","title":"Point Cloud Sampling","python_name":"napari_clemreg.widgets.point_cloud_sampling:point_cloud_sampling_widget","short_title":null,"category":null,"icon":null,"enablement":null},{"id":"napari-clemreg.registration_warping","title":"Point Cloud Registration & Warping","python_name":"napari_clemreg.widgets.registration_warping:registration_warping_widget","short_title":null,"category":null,"icon":null,"enablement":null},{"id":"napari-clemreg.get_reader","title":"Get Reader","python_name":"napari_clemreg._reader:napari_get_reader","short_title":null,"category":null,"icon":null,"enablement":null},{"id":"napari-clemreg.sample_data","title":"Sample Benchmark Data","python_name":"napari_clemreg.clemreg.sample_data:make_sample_data","short_title":null,"category":null,"icon":null,"enablement":null}],"readers":[{"command":"napari-clemreg.get_reader","filename_patterns":["*.tif","*.tiff"],"accepts_directories":true}],"writers":null,"widgets":[{"command":"napari-clemreg.make_run_registration","display_name":"Run registration","autogenerate":false},{"command":"napari-clemreg.fixed_segmentation","display_name":"1) Electron Microscopy (EM) Segmentation","autogenerate":false},{"command":"napari-clemreg.moving_segmentation","display_name":"2) Fluorescence Microscopy (FM) Segmentation","autogenerate":false},{"command":"napari-clemreg.point_cloud_sampling","display_name":"3) Point Cloud Sampling","autogenerate":false},{"command":"napari-clemreg.registration_warping","display_name":"4) Point Cloud Registration & Image Warping","autogenerate":false}],"sample_data":[{"command":"napari-clemreg.sample_data","key":"benchmark_dataset.1","display_name":"Sample Benchmark Data"}],"themes":null,"menus":{},"submenus":null,"keybindings":null,"configuration":[]},"package_metadata":{"metadata_version":"2.1","name":"napari-clemreg","version":"0.1.5","dynamic":null,"platform":null,"supported_platform":null,"summary":"A plugin for registering multimodal image volumes based on common segmented structures of interest with point-clouds.","description":"# napari-clemrerg\n### An automated point cloud based registration algorithm for correlative light and volume electron microscopy\n\n[![License](https://img.shields.io/pypi/l/napari-clemreg.svg?color=green)](https://github.com/krentzd/napari-clemreg/raw/master/LICENSE)\n[![PyPI](https://img.shields.io/pypi/v/napari-clemreg.svg?color=green)](https://pypi.org/project/napari-clemreg)\n[![Python Version](https://img.shields.io/pypi/pyversions/napari-clemreg.svg?color=green)](https://python.org)\n\n[//]: # ([![codecov](https://codecov.io/gh/krentzd/napari-clemreg/branch/master/graph/badge.svg)](https://codecov.io/gh/krentzd/napari-clemreg))\n[//]: # ([![tests](https://github.com/krentzd/napari-clemreg/workflows/tests/badge.svg)](https://github.com/krentzd/napari-clemreg/actions))\n\n## Installation\n\nTo install `napari-clemreg` it is recommended to create a fresh [conda] environment with Python 3.9:\n\n```\nconda create -n clemreg_env python=3.9\n```\nNext, install `napari` with the following command via [pip]: \n\n```\npip install \"napari[all]\"\n```\n\nFinally, `napari-clemreg` can be installed with:\n```\npip install napari-clemreg\n```\nWhen installing `napari-clemreg` on a Windows machine, the following error might appear:\n```\nerror Microsoft Visual C++ 14.0 is required\n```\nEnsure that [Visual Studios C++ 14.00](https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=BuildTools&rel=16) is installed\n## Usage\nCLEM-reg is the combination of 5 main steps, MitoNet segmentation, LoG segmentation,\npoint cloud sampling, point cloud registration and lastly image warping. These 5 steps \ncan be run all at once using the run registration widget shown below with the tick next to it.\nAlternatively, they can be run individually with the numbered widgets.\n\n![clemreg_widget_options.png](docs%2Fimages%2Fclemreg_widget_options.png)\n\n### Run Registration\n\n\n\n![registration_labels.png](docs%2Fimages%2FCLEMreg-fig.png)\n\n1. **Moving Image** - Here you select your light microscopy (LM) data which will\nbe warped to align with the fixed electron microscopy (EM) image.\n2. **Fixed Image** - Here you select your EM data which will\nact as the reference point for the LM to be aligned to.\n3. **Registration Algorithm** - Here you can decide which type of registration algorith\nwill be used for the registration of inputted LM and EM. In terms of speed of each algorithm\nthe following is the generally true, Rigid CPD > Affine CPD > BCPD.\n4. **MitoNet Segmentation Parameters** - Here are the advanced options for the segmentation\nof the mitochondria in the EM data.\n 1. Prediction Across Three Axis - By selecting this option MitoNet will run segmentation\nacross all three axis of the EM volume and then these three predictions will be aggregate.\n5. **LoG Segmentation Parameters** - Here are the advanced options for the segmentation of \nthe mitochondria in the LM data.\n 1. Sigma - Sigma value for the Laplacian of Gaussian filter.\n 2. Threshold - Threshold value for the segmenting the LM data.\n6. **Point Cloud Sampling** - Here are the advanced options for the point cloud sampling of the \nsegmentations of the LM and EM data.\n 1. Sampling Frequency - Frequency of point sampling from the fixed and moving segmentation. The greater the value the more points in the point cloud.\n 2. Sigma - Sigma value for the canny edge filter.\n7. **Point Cloud Registration** - Here are the advanced options for the registration of the point clouds\nof both the LM and EM data.\n 1. Voxel Size - The size voxel size of each point. Smaller the size the less memory consumption.\n 2. Subsampling - Downsampling of the point clouds to reduce memory consumption. Greater the number the fewer points in the point cloud.\n 3. Maximum Iterations - The number of round of point cloud registration. If too small it won't converge on an opitmal registration.\n8. **Image Warping** - Here are the advanced options for the image warping of the moving LM images.\n 1. Interpolation Order - The order of the spline interpolation.\n 2. Aproximate Grid - Controls the \"resolution\" of the grid onto which you're warping. A higher value reduces the step size between coordinates.\n 3. Sub-division Factor - Controls the size of the chunk when applying the warping.\n9. **Save Parameters** - Here you can select the option to save the advanced options you've selected\nto a JSON file which can be kept for reproducibility as well as running the registration again.\n10. **Visualise Intermediate Results** - Here you can select to view the outputs of each step as they\nare completed.\n\n### Split Registration\nAs well as being able to run all the steps of CLEM-reg in one widget (the `Run registration` widget),\nyou are also able to do all these steps independently using the `Split Registration` functionality. \n\nThere are four separate widgets that encapsulate the 5 steps of CLEM-reg each of which have\ntheir own unique input and output:\n1. `MitoNet Segmentation` \n - **Input**: EM Image\n - **Output**: EM Segmentation\n2. `LoG Segmentation`\n - **Input**: LM Image\n - **Output**: LM Segmentation\n3. `Point Cloud Sampling`\n - **Input**: LM Segmentation & EM Segmentation\n - **Output**: LM Point Cloud & LM Point Cloud\n4. `Point Cloud Registration & Image Warping`\n - **Input**: EM Image, LM Image, LM Point Cloud & EM Point Cloud\n - **Output**: Registered LM Image, Registered LM Point Cloud\n\n### Registering Multiple LM Channels\nOne can register multiple LM channels at once by doing the following.\n\n1. Start by splitting the LM channels into the separate layers by right-clicking on\nthe layer and then selecting `Split Stack`.\n![merged-channel-split-options.png](docs%2Fimages%2Fmerged-channel-split-options.png)\nThis will result in each of the channels having their own individual layer. \n\n2. Once this is done we must link all the LM layers together, this is done \nby selecting all the layers which will highlight them in blue, once again right-clicking\non the layer and then selecting `Link Layers.`\n![split-channels-link-layers.png](docs%2Fimages%2Fsplit-channels-link-layers.png)\n\n3. When you finally go to run CLEM-reg ensure that for the `Moving Image`\nyou select the LM layer that contains mitochondria.\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 [MIT] license,\n\"napari-clemreg\" 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[file an issue]: https://github.com/krentzd/napari-clemreg/issues\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[conda]: https://docs.conda.io/en/latest/\n\nThis [napari] plugin was generated with [Cookiecutter] using [@napari]'s [cookiecutter-napari-plugin] template.\n","description_content_type":"text/markdown","keywords":null,"home_page":"https://github.com/krentzd/napari-clemreg","download_url":null,"author":"Daniel Krentzel","author_email":"dkrentzel@pm.me","maintainer":null,"maintainer_email":null,"license":"MIT","classifier":["Development Status :: 2 - Pre-Alpha","Intended Audience :: Developers","Framework :: napari","Topic :: Software Development :: Testing","Programming Language :: Python","Programming Language :: Python :: 3","Programming Language :: Python :: 3.7","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9","Operating System :: OS Independent","License :: OSI Approved :: MIT License"],"requires_dist":["typing-extensions","setuptools","packaging","numpy","magicgui","scipy","napari","scikit-image","h5py","matplotlib","imageio","tifffile","probreg","open3d","transforms3d","tqdm","empanada-dl","torch","connected-components-3d"],"requires_python":">=3.7","requires_external":null,"project_url":["Bug Tracker, https://github.com/krentzd/napari-clemreg/issues","Documentation, https://github.com/krentzd/napari-clemreg#README.md","Source Code, https://github.com/krentzd/napari-clemreg","User Support, https://github.com/krentzd/napari-clemreg/issues"],"provides_extra":null,"provides_dist":null,"obsoletes_dist":null},"npe1_shim":false}