CellProfiler-nightly 5.0.0.dev343__tar.gz → 5.0.0.dev351__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 (388) hide show
  1. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/PKG-INFO +1 -1
  2. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/PKG-INFO +1 -1
  3. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/_version.py +3 -3
  4. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/morph.py +54 -174
  5. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/SOURCES.txt +0 -0
  6. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/dependency_links.txt +0 -0
  7. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/entry_points.txt +0 -0
  8. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/requires.txt +0 -0
  9. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/top_level.txt +0 -0
  10. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/LICENSE +0 -0
  11. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/README.md +0 -0
  12. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/__init__.py +0 -0
  13. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/__main__.py +0 -0
  14. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/ExampleFly.cppipe +0 -0
  15. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS002_D.TIF +0 -0
  16. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS002_F.TIF +0 -0
  17. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS002_R.TIF +0 -0
  18. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS076_D.TIF +0 -0
  19. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS076_F.TIF +0 -0
  20. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS076_R.TIF +0 -0
  21. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS218_D.TIF +0 -0
  22. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS218_F.TIF +0 -0
  23. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS218_R.TIF +0 -0
  24. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/display_image_tools.rst +0 -0
  25. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/display_interactive_navigation.rst +0 -0
  26. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/display_menu_bar.rst +0 -0
  27. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/legacy_matlab_image.rst +0 -0
  28. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/navigation_edit_menu.rst +0 -0
  29. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/navigation_file_menu.rst +0 -0
  30. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/navigation_test_menu.rst +0 -0
  31. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/navigation_window_menu.rst +0 -0
  32. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_3d_identify.rst +0 -0
  33. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_batch.rst +0 -0
  34. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_logging.rst +0 -0
  35. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_omero.rst +0 -0
  36. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_plugins.rst +0 -0
  37. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_shell.rst +0 -0
  38. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_troubleshooting.rst +0 -0
  39. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_widget_inspector.rst +0 -0
  40. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/output_measurements.rst +0 -0
  41. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/output_plateviewer.rst +0 -0
  42. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/output_spreadsheets.rst +0 -0
  43. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/pipelines_building.rst +0 -0
  44. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/pipelines_running.rst +0 -0
  45. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_configure_images.rst +0 -0
  46. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_image_ordering.rst +0 -0
  47. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_image_sequences.rst +0 -0
  48. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_introduction.rst +0 -0
  49. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_selecting_images.rst +0 -0
  50. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/why_use_cellprofiler.rst +0 -0
  51. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-120.png +0 -0
  52. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-128.png +0 -0
  53. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-144.png +0 -0
  54. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-152.png +0 -0
  55. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-195.png +0 -0
  56. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-228.png +0 -0
  57. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-32.png +0 -0
  58. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-57.png +0 -0
  59. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-72.png +0 -0
  60. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-96.png +0 -0
  61. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon.ico +0 -0
  62. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.ai +0 -0
  63. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.icns +0 -0
  64. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.ico +0 -0
  65. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.png +0 -0
  66. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.svg +0 -0
  67. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Align.png +0 -0
  68. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ApplyThreshold.png +0 -0
  69. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/CollapseTree.png +0 -0
  70. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ColorToGray.png +0 -0
  71. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/CorrectIlluminationApply.png +0 -0
  72. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/CorrectIlluminationCalculate.png +0 -0
  73. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Crop.png +0 -0
  74. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ExpandOrShrinkObjects.png +0 -0
  75. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ExpandTree.png +0 -0
  76. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/GrayToColor.png +0 -0
  77. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Groups_ExampleDisplayTable.png +0 -0
  78. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_ANALYZED.png +0 -0
  79. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_ANALYZE_16.png +0 -0
  80. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_ANALYZE_24.png +0 -0
  81. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_CLOSED_EYE.png +0 -0
  82. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_DISABLED.png +0 -0
  83. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_ERROR.png +0 -0
  84. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_EYE.png +0 -0
  85. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_GO.png +0 -0
  86. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_GO_DIM.png +0 -0
  87. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_IMAGE.png +0 -0
  88. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_MEASURE.png +0 -0
  89. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_OK.png +0 -0
  90. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_PAUSE.png +0 -0
  91. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_RUN.png +0 -0
  92. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_SLIDER.png +0 -0
  93. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_SLIDER_ACTIVE.png +0 -0
  94. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_STOP.png +0 -0
  95. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_TEST.png +0 -0
  96. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_UNAVAILABLE.png +0 -0
  97. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_UPDATE.png +0 -0
  98. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_USE_INPUT.png +0 -0
  99. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_USE_OUTPUT.png +0 -0
  100. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_USE_SOURCE.png +0 -0
  101. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_WARN.png +0 -0
  102. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IdentifyPrimaryObjects_IntensityDeclumping.png +0 -0
  103. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IdentifyPrimaryObjects_ShapeDeclumping.png +0 -0
  104. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IdentifySecondaryObjects.png +0 -0
  105. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IdentifyTertiaryObjects.png +0 -0
  106. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Images_FilelistPanel.png +0 -0
  107. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Images_FilelistPanel_Blank.png +0 -0
  108. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Images_FilelistPanel_Filled.png +0 -0
  109. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Images_UsingRules.png +0 -0
  110. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureGranularity_example.png +0 -0
  111. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureImageAreaOccupied.png +0 -0
  112. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureObjectIntensityDistribution_Edges_Centers.png +0 -0
  113. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureObjectIntensityDistribution_Magnitude_Phase.png +0 -0
  114. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureObjectSizeShape_Eccentricity.png +0 -0
  115. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureTexture.png +0 -0
  116. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Measure_texture_3D_correspondences_1.png +0 -0
  117. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Measure_texture_3D_correspondences_1_highres.png +0 -0
  118. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Measure_texture_3D_correspondences_2.png +0 -0
  119. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Measure_texture_3D_correspondences_2_highres.png +0 -0
  120. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Metadata_ExampleDisplayTable.png +0 -0
  121. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/NamesAndTypes_ExampleDisplayTable.png +0 -0
  122. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Tile.png +0 -0
  123. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/UnmixColors.png +0 -0
  124. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/check.png +0 -0
  125. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/color.png +0 -0
  126. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/cp_panel_schematic.png +0 -0
  127. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/dapi.png +0 -0
  128. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/delete.png +0 -0
  129. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/downarrow.png +0 -0
  130. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/eye-close.png +0 -0
  131. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/eye-open.png +0 -0
  132. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ffwd.png +0 -0
  133. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ffwddisabled.png +0 -0
  134. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/filter.png +0 -0
  135. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/folder_browse.png +0 -0
  136. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/folder_create.png +0 -0
  137. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/gear.png +0 -0
  138. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/gfp.png +0 -0
  139. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/icon_copyrights.txt +0 -0
  140. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/illumination_function.png +0 -0
  141. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/image_to_object_dataflow.png +0 -0
  142. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/image_to_object_dataflow.psd +0 -0
  143. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/mask.png +0 -0
  144. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/microscope-color_16.png +0 -0
  145. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/microscope-icon_16.png +0 -0
  146. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/microscope-icon_32.png +0 -0
  147. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/microscopes_16.png +0 -0
  148. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_add.png +0 -0
  149. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_help.png +0 -0
  150. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_movedown.png +0 -0
  151. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_moveup.png +0 -0
  152. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_remove.png +0 -0
  153. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/monochrome.png +0 -0
  154. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/movie_16.png +0 -0
  155. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/next.png +0 -0
  156. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/objects.png +0 -0
  157. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/pause.png +0 -0
  158. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/pausedisabled.png +0 -0
  159. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/play.png +0 -0
  160. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/playdisabled.png +0 -0
  161. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/previous.png +0 -0
  162. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/remove-sign.png +0 -0
  163. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/rewind.png +0 -0
  164. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/rewinddisabled.png +0 -0
  165. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/splash-black-text-alpha.png +0 -0
  166. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/splash-white-text-alpha.png +0 -0
  167. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/splash.png +0 -0
  168. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/status_pause.png +0 -0
  169. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/status_save.png +0 -0
  170. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/status_stop.png +0 -0
  171. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/stop.png +0 -0
  172. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/stopdisabled.png +0 -0
  173. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/structuringelement.png +0 -0
  174. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/thumb-down.png +0 -0
  175. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/thumb-up.png +0 -0
  176. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/unchecked.png +0 -0
  177. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/wantpony.wav +0 -0
  178. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_examples.png +0 -0
  179. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_forum.png +0 -0
  180. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_help.png +0 -0
  181. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_manual.png +0 -0
  182. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_new.png +0 -0
  183. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_pipeline.png +0 -0
  184. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_screen_help.png +0 -0
  185. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_start.png +0 -0
  186. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_tutorial.png +0 -0
  187. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcomescreen_forum.png +0 -0
  188. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcomescreen_manual.png +0 -0
  189. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcomescreen_tutorials.png +0 -0
  190. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_back.png +0 -0
  191. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_filesave.png +0 -0
  192. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_forward.png +0 -0
  193. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_home.png +0 -0
  194. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_pan.png +0 -0
  195. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_zoom_to_rect.png +0 -0
  196. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/__init__.py +0 -0
  197. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/_tree_checkbox_dialog.py +0 -0
  198. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/_welcome_frame.py +0 -0
  199. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/_workspace_model.py +0 -0
  200. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/addmoduleframe.py +0 -0
  201. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/app.py +0 -0
  202. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/artist.py +0 -0
  203. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/checkupdate.py +0 -0
  204. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/__init__.py +0 -0
  205. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/figure.py +0 -0
  206. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/module_view.py +0 -0
  207. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/preferences_dialog.py +0 -0
  208. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/preferences_view.py +0 -0
  209. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/workspace_view.py +0 -0
  210. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/cpframe.py +0 -0
  211. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/dialog.py +0 -0
  212. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/editobjectsdlg.py +0 -0
  213. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/errordialog.py +0 -0
  214. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/figure/__init__.py +0 -0
  215. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/figure/_figure.py +0 -0
  216. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/figure/_navigation_toolbar.py +0 -0
  217. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/figure/_outline_artist.py +0 -0
  218. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/gridrenderers.py +0 -0
  219. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/help/__init__.py +0 -0
  220. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/help/content.py +0 -0
  221. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/help/menu.py +0 -0
  222. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/help/search.py +0 -0
  223. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/__init__.py +0 -0
  224. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/configure_images_help.html +0 -0
  225. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/exporting_results_help.html +0 -0
  226. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/getting_started.html +0 -0
  227. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/htmlwindow.py +0 -0
  228. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/identify_features_help.html +0 -0
  229. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/in_app_help.html +0 -0
  230. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/making_measurements_help.html +0 -0
  231. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/running_pipeline_help.html +0 -0
  232. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/selecting_images_help.html +0 -0
  233. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/test_mode_help.html +0 -0
  234. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/utils.py +0 -0
  235. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/welcome.html +0 -0
  236. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/htmldialog.py +0 -0
  237. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/imagesetctrl.py +0 -0
  238. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/menu.py +0 -0
  239. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/metadatactrl.py +0 -0
  240. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/__init__.py +0 -0
  241. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_binary_matrix_controller.py +0 -0
  242. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_data_type_controller.py +0 -0
  243. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_file_collection_display_controller.py +0 -0
  244. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_filter_panel_controller.py +0 -0
  245. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_joiner_controller.py +0 -0
  246. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_module_sizer.py +0 -0
  247. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_module_view.py +0 -0
  248. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_setting_edited_event.py +0 -0
  249. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_table_controller.py +0 -0
  250. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_validation_request_controller.py +0 -0
  251. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/moduleview.py +0 -0
  252. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/namesubscriber.py +0 -0
  253. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/omerologin.py +0 -0
  254. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/parametersampleframe.py +0 -0
  255. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/pathlist.py +0 -0
  256. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/pipeline.py +0 -0
  257. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/pipelinecontroller.py +0 -0
  258. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/pipelinelistview.py +0 -0
  259. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/plateviewer.py +0 -0
  260. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/plugins_menu.py +0 -0
  261. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_dialog/__init__.py +0 -0
  262. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_dialog/_integer_preference.py +0 -0
  263. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_dialog/_preferences_dialog.py +0 -0
  264. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_view/__init__.py +0 -0
  265. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_view/_preferences_view.py +0 -0
  266. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_view/_progress_watcher.py +0 -0
  267. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/readers_dialog/__init__.py +0 -0
  268. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/readers_dialog/_readers_dialog.py +0 -0
  269. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/regexp_editor.py +0 -0
  270. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/tools.py +0 -0
  271. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/__init__.py +0 -0
  272. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/figure.py +0 -0
  273. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/icon.py +0 -0
  274. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/module_view.py +0 -0
  275. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/preferences_dialog.py +0 -0
  276. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/preferences_view.py +0 -0
  277. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/workspace_view.py +0 -0
  278. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/__init__.py +0 -0
  279. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view.py +0 -0
  280. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_figure.py +0 -0
  281. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_image_row.py +0 -0
  282. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_mask_row.py +0 -0
  283. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_measurement_row.py +0 -0
  284. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_objects_row.py +0 -0
  285. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_row.py +0 -0
  286. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/icons/__init__.py +0 -0
  287. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/knime_bridge.py +0 -0
  288. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/misc.py +0 -0
  289. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/UntangleWorms.xsd +0 -0
  290. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/__init__.py +0 -0
  291. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/_help.py +0 -0
  292. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/calculatemath.py +0 -0
  293. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/calculatestatistics.py +0 -0
  294. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/classifyobjects.py +0 -0
  295. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/closing.py +0 -0
  296. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/colortogray.py +0 -0
  297. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/combineobjects.py +0 -0
  298. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/convertimagetoobjects.py +0 -0
  299. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/convertobjectstoimage.py +0 -0
  300. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/correctilluminationapply.py +0 -0
  301. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/correctilluminationcalculate.py +0 -0
  302. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/createbatchfiles.py +0 -0
  303. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/crop.py +0 -0
  304. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/definegrid.py +0 -0
  305. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/dilateimage.py +0 -0
  306. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/dilateobjects.py +0 -0
  307. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displaydataonimage.py +0 -0
  308. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displaydensityplot.py +0 -0
  309. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displayhistogram.py +0 -0
  310. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displayplatemap.py +0 -0
  311. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displayscatterplot.py +0 -0
  312. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/editobjectsmanually.py +0 -0
  313. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/enhanceedges.py +0 -0
  314. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/enhanceorsuppressfeatures.py +0 -0
  315. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/erodeimage.py +0 -0
  316. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/erodeobjects.py +0 -0
  317. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/expandorshrinkobjects.py +0 -0
  318. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/exporttodatabase.py +0 -0
  319. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/exporttospreadsheet.py +0 -0
  320. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/fillobjects.py +0 -0
  321. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/filterobjects.py +0 -0
  322. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/findmaxima.py +0 -0
  323. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/flagimage.py +0 -0
  324. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/flipandrotate.py +0 -0
  325. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/gaussianfilter.py +0 -0
  326. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/graytocolor.py +0 -0
  327. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifydeadworms.py +0 -0
  328. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifyobjectsingrid.py +0 -0
  329. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifyobjectsmanually.py +0 -0
  330. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifyprimaryobjects.py +0 -0
  331. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifysecondaryobjects.py +0 -0
  332. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifytertiaryobjects.py +0 -0
  333. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/imagemath.py +0 -0
  334. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/invertforprinting.py +0 -0
  335. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/labelimages.py +0 -0
  336. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/makeprojection.py +0 -0
  337. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/maskimage.py +0 -0
  338. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/maskobjects.py +0 -0
  339. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/matchtemplate.py +0 -0
  340. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measurecolocalization.py +0 -0
  341. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measuregranularity.py +0 -0
  342. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimageareaoccupied.py +0 -0
  343. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimageintensity.py +0 -0
  344. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimageoverlap.py +0 -0
  345. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimagequality.py +0 -0
  346. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimageskeleton.py +0 -0
  347. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectintensity.py +0 -0
  348. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectintensitydistribution.py +0 -0
  349. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectneighbors.py +0 -0
  350. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectoverlap.py +0 -0
  351. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectsizeshape.py +0 -0
  352. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectskeleton.py +0 -0
  353. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measuretexture.py +0 -0
  354. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/medialaxis.py +0 -0
  355. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/medianfilter.py +0 -0
  356. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/morphologicalskeleton.py +0 -0
  357. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/opening.py +0 -0
  358. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/overlayobjects.py +0 -0
  359. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/overlayoutlines.py +0 -0
  360. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/plugins/__init__.py +0 -0
  361. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/plugins/imagetemplate.py +0 -0
  362. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/plugins/measurementtemplate.py +0 -0
  363. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/plugins/segmentationtemplatewithdependencies.py +0 -0
  364. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/reducenoise.py +0 -0
  365. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/relateobjects.py +0 -0
  366. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/removeholes.py +0 -0
  367. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/rescaleintensity.py +0 -0
  368. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/resize.py +0 -0
  369. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/resizeobjects.py +0 -0
  370. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/runimagejmacro.py +0 -0
  371. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/savecroppedobjects.py +0 -0
  372. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/saveimages.py +0 -0
  373. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/shrinktoobjectcenters.py +0 -0
  374. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/smooth.py +0 -0
  375. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/splitormergeobjects.py +0 -0
  376. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/straightenworms.py +0 -0
  377. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/threshold.py +0 -0
  378. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/tile.py +0 -0
  379. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/trackobjects.py +0 -0
  380. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/unmixcolors.py +0 -0
  381. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/untangleworms.py +0 -0
  382. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/watershed.py +0 -0
  383. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/utilities/__init__.py +0 -0
  384. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/utilities/morphology.py +0 -0
  385. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/utilities/rules.py +0 -0
  386. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/environment.yml +0 -0
  387. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/pyproject.toml +0 -0
  388. {cellprofiler_nightly-5.0.0.dev343 → cellprofiler_nightly-5.0.0.dev351}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: CellProfiler-nightly
