carpentries-incubator / carpentries-incubator/bioimage-analysis-python
Episode 6, Exercise 2 Thresholding Techniques
- Dominant language
- HTML
- Stars
- 12
- Forks
- 6
- Avg merge
- 1m
- Merged PRs (30d)
- 1
Description
### Brief description
Students individually, or in small groups, first select a threshold manually (using an interactive slider or a established variable name) to define _their optimal_ segmentation result and then compare the results with some or all automatic threshold methods available in [`ski.filters.try_all_thresholds`](https://scikit-image.org/docs/0.25.x/api/skimage.filters.html#skimage.filters.try_all_threshold).
The comparison could either be done on binary operations (difference, overlap etc..) or directly on the number (or properties) of objects after [connected components labeling](https://github.com/carpentries-incubator/bioimage-analysis-python/wiki/Learning-Objectives#labeling-with-connected-components).
### Learning objective(s)
Establishing a personal manual threshold would first showcase the _subjective_ nature of such approach and would expose issues in reproducibility when trying the same approach on different images (or between students). Comparing then the manual results with the automatic results will highlight the spread of automatic methods and how they can be affected by different aspects of the image at hand, and show how the quality or number of segmented objects can still vary based on such decisions.
Learning objective: [Thresholding Techniques](https://github.com/carpentries-incubator/bioimage-analysis-python/wiki/Learning-Objectives#thresholding-techniques)
### Volunteer(s)
@marcodallavecchia
Contributor guide
Research direction
Start with the Episode 6, Exercise 2 brief and review skimage.filters.try_all_thresholds alongside the connected-components labeling material. Define how students will choose a manual threshold, compare automatic methods, and assess segmentation results or labeled objects. Done means the exercise has a clear reproducible comparison and supports the Thresholding Techniques learning objective.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- computer-vision, documentation
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100