-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Fractal tasks for object and single-cell registration #99
Conversation
Based on calculate_registration_image_based but uses label images as input and calculate_shifts scmpx function.
Based on calculate_registration_image_based but uses label images as input and calculate_shifts scmpx function.
Correct handing of case where task was already run and shifts already exist in table. Also correct bug so that correct RX table is loaded (was loading R0).
Calculate linking of objects between pairs of multiplexing rounds and generate linking table.
Calculate consensus across rounds for all rounds, relative to reference round. Store as table in reference round directory.
… input and arbitrary column names. Add helper function make_linking_dict to create dictionary from arbitrary pandas df columns.
…s to table output.
Relabel label images and tables based on linked consensus IDs.
Merge branch 'nar-fractal' of https://github.com/fmi-basel/gliberal-scMultipleX into nar-fractal
Table name and path to label image was incorrect in zattr. See also open issue #619 in fractal tasks core.
… 3D approach, but covered in 2D tests anyway
… 3D approach, but covered in 2D tests anyway
…ented in fractal-tasks-core
Note bug fix that loads rx_idlist instead of r0_idlist during load_region for rx.
…ed nuclear sizes. PlatMatch linking previously relied on estimating ransac error from nuclear size distribution in the organoid. However, if segmentation results include segmented debris or other outliers, the size distribution can be non-gaussian and highly skewed. Thus the method of calculating ransac error using mean/stdev was highly sensitive to these outliers and can even result in negative ransac error, leading to ransac failure. Instead, now calculate error using a quantile threshold.
Create new function do_ransac_complete without allocation of a process pool. Kept previous function just renamed to do_ransac_complete_multithread. Multithreading was causing conflicts with Fractal-based parallelization, can revisit later to improve.
…entation image. Allows to remove labels ids from numpy array image that were filtered out during size filtering or disconnected component analysis.
Allows affine and free-form deformation registration of segmented nuclei or cells within segmented orbjects (e.g. organoids).
Merge branch 'nar-fractal' of https://github.com/fmi-basel/gliberal-scMultipleX into nar-fractal
Codecov ReportAttention:
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## main #99 +/- ##
==========================================
- Coverage 98.91% 98.13% -0.79%
==========================================
Files 10 10
Lines 461 482 +21
==========================================
+ Hits 456 473 +17
- Misses 5 9 +4 ☔ View full report in Codecov by Sentry. |
…ble name based on input ROI table name.
…nclude PlatyMatch linking.
No longer use dask array and loop over nonzero pizels to relabel segmentation to consensus.
Adding 4 new tasks:
The places where the i/o code could use a refactor is noted with # TODOs. In particular the calculate_platymatch_registration is huge and can benefit from some i/o helper functions. |
@nrepina I'm opening the PR so that when we push to the branch, Github CI reruns the automated tests :) Not to be merged yet
What this is adding
Minor changes:
Once fractal-tasks-core 0.14.0 is released: