CellProfiler-nightly 5.0.0.dev340__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.dev340 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/PKG-INFO +1 -1
  2. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/PKG-INFO +1 -1
  3. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/_version.py +3 -3
  4. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/dilateobjects.py +2 -3
  5. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/morph.py +54 -174
  6. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/SOURCES.txt +0 -0
  7. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/dependency_links.txt +0 -0
  8. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/entry_points.txt +0 -0
  9. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/requires.txt +0 -0
  10. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/CellProfiler_nightly.egg-info/top_level.txt +0 -0
  11. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/LICENSE +0 -0
  12. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/README.md +0 -0
  13. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/__init__.py +0 -0
  14. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/__main__.py +0 -0
  15. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/ExampleFly.cppipe +0 -0
  16. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS002_D.TIF +0 -0
  17. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS002_F.TIF +0 -0
  18. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS002_R.TIF +0 -0
  19. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS076_D.TIF +0 -0
  20. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS076_F.TIF +0 -0
  21. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS076_R.TIF +0 -0
  22. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS218_D.TIF +0 -0
  23. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS218_F.TIF +0 -0
  24. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/examples/ExampleFly/images/01_POS218_R.TIF +0 -0
  25. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/display_image_tools.rst +0 -0
  26. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/display_interactive_navigation.rst +0 -0
  27. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/display_menu_bar.rst +0 -0
  28. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/legacy_matlab_image.rst +0 -0
  29. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/navigation_edit_menu.rst +0 -0
  30. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/navigation_file_menu.rst +0 -0
  31. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/navigation_test_menu.rst +0 -0
  32. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/navigation_window_menu.rst +0 -0
  33. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_3d_identify.rst +0 -0
  34. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_batch.rst +0 -0
  35. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_logging.rst +0 -0
  36. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_omero.rst +0 -0
  37. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_plugins.rst +0 -0
  38. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_shell.rst +0 -0
  39. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_troubleshooting.rst +0 -0
  40. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/other_widget_inspector.rst +0 -0
  41. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/output_measurements.rst +0 -0
  42. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/output_plateviewer.rst +0 -0
  43. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/output_spreadsheets.rst +0 -0
  44. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/pipelines_building.rst +0 -0
  45. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/pipelines_running.rst +0 -0
  46. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_configure_images.rst +0 -0
  47. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_image_ordering.rst +0 -0
  48. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_image_sequences.rst +0 -0
  49. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_introduction.rst +0 -0
  50. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/projects_selecting_images.rst +0 -0
  51. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/help/why_use_cellprofiler.rst +0 -0
  52. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-120.png +0 -0
  53. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-128.png +0 -0
  54. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-144.png +0 -0
  55. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-152.png +0 -0
  56. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-195.png +0 -0
  57. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-228.png +0 -0
  58. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-32.png +0 -0
  59. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-57.png +0 -0
  60. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-72.png +0 -0
  61. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon-96.png +0 -0
  62. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler-favicon.ico +0 -0
  63. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.ai +0 -0
  64. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.icns +0 -0
  65. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.ico +0 -0
  66. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.png +0 -0
  67. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/icons/CellProfiler.svg +0 -0
  68. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Align.png +0 -0
  69. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ApplyThreshold.png +0 -0
  70. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/CollapseTree.png +0 -0
  71. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ColorToGray.png +0 -0
  72. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/CorrectIlluminationApply.png +0 -0
  73. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/CorrectIlluminationCalculate.png +0 -0
  74. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Crop.png +0 -0
  75. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ExpandOrShrinkObjects.png +0 -0
  76. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ExpandTree.png +0 -0
  77. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/GrayToColor.png +0 -0
  78. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Groups_ExampleDisplayTable.png +0 -0
  79. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_ANALYZED.png +0 -0
  80. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_ANALYZE_16.png +0 -0
  81. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_ANALYZE_24.png +0 -0
  82. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_CLOSED_EYE.png +0 -0
  83. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_DISABLED.png +0 -0
  84. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_ERROR.png +0 -0
  85. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_EYE.png +0 -0
  86. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_GO.png +0 -0
  87. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_GO_DIM.png +0 -0
  88. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_IMAGE.png +0 -0
  89. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_MEASURE.png +0 -0
  90. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_OK.png +0 -0
  91. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_PAUSE.png +0 -0
  92. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_RUN.png +0 -0
  93. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_SLIDER.png +0 -0
  94. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_SLIDER_ACTIVE.png +0 -0
  95. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_STOP.png +0 -0
  96. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_TEST.png +0 -0
  97. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_UNAVAILABLE.png +0 -0
  98. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_UPDATE.png +0 -0
  99. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_USE_INPUT.png +0 -0
  100. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_USE_OUTPUT.png +0 -0
  101. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_USE_SOURCE.png +0 -0
  102. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IMG_WARN.png +0 -0
  103. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IdentifyPrimaryObjects_IntensityDeclumping.png +0 -0
  104. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IdentifyPrimaryObjects_ShapeDeclumping.png +0 -0
  105. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IdentifySecondaryObjects.png +0 -0
  106. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/IdentifyTertiaryObjects.png +0 -0
  107. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Images_FilelistPanel.png +0 -0
  108. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Images_FilelistPanel_Blank.png +0 -0
  109. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Images_FilelistPanel_Filled.png +0 -0
  110. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Images_UsingRules.png +0 -0
  111. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureGranularity_example.png +0 -0
  112. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureImageAreaOccupied.png +0 -0
  113. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureObjectIntensityDistribution_Edges_Centers.png +0 -0
  114. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureObjectIntensityDistribution_Magnitude_Phase.png +0 -0
  115. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureObjectSizeShape_Eccentricity.png +0 -0
  116. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/MeasureTexture.png +0 -0
  117. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Measure_texture_3D_correspondences_1.png +0 -0
  118. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Measure_texture_3D_correspondences_1_highres.png +0 -0
  119. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Measure_texture_3D_correspondences_2.png +0 -0
  120. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Measure_texture_3D_correspondences_2_highres.png +0 -0
  121. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Metadata_ExampleDisplayTable.png +0 -0
  122. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/NamesAndTypes_ExampleDisplayTable.png +0 -0
  123. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/Tile.png +0 -0
  124. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/UnmixColors.png +0 -0
  125. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/check.png +0 -0
  126. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/color.png +0 -0
  127. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/cp_panel_schematic.png +0 -0
  128. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/dapi.png +0 -0
  129. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/delete.png +0 -0
  130. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/downarrow.png +0 -0
  131. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/eye-close.png +0 -0
  132. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/eye-open.png +0 -0
  133. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ffwd.png +0 -0
  134. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/ffwddisabled.png +0 -0
  135. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/filter.png +0 -0
  136. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/folder_browse.png +0 -0
  137. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/folder_create.png +0 -0
  138. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/gear.png +0 -0
  139. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/gfp.png +0 -0
  140. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/icon_copyrights.txt +0 -0
  141. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/illumination_function.png +0 -0
  142. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/image_to_object_dataflow.png +0 -0
  143. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/image_to_object_dataflow.psd +0 -0
  144. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/mask.png +0 -0
  145. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/microscope-color_16.png +0 -0
  146. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/microscope-icon_16.png +0 -0
  147. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/microscope-icon_32.png +0 -0
  148. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/microscopes_16.png +0 -0
  149. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_add.png +0 -0
  150. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_help.png +0 -0
  151. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_movedown.png +0 -0
  152. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_moveup.png +0 -0
  153. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/module_remove.png +0 -0
  154. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/monochrome.png +0 -0
  155. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/movie_16.png +0 -0
  156. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/next.png +0 -0
  157. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/objects.png +0 -0
  158. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/pause.png +0 -0
  159. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/pausedisabled.png +0 -0
  160. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/play.png +0 -0
  161. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/playdisabled.png +0 -0
  162. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/previous.png +0 -0
  163. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/remove-sign.png +0 -0
  164. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/rewind.png +0 -0
  165. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/rewinddisabled.png +0 -0
  166. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/splash-black-text-alpha.png +0 -0
  167. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/splash-white-text-alpha.png +0 -0
  168. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/splash.png +0 -0
  169. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/status_pause.png +0 -0
  170. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/status_save.png +0 -0
  171. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/status_stop.png +0 -0
  172. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/stop.png +0 -0
  173. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/stopdisabled.png +0 -0
  174. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/structuringelement.png +0 -0
  175. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/thumb-down.png +0 -0
  176. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/thumb-up.png +0 -0
  177. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/unchecked.png +0 -0
  178. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/wantpony.wav +0 -0
  179. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_examples.png +0 -0
  180. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_forum.png +0 -0
  181. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_help.png +0 -0
  182. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_manual.png +0 -0
  183. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_new.png +0 -0
  184. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_pipeline.png +0 -0
  185. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_screen_help.png +0 -0
  186. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_start.png +0 -0
  187. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcome_tutorial.png +0 -0
  188. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcomescreen_forum.png +0 -0
  189. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcomescreen_manual.png +0 -0
  190. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/welcomescreen_tutorials.png +0 -0
  191. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_back.png +0 -0
  192. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_filesave.png +0 -0
  193. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_forward.png +0 -0
  194. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_home.png +0 -0
  195. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_pan.png +0 -0
  196. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/data/images/window_zoom_to_rect.png +0 -0
  197. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/__init__.py +0 -0
  198. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/_tree_checkbox_dialog.py +0 -0
  199. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/_welcome_frame.py +0 -0
  200. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/_workspace_model.py +0 -0
  201. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/addmoduleframe.py +0 -0
  202. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/app.py +0 -0
  203. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/artist.py +0 -0
  204. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/checkupdate.py +0 -0
  205. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/__init__.py +0 -0
  206. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/figure.py +0 -0
  207. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/module_view.py +0 -0
  208. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/preferences_dialog.py +0 -0
  209. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/preferences_view.py +0 -0
  210. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/constants/workspace_view.py +0 -0
  211. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/cpframe.py +0 -0
  212. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/dialog.py +0 -0
  213. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/editobjectsdlg.py +0 -0
  214. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/errordialog.py +0 -0
  215. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/figure/__init__.py +0 -0
  216. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/figure/_figure.py +0 -0
  217. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/figure/_navigation_toolbar.py +0 -0
  218. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/figure/_outline_artist.py +0 -0
  219. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/gridrenderers.py +0 -0
  220. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/help/__init__.py +0 -0
  221. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/help/content.py +0 -0
  222. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/help/menu.py +0 -0
  223. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/help/search.py +0 -0
  224. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/__init__.py +0 -0
  225. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/configure_images_help.html +0 -0
  226. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/exporting_results_help.html +0 -0
  227. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/getting_started.html +0 -0
  228. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/htmlwindow.py +0 -0
  229. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/identify_features_help.html +0 -0
  230. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/in_app_help.html +0 -0
  231. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/making_measurements_help.html +0 -0
  232. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/running_pipeline_help.html +0 -0
  233. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/selecting_images_help.html +0 -0
  234. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/test_mode_help.html +0 -0
  235. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/utils.py +0 -0
  236. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/html/welcome.html +0 -0
  237. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/htmldialog.py +0 -0
  238. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/imagesetctrl.py +0 -0
  239. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/menu.py +0 -0
  240. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/metadatactrl.py +0 -0
  241. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/__init__.py +0 -0
  242. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_binary_matrix_controller.py +0 -0
  243. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_data_type_controller.py +0 -0
  244. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_file_collection_display_controller.py +0 -0
  245. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_filter_panel_controller.py +0 -0
  246. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_joiner_controller.py +0 -0
  247. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_module_sizer.py +0 -0
  248. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_module_view.py +0 -0
  249. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_setting_edited_event.py +0 -0
  250. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_table_controller.py +0 -0
  251. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/module_view/_validation_request_controller.py +0 -0
  252. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/moduleview.py +0 -0
  253. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/namesubscriber.py +0 -0
  254. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/omerologin.py +0 -0
  255. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/parametersampleframe.py +0 -0
  256. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/pathlist.py +0 -0
  257. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/pipeline.py +0 -0
  258. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/pipelinecontroller.py +0 -0
  259. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/pipelinelistview.py +0 -0
  260. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/plateviewer.py +0 -0
  261. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/plugins_menu.py +0 -0
  262. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_dialog/__init__.py +0 -0
  263. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_dialog/_integer_preference.py +0 -0
  264. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_dialog/_preferences_dialog.py +0 -0
  265. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_view/__init__.py +0 -0
  266. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_view/_preferences_view.py +0 -0
  267. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/preferences_view/_progress_watcher.py +0 -0
  268. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/readers_dialog/__init__.py +0 -0
  269. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/readers_dialog/_readers_dialog.py +0 -0
  270. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/regexp_editor.py +0 -0
  271. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/tools.py +0 -0
  272. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/__init__.py +0 -0
  273. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/figure.py +0 -0
  274. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/icon.py +0 -0
  275. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/module_view.py +0 -0
  276. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/preferences_dialog.py +0 -0
  277. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/preferences_view.py +0 -0
  278. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/utilities/workspace_view.py +0 -0
  279. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/__init__.py +0 -0
  280. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view.py +0 -0
  281. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_figure.py +0 -0
  282. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_image_row.py +0 -0
  283. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_mask_row.py +0 -0
  284. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_measurement_row.py +0 -0
  285. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_objects_row.py +0 -0
  286. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/gui/workspace_view/_workspace_view_row.py +0 -0
  287. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/icons/__init__.py +0 -0
  288. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/knime_bridge.py +0 -0
  289. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/misc.py +0 -0
  290. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/UntangleWorms.xsd +0 -0
  291. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/__init__.py +0 -0
  292. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/_help.py +0 -0
  293. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/calculatemath.py +0 -0
  294. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/calculatestatistics.py +0 -0
  295. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/classifyobjects.py +0 -0
  296. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/closing.py +0 -0
  297. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/colortogray.py +0 -0
  298. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/combineobjects.py +0 -0
  299. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/convertimagetoobjects.py +0 -0
  300. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/convertobjectstoimage.py +0 -0
  301. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/correctilluminationapply.py +0 -0
  302. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/correctilluminationcalculate.py +0 -0
  303. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/createbatchfiles.py +0 -0
  304. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/crop.py +0 -0
  305. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/definegrid.py +0 -0
  306. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/dilateimage.py +0 -0
  307. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displaydataonimage.py +0 -0
  308. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displaydensityplot.py +0 -0
  309. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displayhistogram.py +0 -0
  310. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displayplatemap.py +0 -0
  311. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/displayscatterplot.py +0 -0
  312. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/editobjectsmanually.py +0 -0
  313. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/enhanceedges.py +0 -0
  314. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/enhanceorsuppressfeatures.py +0 -0
  315. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/erodeimage.py +0 -0
  316. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/erodeobjects.py +0 -0
  317. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/expandorshrinkobjects.py +0 -0
  318. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/exporttodatabase.py +0 -0
  319. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/exporttospreadsheet.py +0 -0
  320. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/fillobjects.py +0 -0
  321. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/filterobjects.py +0 -0
  322. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/findmaxima.py +0 -0
  323. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/flagimage.py +0 -0
  324. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/flipandrotate.py +0 -0
  325. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/gaussianfilter.py +0 -0
  326. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/graytocolor.py +0 -0
  327. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifydeadworms.py +0 -0
  328. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifyobjectsingrid.py +0 -0
  329. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifyobjectsmanually.py +0 -0
  330. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifyprimaryobjects.py +0 -0
  331. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifysecondaryobjects.py +0 -0
  332. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/identifytertiaryobjects.py +0 -0
  333. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/imagemath.py +0 -0
  334. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/invertforprinting.py +0 -0
  335. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/labelimages.py +0 -0
  336. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/makeprojection.py +0 -0
  337. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/maskimage.py +0 -0
  338. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/maskobjects.py +0 -0
  339. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/matchtemplate.py +0 -0
  340. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measurecolocalization.py +0 -0
  341. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measuregranularity.py +0 -0
  342. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimageareaoccupied.py +0 -0
  343. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimageintensity.py +0 -0
  344. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimageoverlap.py +0 -0
  345. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimagequality.py +0 -0
  346. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureimageskeleton.py +0 -0
  347. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectintensity.py +0 -0
  348. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectintensitydistribution.py +0 -0
  349. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectneighbors.py +0 -0
  350. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectoverlap.py +0 -0
  351. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectsizeshape.py +0 -0
  352. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measureobjectskeleton.py +0 -0
  353. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/measuretexture.py +0 -0
  354. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/medialaxis.py +0 -0
  355. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/medianfilter.py +0 -0
  356. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/morphologicalskeleton.py +0 -0
  357. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/opening.py +0 -0
  358. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/overlayobjects.py +0 -0
  359. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/overlayoutlines.py +0 -0
  360. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/plugins/__init__.py +0 -0
  361. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/plugins/imagetemplate.py +0 -0
  362. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/plugins/measurementtemplate.py +0 -0
  363. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/plugins/segmentationtemplatewithdependencies.py +0 -0
  364. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/reducenoise.py +0 -0
  365. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/relateobjects.py +0 -0
  366. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/removeholes.py +0 -0
  367. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/rescaleintensity.py +0 -0
  368. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/resize.py +0 -0
  369. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/resizeobjects.py +0 -0
  370. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/runimagejmacro.py +0 -0
  371. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/savecroppedobjects.py +0 -0
  372. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/saveimages.py +0 -0
  373. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/shrinktoobjectcenters.py +0 -0
  374. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/smooth.py +0 -0
  375. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/splitormergeobjects.py +0 -0
  376. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/straightenworms.py +0 -0
  377. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/threshold.py +0 -0
  378. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/tile.py +0 -0
  379. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/trackobjects.py +0 -0
  380. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/unmixcolors.py +0 -0
  381. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/untangleworms.py +0 -0
  382. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/modules/watershed.py +0 -0
  383. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/utilities/__init__.py +0 -0
  384. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/utilities/morphology.py +0 -0
  385. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/cellprofiler/utilities/rules.py +0 -0
  386. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/environment.yml +0 -0
  387. {cellprofiler_nightly-5.0.0.dev340 → cellprofiler_nightly-5.0.0.dev351}/pyproject.toml +0 -0
  388. {cellprofiler_nightly-5.0.0.dev340 → 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.dev340
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.dev340
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.dev340'
32
- __version_tuple__ = version_tuple = (5, 0, 0, 'dev340')
31
+ __version__ = version = '5.0.0.dev351'
32
+ __version_tuple__ = version_tuple = (5, 0, 0, 'dev351')
33
33
 
34
- __commit_id__ = commit_id = 'g1e60a51df'
34
+ __commit_id__ = commit_id = 'gf1998bdae'
@@ -24,9 +24,8 @@ YES YES NO
24
24
 
25
25
  from cellprofiler_core.module.image_segmentation import ObjectProcessing
26
26
  from cellprofiler_core.setting import StructuringElement
27
-
28
- import cellprofiler.utilities.morphology
29
27
  from cellprofiler.modules._help import HELP_FOR_STREL
28
+ from cellprofiler_library.modules._dilateobjects import dilate_objects
30
29
 
31
30
 
32
31
  class DilateObjects(ObjectProcessing):
@@ -54,6 +53,6 @@ class DilateObjects(ObjectProcessing):
54
53
  return __settings__ + [self.structuring_element]
55
54
 
56
55
  def run(self, workspace):
57
- self.function = cellprofiler.utilities.morphology.dilation
56
+ self.function = dilate_objects
58
57
 
59
58
  super(DilateObjects, self).run(workspace)
@@ -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
+