3
- Version: 5.0.0.dev343
3
+ Version: 5.0.0.dev351
4
4
  Summary: CellProfiler is a free open-source software designed to enable biologists without training in computer vision or programming to quantitatively measure phenotypes from thousands of images automatically.
5
5
  Author: Anne Carpenter, Thouis (Ray) Jones, Lee Kamentsky, Vebjorn Ljosa, David Logan, Mark Bray, Madison Swain-Bowden, Allen Goodman, Claire McQuinn, Alice Lucas, Callum Tromans-Coia
6
6
  Author-email: Beth Cimini <bcimini@broadinstitute.org>, David Stirling <dstirling@glencoesoftware.com>, Nodar Gogoberidze <ngogober@broadinstitute.org>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: CellProfiler-nightly
3
- Version: 5.0.0.dev343
3
+ Version: 5.0.0.dev351
4
4
  Summary: CellProfiler is a free open-source software designed to enable biologists without training in computer vision or programming to quantitatively measure phenotypes from thousands of images automatically.
5
5
  Author: Anne Carpenter, Thouis (Ray) Jones, Lee Kamentsky, Vebjorn Ljosa, David Logan, Mark Bray, Madison Swain-Bowden, Allen Goodman, Claire McQuinn, Alice Lucas, Callum Tromans-Coia
