small-fish-gui 1.9.4__tar.gz → 1.10.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/PKG-INFO +11 -10
  2. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/pyproject.toml +12 -10
  3. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/README.md +2 -1
  4. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/__init__.py +5 -1
  5. small_fish_gui-1.10.0/src/small_fish_gui/__main__.py +52 -0
  6. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/batch/prompt.py +1 -1
  7. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/batch/update.py +2 -2
  8. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/batch/values.txt +1 -1
  9. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/gui/__init__.py +0 -2
  10. small_fish_gui-1.10.0/src/small_fish_gui/gui/_napari_widgets.py +501 -0
  11. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/gui/layout.py +10 -7
  12. small_fish_gui-1.10.0/src/small_fish_gui/gui/napari_visualiser.py +261 -0
  13. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/gui/prompts.py +16 -41
  14. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/gui/testing.ipynb +138 -28
  15. small_fish_gui-1.10.0/src/small_fish_gui/gui/theme.py +5 -0
  16. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/hints.py +9 -7
  17. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/interface/__init__.py +1 -0
  18. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/interface/image.py +22 -1
  19. small_fish_gui-1.10.0/src/small_fish_gui/interface/testing.py +63 -0
  20. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/_preprocess.py +18 -12
  21. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/actions.py +5 -0
  22. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/detection.py +31 -8
  23. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/main.py +23 -3
  24. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/segmentation.py +2 -2
  25. small_fish_gui-1.10.0/src/small_fish_gui/requirements.txt +18 -0
  26. small_fish_gui-1.9.4/src/small_fish_gui/Segmentation example.jpg +0 -0
  27. small_fish_gui-1.9.4/src/small_fish_gui/__main__.py +0 -62
  28. small_fish_gui-1.9.4/src/small_fish_gui/gui/_napari_widgets.py +0 -93
  29. small_fish_gui-1.9.4/src/small_fish_gui/gui/help_module.py +0 -256
  30. small_fish_gui-1.9.4/src/small_fish_gui/gui/napari_visualiser.py +0 -360
  31. small_fish_gui-1.9.4/src/small_fish_gui/interface/testing.py +0 -12
  32. small_fish_gui-1.9.4/src/small_fish_gui/napari_detection_example.png +0 -0
  33. small_fish_gui-1.9.4/src/small_fish_gui/requirements.txt +0 -17
  34. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/LICENSE +0 -0
  35. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/README.md +0 -0
  36. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/.github/workflows/python-publish.yml +0 -0
  37. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/LICENSE +0 -0
  38. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/batch/__init__.py +0 -0
  39. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/batch/input.py +0 -0
  40. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/batch/integrity.py +0 -0
  41. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/batch/pipeline.py +0 -0
  42. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/batch/test.py +0 -0
  43. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/batch/utils.py +0 -0
  44. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/gui/animation.py +0 -0
  45. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/gui/screenshot/general_help_screenshot.png +0 -0
  46. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/gui/screenshot/mapping_help_screenshot.png +0 -0
  47. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/gui/screenshot/segmentation_help_screenshot.png +0 -0
  48. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/interface/inoutput.py +0 -0
  49. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/__init__.py +0 -0
  50. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/_colocalisation.py +0 -0
  51. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/_custom_errors.py +0 -0
  52. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/_signaltonoise.py +0 -0
  53. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/spots.py +0 -0
  54. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/test.py +0 -0
  55. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/testing.ipynb +0 -0
  56. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/pipeline/utils.py +0 -0
  57. {small_fish_gui-1.9.4 → small_fish_gui-1.10.0}/src/small_fish_gui/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: small_fish_gui
3
- Version: 1.9.4
3
+ Version: 1.10.0
4
4
  Summary: Small Fish is a python application for the analysis of smFish images. It provides a ready to use graphical interface to combine famous python packages for cell analysis without any need for coding.
5
5
  Project-URL: Homepage, https://github.com/2Echoes/small_fish
6
6
  Project-URL: Wiki, https://github.com/2Echoes/small_fish_gui/wiki
@@ -11,23 +11,24 @@ Classifier: License :: OSI Approved :: BSD License
11
11
  Classifier: Operating System :: OS Independent
12
12
  Classifier: Programming Language :: Python :: 3
13
13
  Requires-Python: >=3.8
14
+ Requires-Dist: aicsimageio>=4.14.0
14
15
  Requires-Dist: big-fish==0.6.2
15
16
  Requires-Dist: cellpose==3.0.7
16
17
  Requires-Dist: czifile==2019.7.2
