Lightsheet_microscopy_image_3D_nuclei_instance_segmentation

Lightsheet microscopy whole brain 3D nuclei instance segmentation

2D Unet-based

Motivations:

Performance and time cost:

Data:

Multiple whole brains of mouse in different grown stage. Each brain has ~1500x9000x9000 voxels, and about 30,000,000 to 50,000,000 cells.

Example to test one partial brain:

1 Obtain NIS results of brain

cd cpp, then follow the instruction in cpp/README.md.

2 Postprocess NIS cpp output

cd ..
python coord_to_bbox.py --nis_output_root downloads/cpp_output

This will generate bounding box of NIS in the output folders for stitching.

usage: coord_to_bbox.py [-h] [--device DEVICE]
                        [--nis_output_root NIS_OUTPUT_ROOT]

Generate NIS bounding box

optional arguments:
  -h, --help            show this help message and exit
  --device DEVICE
  --nis_output_root NIS_OUTPUT_ROOT
                        Output dir of NIS cpp

3 Image stitch

Check paths in image_stitch/stitch_main.py, then

python image_stitch/stitch_main.py

3.5 (Optional) Refine stitch by point registration

Note that this optional step can lead to a worse stitching result.

Check paths in image_stitch/ptreg_stitch_p14.py, then

python image_stitch/ptreg_stitch_p14.py

4 Generate brain maps

python gen_brain_map.py will save a brain map as Nifti under downloads/cpp_output/test_pair

5 (Optional) Colocalization with additional channels

In working progress.

TODO: Interactive visualization of whole brain nuclei segmentation results

Codes availability

Data availability