6
6
  Author-email: Beth Cimini <bcimini@broadinstitute.org>, David Stirling <dstirling@glencoesoftware.com>, Nodar Gogoberidze <ngogober@broadinstitute.org>
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '5.0.0.dev343'
32
- __version_tuple__ = version_tuple = (5, 0, 0, 'dev343')
31
+ __version__ = version = '5.0.0.dev351'
32
+ __version_tuple__ = version_tuple = (5, 0, 0, 'dev351')
33
33
 
34
- __commit_id__ = commit_id = 'gc6a344488'
34
+ __commit_id__ = commit_id = 'gf1998bdae'
@@ -254,10 +254,8 @@ tophat EnhanceOrSuppressFeatures *Operation* Enhance -> Speckles
254
254
 
255
255
  import logging
256
256
 
257
- import centrosome.cpmorphology
258
- import centrosome.filter
259
257
  import numpy
260
- import scipy.ndimage
258
+ from enum import Enum
261
259
  from cellprofiler_core.image import Image
262
260
  from cellprofiler_core.module import Module
263
261
  from cellprofiler_core.setting import Binary
@@ -269,57 +267,27 @@ from cellprofiler_core.setting.do_something import RemoveSettingButton
269
267
  from cellprofiler_core.setting.subscriber import ImageSubscriber
