Unify reconstruction functions (e.g. process_single_position and apply_transform_to_zyx_and_save) to work on CZYX datasets, rather than ZYX datasets - I think this is preferred since, for example, birefringence reconstruction requires 4-5 input channels. Similar logic can maybe be extended to registration, which requires fixed and moving volumes, or training for virtual staining which requires paired phase and fluorescence images
We can modify the function signature to accept a "processing unit" and then we'll iterate over these processing units:
for processing_unit in processing_units:
func(data[processing_unit])
Currently process_single_position and apply_transform_to_zyx_and_save and duplicated in shrimpy and recorder and can go out of sync. These function are largely utilities to apply a user-specified functions to iohub Positions. We can consider moving these two functions to iohub/utils.
@talonchandler @edyoshikun @ziw-liu let's kick off this discussion with an in-person meeting.
Unify reconstruction functions (e.g.
process_single_position
andapply_transform_to_zyx_and_save
) to work on CZYX datasets, rather than ZYX datasets - I think this is preferred since, for example, birefringence reconstruction requires 4-5 input channels. Similar logic can maybe be extended to registration, which requires fixed and moving volumes, or training for virtual staining which requires paired phase and fluorescence imagesWe can modify the function signature to accept a "processing unit" and then we'll iterate over these processing units:
The processing units can be as follows:
for looping over XYZ volumes in different channels
for looping over individual XY slices
or
for processing a CZYX array with 5 channels.
Currently
process_single_position
andapply_transform_to_zyx_and_save
and duplicated inshrimpy
andrecorder
and can go out of sync. These function are largely utilities to apply a user-specified functions to iohubPosition
s. We can consider moving these two functions toiohub/utils
.@talonchandler @edyoshikun @ziw-liu let's kick off this discussion with an in-person meeting.