- Explore a basic segmentation pipeline with filtering and thresholding
- Evaluate the quality of the segmentation when a ground truth is available
- Accept assignment:
- Clone your student repository (
git clone) - Run
uv syncand check everything is correct withuv run hello.py - Start Jupyter
- Evaluate on images the SNR according to different definitions
- Tune the parameters of different filters in different noise conditions to achieve a target MSE.
Notebook 04-Fossil.ipynb has shown you how to apply a threshold on an image to segment it into a bilevel image. The performance of the threshold was improved by applying a filter that reduced the noise levels in the image. Now you can try this workflow on a different image.
- Repeat the same analysis to the teeth fossil data (
teeth_image.tif) - Adjust the threshold and angles to try and see the gut structure better
- Improve the filters by using more advanced techniques and windows (bonus for non-local means)
In tasks.py you will have to implement to common metrics to evalaute segmentation masks:
First, you will have to read about the metrics and implement them to pass the corresponding tests.
Then, you will have to implement a basic segmentation pipeline on the dataset teeth_image.tif that achieves a dice_coefficient > 0.95 and a jaccard_index > 0.95