270
268
  from cellprofiler_core.setting.text import ImageName, Integer
271
269
 
272
- LOGGER = logging.getLogger(__name__)
273
-
274
- F_BRANCHPOINTS = "branchpoints"
275
- F_BRIDGE = "bridge"
276
- F_CLEAN = "clean"
277
- F_CONVEX_HULL = "convex hull"
278
- F_DIAG = "diag"
279
- F_DISTANCE = "distance"
280
- F_ENDPOINTS = "endpoints"
281
- F_FILL = "fill"
282
- F_HBREAK = "hbreak"
283
- F_MAJORITY = "majority"
284
- F_OPENLINES = "openlines"
285
- F_REMOVE = "remove"
286
- F_SHRINK = "shrink"
287
- F_SKELPE = "skelpe"
288
- F_SPUR = "spur"
289
- F_THICKEN = "thicken"
290
- F_THIN = "thin"
291
- F_VBREAK = "vbreak"
292
- F_ALL = [
293
- F_BRANCHPOINTS,
294
- F_BRIDGE,
295
- F_CLEAN,
296
- F_CONVEX_HULL,
297
- F_DIAG,
298
- F_DISTANCE,
299
- F_ENDPOINTS,
300
- F_FILL,
301
- F_HBREAK,
302
- F_MAJORITY,
303
- F_OPENLINES,
304
- F_REMOVE,
305
- F_SHRINK,
306
- F_SKELPE,
307
- F_SPUR,
308
- F_THICKEN,
309
- F_THIN,
310
- F_VBREAK,
311
- ]
270
+ from cellprofiler_library.modules._morph import apply_morphological_operations
271
+ from cellprofiler_library.opts.morph import MorphFunction, MorphFunctions_All as F_ALL
312
272
 
