crowdkit.aggregation.image_segmentation.segmentation_em.SegmentationEM
| Source code
SegmentationEM( self, n_iter: int = 10, tol: float = 1e-05)
The EM algorithm for the image segmentation task.
This method performs a categorical aggregation task for each pixel: should it be included to the resulting aggregate or no. This task is solved by the single coin Dawid-Skene algorithm. Each worker has a latent parameter "skill" that shows the probability of this worker to answer correctly. Skills and true pixels' labels are optimized by the Expectation-Maximization algorithm.
Doris Jung-Lin Lee. 2018. Quality Evaluation Methods for Crowdsourced Image Segmentation https://ilpubs.stanford.edu:8090/1161/1/main.pdf
Parameters | Type | Description |
---|---|---|
n_iter | int | A number of EM iterations. |
segmentations_ | Series | Tasks' segmentations. A pandas.Series indexed by |
Examples:
import numpy as npimport pandas as pdfrom crowdkit.aggregation import SegmentationEMdf = pd.DataFrame( [ ['t1', 'p1', np.array([[1, 0], [1, 1]])], ['t1', 'p2', np.array([[0, 1], [1, 1]])], ['t1', 'p3', np.array([[0, 1], [1, 1]])] ], columns=['task', 'worker', 'segmentation'])result = SegmentationEM().fit_predict(df)
Method | Description |
---|---|
fit | Fit the model. |
fit_predict | Fit the model and return the aggregated segmentations. |