17
- Requires-Dist: freesimplegui==5.1.1
18
+ Requires-Dist: freesimplegui>=5.1.1
18
19
  Requires-Dist: imageio==2.34.0
19
- Requires-Dist: napari-console==0.0.9
20
- Requires-Dist: napari-plugin-engine==0.2.0
21
- Requires-Dist: napari-plugin-manager==0.1.0a2
22
- Requires-Dist: napari-svg==0.1.10
23
- Requires-Dist: napari==0.4.19.post1
24
- Requires-Dist: numpy==1.24.4
20
+ Requires-Dist: napari-console>=0.0.9
21
+ Requires-Dist: napari-plugin-engine>=0.2.0
22
+ Requires-Dist: napari-plugin-manager>=0.1.0a2
23
+ Requires-Dist: napari-svg>=0.1.10
24
+ Requires-Dist: napari>=0.4.19.post1
25
+ Requires-Dist: numpy>=1.24.4
25
26
  Requires-Dist: openpyxl==3.1.2
26
- Requires-Dist: pandas==1.5.3
27
+ Requires-Dist: pandas>=1.5.3
27
28
  Requires-Dist: pyarrow==11.0.0
28
29
  Requires-Dist: scikit-image==0.19.1
29
30
  Requires-Dist: scikit-learn==1.3.2
30
- Requires-Dist: scipy==1.9.1
31
+ Requires-Dist: scipy>=1.9.1
31
32
  Description-Content-Type: text/markdown
32
33
 
33
34
  # Small Fish
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "small_fish_gui"
7
- version = "1.9.4"
7
+ version = "1.10.0"
8
8
  authors = [
9
9
  { name="Slimani Floric", email="floric.slimani@live.com" },
10
10
  ]
@@ -21,19 +21,21 @@ dependencies = [
21
21
  "cellpose==3.0.7",
22
22
  "czifile==2019.7.2",
23
23
  "imageio==2.34.0",
24
- "napari==0.4.19.post1",
25
- "napari-console==0.0.9",
26
- "napari-plugin-engine==0.2.0",
27
- "napari-plugin-manager==0.1.0a2",
28
- "napari-svg==0.1.10",
29
- "numpy==1.24.4",
30
- "pandas==1.5.3",
31
- "FreeSimpleGUI==5.1.1",
32
- "scipy==1.9.1",
24
+ "napari>=0.4.19.post1",
25
+ "napari-console>=0.0.9",
26
+ "napari-plugin-engine>=0.2.0",
27
+ "napari-plugin-manager>=0.1.0a2",
28
+ "napari-svg>=0.1.10",
29
+ "numpy>=1.24.4",
30
+ "pandas>=1.5.3",
31
+ "FreeSimpleGUI>=5.1.1",
32
+ "scipy>=1.9.1",
33
33
  "scikit-image==0.19.1",
34
34
  "scikit-learn==1.3.2",
35
35
  "openpyxl==3.1.2",
36
36
  "pyarrow==11.0.0",
37
+ "aicsimageio>=4.14.0",
38
+
37
39
  ]
38
40
 
39
41
  [project.urls]