313
- R_ONCE = "Once"
314
- R_FOREVER = "Forever"
315
- R_CUSTOM = "Custom"
316
- R_ALL = [R_ONCE, R_FOREVER, R_CUSTOM]
273
+ LOGGER = logging.getLogger(__name__)
317
274
 
318
275
  FUNCTION_SETTING_COUNT_V1 = 3
319
276
  FUNCTION_SETTING_COUNT_V2 = 4
320
277
  FUNCTION_SETTING_COUNT_V3 = 11
321
278
  FUNCTION_SETTING_COUNT = 4
322
279
 
280
+ class RepeatMethod(str, Enum):
281
+ """Options for how many times to repeat morphological operations."""
282
+ ONCE = "Once"
283
+ FOREVER = "Forever"
284
+ CUSTOM = "Custom"
285
+
286
+ R_ALL = [
287
+ RepeatMethod.ONCE.value,
288
+ RepeatMethod.FOREVER.value,
289
+ RepeatMethod.CUSTOM.value
290
+ ]
323
291
 
324
292
  class Morph(Module):
325
293
  module_name = "Morph"
@@ -386,11 +354,17 @@ Enter the number of times to repeat the operation."""
386
354
  This setting controls the number of times that the same operation is
387
355
  applied successively to the image.
388
356
 
389
- - *%(R_ONCE)s:* Perform the operation once on the image.
390
- - *%(R_FOREVER)s:* Perform the operation on the image until successive
357
+ - *{R_ONCE}:* Perform the operation once on the image.
358
+ - *{R_FOREVER}:* Perform the operation on the image until successive
391
359
  iterations yield the same image.
392
- - *%(R_CUSTOM)s:* Perform the operation a custom number of times."""
393
- % globals(),
360
+ - *{R_CUSTOM}:* Perform the operation a custom number of times.
361
+ """.format(
362
+ **{
363
+ "R_ONCE": RepeatMethod.ONCE.value,
364
+ "R_FOREVER": RepeatMethod.FOREVER.value,
365
+ "R_CUSTOM": RepeatMethod.CUSTOM.value
366
+ }
367
+ ),
394
368
  ),
395
369
  )
396
370
 
@@ -405,7 +379,7 @@ applied successively to the image.
405
379
  "Rescale values from 0 to 1?",
406
380
  True,
407
381
  doc="""\
