Skip to content

Commit

Permalink
ref: remove __init__ from SegmentThresh
Browse files Browse the repository at this point in the history
  • Loading branch information
paulmueller committed May 28, 2024
1 parent b5e34c1 commit a5448de
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 13 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
0.20.2
- ref: remove __init__ from SegmentThresh
0.20.1
- fix: relative basin locations not written correctly
- enh: increase deque size threshold for waiting for writer
Expand Down
1 change: 0 additions & 1 deletion src/dcnum/logic/ctrl.py
Original file line number Diff line number Diff line change
Expand Up @@ -666,7 +666,6 @@ def task_segment_extract(self):
num_extractors = max(1, num_extractors)
num_segmenters = max(1, num_segmenters)
self.job.kwargs["segmenter_kwargs"]["num_workers"] = num_segmenters

slot_chunks = mp_spawn.Array("i", num_slots)
slot_states = mp_spawn.Array("u", num_slots)

Expand Down
12 changes: 0 additions & 12 deletions src/dcnum/segm/segm_thresh.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,18 +10,6 @@ class SegmentThresh(CPUSegmenter):
}
requires_background_correction = True

def __init__(self, thresh=-6, *args, **kwargs):
"""Simple image thresholding segmentation
Parameters
----------
thresh: int
grayscale threshold value for creating the mask image;
For a background-corrected image, pixels with values below
this value are considered to be part of the mask.
"""
super(SegmentThresh, self).__init__(thresh=thresh, *args, **kwargs)

@staticmethod
def segment_approach(image, *,
thresh: float = -6):
Expand Down
17 changes: 17 additions & 0 deletions tests/test_meta_ppid_segm.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
from dcnum.meta import ppid
from dcnum import segm

import pytest
Expand Down Expand Up @@ -26,6 +27,22 @@ def test_ppid_decoding_thresh_check_kwargs():
assert kwargs["kwargs_mask"]["closing_disk"] == 3


def test_ppid_kwargs_to_ppid():
"""Make sure that subclasses correctly implement __init__ (if they do)"""
segm_dict = segm.get_available_segmenters()
for segm_key in segm_dict:
segm_cls = segm_dict[segm_key]
inst = segm_cls()
kwargs = inst.kwargs
kwargs["num_workers"] = 2
ppid.kwargs_to_ppid(
cls=segm_cls,
method="segment_approach",
kwargs=kwargs,
allow_invalid_keys=False,
)


@pytest.mark.parametrize("segm_code", segm.get_available_segmenters().keys())
def test_ppid_required_method_definitions(segm_code):
segm_class = segm.get_available_segmenters()[segm_code]
Expand Down

0 comments on commit a5448de

Please sign in to comment.