@@ -23,7 +23,7 @@ If you don't have a python installation yet I would recommend the [miniconda dis
23
23
  It is higly recommanded to create a specific [conda](https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html) or [virtual](https://docs.python.org/3.6/library/venv.html) environnement to install small fish.
24
24
 
25
25
  ```bash
26
- conda create -n small_fish python=3.8
26
+ conda create -n small_fish python=3.9
27
27
  conda activate small_fish
28
28
  ```
29
29
  Then download the small_fish package :
@@ -102,3 +102,4 @@ Optional features to include in future versions :
102
102
  * allows npz files with multiple masks in load segmentation by asking user which one to select
103
103
  * fix parquet format or replace to another compressed format
104
104
  * In Napari viewer, or add an extra spot layer to visualsize spots that are in foci or color spots that are in clusters in specific color.
105
+ * Foci merge tool in Napari
@@ -37,4 +37,8 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
37
37
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
38
38
  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
39
39
  """
40
- __version__ = "1.9.4"
40
+ __version__ = "1.10.0"
41
+ __wiki__ = "https://github.com/2Echoes/small_fish_gui/wiki"
42
+
43
+ import os
44
+ os.environ["QT_QPA_PLATFORM"] = "xcb"
@@ -0,0 +1,52 @@
1
+ import sys, subprocess, re
2
+ from small_fish_gui import __version__
3
+
4
+ AVAILABLE_ARGUMENTS = {
5
+ ('-v','--v','--version') : "Prompt the software version.",
6
+ ('--launch', '-l') : "Launch small fish gui, equivalent to no arguments.",
7
+ ('-h', '--help', '--h') : "Prompt this help menu."
8
+ }
9
+
10
+
11
+ def main():
12
+ import small_fish_gui.pipeline.main
13
+
14
+ def _get_version() :
15
+ return __version__
16
+
17
+ def is_last_version() :
18
+
19
+ query = subprocess.run([sys.executable, '-m', 'pip', 'index', 'versions', 'small_fish_gui'], capture_output=True, text=True)
20
+ all_version = query.stdout.split(',')
21
+ latest_version = all_version[0]
22
+ regex = r"\d+\.\d+\.\d+"
23
+ latest = re.findall(regex, latest_version)
24
+
25
+ current_version = _get_version()
26
+
27
+ if len(latest) == 0 :
28
+ return current_version
29
+ else :
30
+ return current_version == latest[-1]
31
+
32
+ if __name__ == "__main__":
33
+
34
+ if not is_last_version() :
35
+ print("A new version of Small Fish is available. To update close small fish and type :\npip install --upgrade small_fish_gui")
36
+
37
+ arguments = sys.argv
38
+
39
+ if len(arguments) > 1 :
40
+ if arguments[1] in ['-v','--v','--version'] :
41
+ print(_get_version())
42
+ quit()
43
+ elif arguments[1] in ['--launch', '-l'] :
44
+ pass
45
+ elif arguments[1] in ['-h', '--help', '--h'] :
46
+ for key, help in AVAILABLE_ARGUMENTS.items() :
47
+ print(f"{key} : {help}")
48
+ quit()
49
+ else :
50
+ print(f"Incorrect argument : {arguments}, to launch small fish don't pass any argument or pick amongst {AVAILABLE_ARGUMENTS.keys()}")
51
+
52
+ sys.exit(main())
@@ -212,7 +212,7 @@ def batch_promp(
212
212
  #Hiding options for non batch mode
213
213
  window= window.finalize()
214
214
  napari_correction_elmt.update(disabled=True)
215
- get_elmt_from_key(tab_dict['Input'], key= 'image path').update(disabled=True)
215
+ get_elmt_from_key(tab_dict['Input'], key= 'image_path').update(disabled=True)
216
216
  for key in seg_keys_to_hide : get_elmt_from_key(tab_dict['Segmentation'], key=key).update(disabled=True)
217
217
  for key in detection_keys_to_hide : get_elmt_from_key(tab_dict['Detection'], key=key).update(disabled=True)
218
218
 
@@ -51,8 +51,8 @@ def update_detection_tab(
51
51
  deconvolution_kernel_z = get_elmt_from_key(tab_elmt, key= 'deconvolution_kernel_z')
52
52
 
53
53
  #Clustering
54
- cluster_size = get_elmt_from_key(tab_elmt, key= 'cluster size')
55
- min_number_of_spot = get_elmt_from_key(tab_elmt, key= 'min number of spots')
54
+ cluster_size = get_elmt_from_key(tab_elmt, key= 'cluster_size')
55
+ min_number_of_spot = get_elmt_from_key(tab_elmt, key= 'min_number_of_spots')
56
56
 
57
57
  #segmentation and multichannel
58
58
  nucleus_channel_signal = get_elmt_from_key(tab_elmt, key= 'nucleus channel signal')
@@ -2,7 +2,7 @@ List of keys for batch 'values' dict instance :
2
2
 
3
3
  Batch_folder
4
4
  0
5
- image path
5
+ image_path
6
6
  3D stack
7
7
  multichannel
8
8
  Dense regions deconvolution
@@ -5,7 +5,6 @@ This subpackge contains code related to graphical interface
5
5
  from .prompts import _error_popup
6
6
  from .prompts import _warning_popup
7
7
  from .prompts import prompt
8
- from .prompts import prompt_with_help
9
8
  from .prompts import input_image_prompt
10
9
  from .prompts import hub_prompt
11
10
  from .prompts import detection_parameters_promt
@@ -13,7 +12,6 @@ from .prompts import coloc_prompt
13
12
  from .prompts import output_image_prompt
14
13
  from .prompts import ask_cancel_detection
15
14
  from .prompts import ask_cancel_segmentation
16
- from .prompts import ask_help
17
15
  from .prompts import ask_detection_confirmation
18
16
  from .prompts import prompt_restore_main_menu
19
17