If an object label image with no objects is run through EnforceObjectsOneToOne for both pre-primary and pre-secondary objects (see attached EnforceObjectsOneToOne_pipeline.zip), the following error results:
Failed to run module EnforceObjectsOneToOne
Traceback (most recent call last):
File "C:\Users\brayma2.conda\envs\py38\lib\site-packages\cellprofiler-4.2.4-py3.8.egg\cellprofiler\gui\pipelinecontroller.py", line 3390, in do_step
self.__pipeline.run_module(module, workspace_model)
File "C:\Users\brayma2.conda\envs\py38\lib\site-packages\cellprofiler_core\pipeline_pipeline.py", line 1341, in run_module
module.run(workspace)
File "C:\Users\brayma2\github\cellprofiler-plugins\active_plugins\enforceobjectsonetoone.py", line 173, in run
primary_seg = self.enforce_unique(pre_primary_seg, pre_secondary_seg, erode_excess=True)
File "C:\Users\brayma2\github\cellprofiler-plugins\active_plugins\enforceobjectsonetoone.py", line 373, in enforce_unique
if matched_to_count.max() >1:
File "C:\Users\brayma2.conda\envs\py38\lib\site-packages\numpy\core_methods.py", line 41, in _amax
return umr_maximum(a, axis, None, out, keepdims, initial, where)
ValueError: zero-size array to reduction operation maximum which has no identity
If an object label image with no objects is run through EnforceObjectsOneToOne for both pre-primary and pre-secondary objects (see attached EnforceObjectsOneToOne_pipeline.zip), the following error results: