22import napari
33
44from elf .io import open_file
5- from micro_sam .segment_instances import segment_from_embeddings
5+ from micro_sam .segment_instances import segment_instances_from_embeddings , segment_instances_sam
66from micro_sam .visualization import compute_pca
77
88
@@ -11,15 +11,23 @@ def mito_segmentation():
1111 with open_file (input_path ) as f :
1212 raw = f ["*.png" ][- 1 , :768 , :768 ]
1313
14- predictor = util .get_sam_model ()
14+ predictor , sam = util .get_sam_model (return_sam = True )
15+
16+ print ("Run SAM prediction ..." )
17+ seg_sam = segment_instances_sam (sam , raw )
18+
1519 image_embeddings = util .precompute_image_embeddings (predictor , raw , "../examples/embeddings/embeddings-mito2d.zarr" )
1620 embedding_pca = compute_pca (image_embeddings ["features" ])
1721
18- seg , initial_seg = segment_from_embeddings (predictor , image_embeddings = image_embeddings , return_initial_seg = True )
22+ print ("Run prediction from embeddings ..." )
23+ seg , initial_seg = segment_instances_from_embeddings (
24+ predictor , image_embeddings = image_embeddings , return_initial_seg = True
25+ )
1926
2027 v = napari .Viewer ()
2128 v .add_image (raw )
2229 v .add_image (embedding_pca , scale = (12 , 12 ))
30+ v .add_labels (seg_sam )
2331 v .add_labels (seg )
2432 v .add_labels (initial_seg )
2533 napari .run ()
@@ -32,21 +40,27 @@ def cell_segmentation():
3240
3341 frame = 11
3442
35- predictor = util .get_sam_model ()
43+ predictor , sam = util .get_sam_model (return_sam = True )
44+
45+ print ("Run prediction from embeddings ..." )
3646 image_embeddings = util .precompute_image_embeddings (
3747 predictor , timeseries , "../examples/embeddings/embeddings-ctc.zarr"
3848 )
3949 embedding_pca = compute_pca (image_embeddings ["features" ][frame ])
4050
41- seg , initial_seg = segment_from_embeddings (
51+ seg , initial_seg = segment_instances_from_embeddings (
4252 predictor , image_embeddings = image_embeddings , i = frame , return_initial_seg = True
4353 )
4454
55+ print ("Run SAM prediction ..." )
56+ seg_sam = segment_instances_sam (sam , timeseries [frame ])
57+
4558 v = napari .Viewer ()
4659 v .add_image (timeseries [frame ])
4760 v .add_image (embedding_pca , scale = (8 , 8 ))
4861 v .add_labels (seg )
4962 v .add_labels (initial_seg )
63+ v .add_labels (seg_sam )
5064 napari .run ()
5165
5266
0 commit comments