408
- *(Used only for the "%(F_DISTANCE)s" operation).*
382
+ *(Used only for the "{F_DISTANCE}" operation).*
409
383
 
410
384
  Select "*Yes*" to rescale the transformed values to lie between 0 and
411
385
  1. This is the option to use if the distance transformed image is to be
@@ -414,8 +388,8 @@ assumes a 0-1 scaling.
414
388
 
415
389
  Select "*No*" to leave the values in absolute pixel units. This useful
416
390
  in cases where the actual pixel distances are to be used downstream as
417
- input for a measurement module."""
418
- % globals(),
391
+ input for a measurement module.
392
+ """.format(**{"F_DISTANCE": MorphFunction.DISTANCE.value}),
419
393
  ),
420
394
  )
421
395
 
@@ -453,15 +427,15 @@ input for a measurement module."""
453
427
  if function.can_remove:
454
428
  result.append(function.divider)
455
429
  result.append(function.function)
456
- if function.function == F_DISTANCE:
430
+ if function.function == MorphFunction.DISTANCE.value:
457
431
  result.append(function.rescale_values)
458
- elif function.function == F_OPENLINES:
432
+ elif function.function == MorphFunction.OPENLINES.value:
459
433
  function.custom_repeats.text = "Line length"
460
434
  function.custom_repeats.doc = (
461
435
  """Only keep lines that have this many pixels or more."""
462
436
  )
463
437
  result.append(function.custom_repeats)
464
- elif function.repeats_choice != R_CUSTOM:
438
+ elif function.repeats_choice != RepeatMethod.CUSTOM.value:
465
439
  result.append(function.repeats_choice)
466
440
  else:
467
441
  result.append(function.repeats_choice)
@@ -474,12 +448,15 @@ input for a measurement module."""
474
448
  return result
475
449
 
476
450
  def run(self, workspace):
451
+ # Parameter extraction
477
452
  image = workspace.image_set.get_image(self.image_name.value)
478
453
  if image.has_mask:
479
454
  mask = image.mask
480
455
  else:
481
456
  mask = None
482
457
  pixel_data = image.pixel_data
458
+
459
+ # Handle color images
483
460
  if pixel_data.ndim == 3:
484
461
  if any(
485
462
  [
@@ -489,8 +466,21 @@ input for a measurement module."""
489
466
  ):
490
467
  LOGGER.warning("Image is color, converting to grayscale")
491
468
  pixel_data = numpy.sum(pixel_data, 2) / pixel_data.shape[2]
469
+
470
+ # Prepare operations list for dispatcher
471
+ operations_list = []
492
472
  for function in self.functions:
493
- pixel_data = self.run_function(function, pixel_data, mask)
473
+ operations_list.append({
474
+ "function_name": function.function.value,
475
+ "repeat_count": function.repeat_count,
476
+ "custom_repeats": function.custom_repeats.value,
477
+ "rescale_values": function.rescale_values.value
478
+ })
479
+
480
+ # Single dispatcher call
481
+ pixel_data = apply_morphological_operations(pixel_data, mask, operations_list)
482
+
483
+ # Handle result
494
484
  new_image = Image(pixel_data, parent_image=image)
495
485
  workspace.image_set.add(self.output_image_name.value, new_image)
496
486
  if self.show_window:
@@ -524,119 +514,7 @@ input for a measurement module."""
524
514
  sharexy=figure.subplot(0, 0),
525
515
  )
526
516
 
527
- def run_function(self, function, pixel_data, mask):
528
- """Apply the function once to the image, returning the result"""
529
- count = function.repeat_count
530
- function_name = function.function.value
531
- custom_repeats = function.custom_repeats.value
532
-
533
- is_binary = pixel_data.dtype.kind == "b"
534
-
535
- if (
536
- function_name
537
- in (
538
- F_BRANCHPOINTS,
539
- F_BRIDGE,
540
- F_CLEAN,
541
- F_DIAG,
542
- F_CONVEX_HULL,
543
- F_DISTANCE,
544
- F_ENDPOINTS,
545
- F_FILL,
546
- F_HBREAK,
547
- F_MAJORITY,
548
- F_REMOVE,
549
- F_SHRINK,
550
- F_SKELPE,
551
- F_SPUR,
552
- F_THICKEN,
553
- F_THIN,
554
- F_VBREAK,
555
- )
556
- and not is_binary
557
- ):
558
- # Apply a very crude threshold to the image for binary algorithms
559
- LOGGER.warning(
560
- "Warning: converting image to binary for %s\n" % function_name
561
- )
562
- pixel_data = pixel_data != 0
563
-
564
- if function_name in (
565
- F_BRANCHPOINTS,
566
- F_BRIDGE,
567
- F_CLEAN,
568
- F_DIAG,
569
- F_CONVEX_HULL,
570
- F_DISTANCE,
571
- F_ENDPOINTS,
572
- F_FILL,
573
- F_HBREAK,
574
- F_MAJORITY,
575
- F_REMOVE,
576
- F_SHRINK,
577
- F_SKELPE,
578
- F_SPUR,
579
- F_THICKEN,
580
- F_THIN,
581
- F_VBREAK,
582
- F_OPENLINES,
583
- ):
584
- # All of these have an iterations argument or it makes no
585
- # sense to iterate
586
- if function_name == F_BRANCHPOINTS:
587
- return centrosome.cpmorphology.branchpoints(pixel_data, mask)
588
- elif function_name == F_BRIDGE:
589
- return centrosome.cpmorphology.bridge(pixel_data, mask, count)
590
- elif function_name == F_CLEAN:
591
- return centrosome.cpmorphology.clean(pixel_data, mask, count)
592
- elif function_name == F_CONVEX_HULL:
593
- if mask is None:
594
- return centrosome.cpmorphology.convex_hull_image(pixel_data)
595
- else:
596
- return centrosome.cpmorphology.convex_hull_image(pixel_data & mask)
597
- elif function_name == F_DIAG:
598
- return centrosome.cpmorphology.diag(pixel_data, mask, count)
599
- elif function_name == F_DISTANCE:
600
- image = scipy.ndimage.distance_transform_edt(pixel_data)
601
- if function.rescale_values.value:
602
- image = image / numpy.max(image)
603
- return image
604
- elif function_name == F_ENDPOINTS:
605
- return centrosome.cpmorphology.endpoints(pixel_data, mask)
606
- elif function_name == F_FILL:
607
- return centrosome.cpmorphology.fill(pixel_data, mask, count)
608
- elif function_name == F_HBREAK:
609
- return centrosome.cpmorphology.hbreak(pixel_data, mask, count)
610
- elif function_name == F_MAJORITY:
611
- return centrosome.cpmorphology.majority(pixel_data, mask, count)
612
- elif function_name == F_OPENLINES:
613
- return centrosome.cpmorphology.openlines(
614
- pixel_data, linelength=custom_repeats, mask=mask
615
- )
616
- elif function_name == F_REMOVE:
617
- return centrosome.cpmorphology.remove(pixel_data, mask, count)
618
- elif function_name == F_SHRINK:
619
- return centrosome.cpmorphology.binary_shrink(pixel_data, count)
620
- elif function_name == F_SKELPE:
621
- return centrosome.cpmorphology.skeletonize(
622
- pixel_data,
623
- mask,
624
- scipy.ndimage.distance_transform_edt(pixel_data)
625
- * centrosome.filter.poisson_equation(pixel_data),
626
- )
627
- elif function_name == F_SPUR:
628
- return centrosome.cpmorphology.spur(pixel_data, mask, count)
629
- elif function_name == F_THICKEN:
630
- return centrosome.cpmorphology.thicken(pixel_data, mask, count)
631
- elif function_name == F_THIN:
632
- return centrosome.cpmorphology.thin(pixel_data, mask, count)
633
- elif function_name == F_VBREAK:
634
- return centrosome.cpmorphology.vbreak(pixel_data, mask)
635
- else:
636
- raise NotImplementedError(
637
- "Unimplemented morphological function: %s" % function_name
638
- )
639
- return pixel_data
517
+
640
518
 
641
519
  def upgrade_settings(self, setting_values, variable_revision_number, module_name):
642
520
  """Adjust the setting_values of previous revisions to match this one"""
@@ -697,11 +575,11 @@ class MorphSettingsGroup(SettingsGroup):
697
575
  @property
698
576
  def repeat_count(self):
699
577
  """""" # of times to repeat'''
700
- if self.repeats_choice == R_ONCE:
578
+ if self.repeats_choice.value == RepeatMethod.ONCE.value:
701
579
  return 1
702
- elif self.repeats_choice == R_FOREVER:
580
+ elif self.repeats_choice.value == RepeatMethod.FOREVER.value:
703
581
  return 10000
704
- elif self.repeats_choice == R_CUSTOM:
582
+ elif self.repeats_choice.value == RepeatMethod.CUSTOM.value:
705
583
  return self.custom_repeats.value
706
584
  else:
707
585
  raise ValueError(
@@ -710,3 +588,5 @@ class MorphSettingsGroup(SettingsGroup):
710
588
 
711
589
  """The thresholding algorithm to run"""
712
590
  return self.threshold_method.value.split(" ")[0]
591
+
592
+