diff --git a/.gitignore b/.gitignore index e14350cac21c7e5f3bddad118cc7a44f8d2f27a1..61c9b328b570aa5d8ad6db5bf7337d76ea24e3aa 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,4 @@ software *.zip *.n5 data/bkp +data/rawdata/evaluation diff --git a/data/rawdata/sbem-6dpf-1-whole-segmented-chromatin-labels.xml b/data/rawdata/sbem-6dpf-1-whole-segmented-chromatin.xml similarity index 94% rename from data/rawdata/sbem-6dpf-1-whole-segmented-chromatin-labels.xml rename to data/rawdata/sbem-6dpf-1-whole-segmented-chromatin.xml index 07cf101f320c9f97a075d6d93d7c34106e4498e0..e8f1b312978abf43dd097400e83e3f94538d7b7a 100644 --- a/data/rawdata/sbem-6dpf-1-whole-segmented-chromatin-labels.xml +++ b/data/rawdata/sbem-6dpf-1-whole-segmented-chromatin.xml @@ -1,39 +1,39 @@ -<SpimData version="0.2"> - <BasePath type="relative">.</BasePath> - <SequenceDescription> - <ImageLoader format="bdv.hdf5"> - <hdf5 type="relative">sbem-6dpf-1-whole-segmented-chromatin-labels.h5</hdf5> - </ImageLoader> - <ViewSetups> - <Attributes name="channel"> - <Channel> - <id>0</id> - <name>0</name> - </Channel> - </Attributes> - <ViewSetup> - <id>0</id> - <name>Setup0</name> - <size>13750 12958 11416</size> - <voxelSize> - <unit>micrometer</unit> - <size>0.02 0.02 0.025</size> - </voxelSize> - <attributes> - <channel>0</channel> - </attributes> - </ViewSetup> - </ViewSetups> - <Timepoints type="range"> - <first>0</first> - <last>0</last> - </Timepoints> - </SequenceDescription> - <ViewRegistrations> - <ViewRegistration setup="0" timepoint="0"> - <ViewTransform type="affine"> - <affine>0.02 0.0 0.0 0.0 0.0 0.02 0.0 0.0 0.0 0.0 0.025 0.0</affine> - </ViewTransform> - </ViewRegistration> - </ViewRegistrations> -</SpimData> +<SpimData version="0.2"> + <BasePath type="relative">.</BasePath> + <SequenceDescription> + <ImageLoader format="bdv.hdf5"> + <hdf5 type="relative">sbem-6dpf-1-whole-segmented-chromatin.h5</hdf5> + </ImageLoader> + <ViewSetups> + <Attributes name="channel"> + <Channel> + <id>0</id> + <name>0</name> + </Channel> + </Attributes> + <ViewSetup> + <id>0</id> + <name>Setup0</name> + <size>13750 12958 11416</size> + <voxelSize> + <unit>micrometer</unit> + <size>0.02 0.02 0.025</size> + </voxelSize> + <attributes> + <channel>0</channel> + </attributes> + </ViewSetup> + </ViewSetups> + <Timepoints type="range"> + <first>0</first> + <last>0</last> + </Timepoints> + </SequenceDescription> + <ViewRegistrations> + <ViewRegistration setup="0" timepoint="0"> + <ViewTransform type="affine"> + <affine>0.02 0.0 0.0 0.0 0.0 0.02 0.0 0.0 0.0 0.0 0.025 0.0</affine> + </ViewTransform> + </ViewRegistration> + </ViewRegistrations> +</SpimData> diff --git a/data/rawdata/sbem-6dpf-1-whole-mask-extrapolated.xml b/data/rawdata/sbem-6dpf-1-whole-segmented-extrapolated.xml similarity index 92% rename from data/rawdata/sbem-6dpf-1-whole-mask-extrapolated.xml rename to data/rawdata/sbem-6dpf-1-whole-segmented-extrapolated.xml index e4410ea9ba65376a65c50dcbd618bbff07044fcb..6499239f6e0adaa84bca6848455b0acbf6fc6a53 100644 --- a/data/rawdata/sbem-6dpf-1-whole-mask-extrapolated.xml +++ b/data/rawdata/sbem-6dpf-1-whole-segmented-extrapolated.xml @@ -2,7 +2,7 @@ <BasePath type="relative">.</BasePath> <SequenceDescription> <ImageLoader format="bdv.hdf5"> - <hdf5 type="relative">sbem-6dpf-1-whole-mask-extrapolated.h5</hdf5> + <hdf5 type="relative">sbem-6dpf-1-whole-segmented-extrapolated.h5</hdf5> </ImageLoader> <ViewSetups> <Attributes name="channel"> diff --git a/data/rawdata/sbem-6dpf-1-whole-segmented-ganglia-labels.xml b/data/rawdata/sbem-6dpf-1-whole-segmented-ganglia.xml similarity index 92% rename from data/rawdata/sbem-6dpf-1-whole-segmented-ganglia-labels.xml rename to data/rawdata/sbem-6dpf-1-whole-segmented-ganglia.xml index d61eae76cbfb73aaa4d2651027e4d6ab4cc97c81..6e3a4e279f0dc23f9484d17f7166a29c9fbb14ed 100644 --- a/data/rawdata/sbem-6dpf-1-whole-segmented-ganglia-labels.xml +++ b/data/rawdata/sbem-6dpf-1-whole-segmented-ganglia.xml @@ -2,7 +2,7 @@ <BasePath type="relative">.</BasePath> <SequenceDescription> <ImageLoader format="bdv.hdf5"> - <hdf5 type="relative">sbem-6dpf-1-whole-segmented-ganglia-labels.h5</hdf5> + <hdf5 type="relative">sbem-6dpf-1-whole-segmented-ganglia.h5</hdf5> </ImageLoader> <ViewSetups> <Attributes name="channel"> diff --git a/data/rawdata/sbem-6dpf-1-whole-mask-inside.xml b/data/rawdata/sbem-6dpf-1-whole-segmented-inside.xml similarity index 93% rename from data/rawdata/sbem-6dpf-1-whole-mask-inside.xml rename to data/rawdata/sbem-6dpf-1-whole-segmented-inside.xml index c101d64f8b3948c52aab2492ed23e46199756248..0a0b464eaf2749961cfe2f3d137ec1427bfe8e6a 100644 --- a/data/rawdata/sbem-6dpf-1-whole-mask-inside.xml +++ b/data/rawdata/sbem-6dpf-1-whole-segmented-inside.xml @@ -2,7 +2,7 @@ <BasePath type="relative">.</BasePath> <SequenceDescription> <ImageLoader format="bdv.hdf5"> - <hdf5 type="relative">sbem-6dpf-1-whole-mask-inside.h5</hdf5> + <hdf5 type="relative">sbem-6dpf-1-whole-segmented-inside.h5</hdf5> </ImageLoader> <ViewSetups> <Attributes name="channel"> diff --git a/data/rawdata/sbem-6dpf-1-whole-segmented-ariande-neuropil.xml b/data/rawdata/sbem-6dpf-1-whole-segmented-neuropil.xml similarity index 92% rename from data/rawdata/sbem-6dpf-1-whole-segmented-ariande-neuropil.xml rename to data/rawdata/sbem-6dpf-1-whole-segmented-neuropil.xml index 42cd10e0649680c4131c8de29b0fe71ac6e9af01..19c31d172951311b29a914482e8f61677e9ce2d3 100644 --- a/data/rawdata/sbem-6dpf-1-whole-segmented-ariande-neuropil.xml +++ b/data/rawdata/sbem-6dpf-1-whole-segmented-neuropil.xml @@ -2,7 +2,7 @@ <BasePath type="relative">.</BasePath> <SequenceDescription> <ImageLoader format="bdv.hdf5"> - <hdf5 type="relative">sbem-6dpf-1-whole-segmented-ariande-neuropil.h5</hdf5> + <hdf5 type="relative">sbem-6dpf-1-whole-segmented-neuropil.h5</hdf5> </ImageLoader> <ViewSetups> <ViewSetup> diff --git a/data/rawdata/sbem-6dpf-1-whole-mask-outside.xml b/data/rawdata/sbem-6dpf-1-whole-segmented-outside.xml similarity index 93% rename from data/rawdata/sbem-6dpf-1-whole-mask-outside.xml rename to data/rawdata/sbem-6dpf-1-whole-segmented-outside.xml index 6f197e0123a4c5a3450e2f89642d243bd0da1a68..42064150a1ee290f12ce44b639525a45c8a2b5e7 100644 --- a/data/rawdata/sbem-6dpf-1-whole-mask-outside.xml +++ b/data/rawdata/sbem-6dpf-1-whole-segmented-outside.xml @@ -2,7 +2,7 @@ <BasePath type="relative">.</BasePath> <SequenceDescription> <ImageLoader format="bdv.hdf5"> - <hdf5 type="relative">sbem-6dpf-1-whole-mask-outside.h5</hdf5> + <hdf5 type="relative">sbem-6dpf-1-whole-segmented-outside.h5</hdf5> </ImageLoader> <ViewSetups> <Attributes name="channel"> diff --git a/data/rawdata/sbem-6dpf-1-whole-mask-resin.xml b/data/rawdata/sbem-6dpf-1-whole-segmented-resin.xml similarity index 93% rename from data/rawdata/sbem-6dpf-1-whole-mask-resin.xml rename to data/rawdata/sbem-6dpf-1-whole-segmented-resin.xml index f0f52cd0223ba8a67b781768fea623c45d33ab3e..b8f678c834839c6ea40a290b5cfcb7ea4887470d 100644 --- a/data/rawdata/sbem-6dpf-1-whole-mask-resin.xml +++ b/data/rawdata/sbem-6dpf-1-whole-segmented-resin.xml @@ -2,7 +2,7 @@ <BasePath type="relative">.</BasePath> <SequenceDescription> <ImageLoader format="bdv.hdf5"> - <hdf5 type="relative">sbem-6dpf-1-whole-mask-resin.h5</hdf5> + <hdf5 type="relative">sbem-6dpf-1-whole-segmented-resin.h5</hdf5> </ImageLoader> <ViewSetups> <Attributes name="channel"> diff --git a/data/rawdata/sbem-6dpf-1-whole-segmented-tissue-labels.xml b/data/rawdata/sbem-6dpf-1-whole-segmented-tissue.xml similarity index 92% rename from data/rawdata/sbem-6dpf-1-whole-segmented-tissue-labels.xml rename to data/rawdata/sbem-6dpf-1-whole-segmented-tissue.xml index b29549dd1621c5353d097c2de8e02fb708439f68..163eddf04045c92d049451fdd27dc3bd9fa92af2 100644 --- a/data/rawdata/sbem-6dpf-1-whole-segmented-tissue-labels.xml +++ b/data/rawdata/sbem-6dpf-1-whole-segmented-tissue.xml @@ -2,7 +2,7 @@ <BasePath type="relative">.</BasePath> <SequenceDescription> <ImageLoader format="bdv.hdf5"> - <hdf5 type="relative">sbem-6dpf-1-whole-segmented-tissue-labels.h5</hdf5> + <hdf5 type="relative">sbem-6dpf-1-whole-segmented-tissue.h5</hdf5> </ImageLoader> <ViewSetups> <Attributes name="channel"> diff --git a/data/rawdata/tables/sbem-6dpf-1-whole-segmented-chromatin-labels/default.csv b/data/rawdata/tables/sbem-6dpf-1-whole-segmented-chromatin/default.csv similarity index 100% rename from data/rawdata/tables/sbem-6dpf-1-whole-segmented-chromatin-labels/default.csv rename to data/rawdata/tables/sbem-6dpf-1-whole-segmented-chromatin/default.csv diff --git a/data/rawdata/tables/sbem-6dpf-1-whole-segmented-ganglia-labels/default.csv b/data/rawdata/tables/sbem-6dpf-1-whole-segmented-ganglia/default.csv similarity index 100% rename from data/rawdata/tables/sbem-6dpf-1-whole-segmented-ganglia-labels/default.csv rename to data/rawdata/tables/sbem-6dpf-1-whole-segmented-ganglia/default.csv diff --git a/data/rawdata/tables/sbem-6dpf-1-whole-segmented-tissue-labels/default.csv b/data/rawdata/tables/sbem-6dpf-1-whole-segmented-tissue/default.csv similarity index 100% rename from data/rawdata/tables/sbem-6dpf-1-whole-segmented-tissue-labels/default.csv rename to data/rawdata/tables/sbem-6dpf-1-whole-segmented-tissue/default.csv diff --git a/mmpb/files/migration.py b/mmpb/files/migration.py index 3efdb7f445e2dbd60fcdebad852c4ce718f5f994..75aa281ba1a8ff0418b781b4c7973f2f2f4b27a5 100644 --- a/mmpb/files/migration.py +++ b/mmpb/files/migration.py @@ -5,8 +5,7 @@ from glob import glob from mmpb.files.name_lookup import look_up_filename, get_image_properties from mmpb.files.xml_utils import get_h5_path_from_xml, copy_xml_with_newpath -# ROOT = '/g/arendt/...' -ROOT = '/home/pape/Work/my_projects/platy-browser-data/data' +ROOT = '/g/arendt/EM_6dpf_segmentation/platy-browser-data/data' DRY_RUN = True @@ -184,6 +183,15 @@ def migrate_rawfolder(): # set path in xml copy_xml_with_newpath(new_xml_path, new_xml_path, new_rel_data_path) + # rename the tables folder if it exists + table_folder = os.path.join(raw_folder, 'tables', name) + if os.path.exists(table_folder): + new_table_folder = os.path.join(raw_folder, 'tables', new_name) + if DRY_RUN: + print("Rename", table_folder, "to", new_table_folder) + else: + os.rename(table_folder, new_table_folder) + # iterate over all the xmls in this version, follow the links # and replace h5 files with n5 (if necessary) @@ -202,22 +210,22 @@ def remove_deprecated_data(): def remove_deprecated_seg(folder, pattern): # remove xml for traces - trace_files = glob(os.path.join(vfolder, 'segmentations', pattern)) - if len(trace_files) > 0: - assert len(trace_files) == 1 + files = glob(os.path.join(vfolder, 'segmentations', pattern)) + if len(files) > 0: + assert len(files) == 1 if DRY_RUN: - print("Remove", trace_files[0]) + print("Remove", files[0]) else: - os.remove(trace_files[0]) + os.remove(files[0]) # remove tables for traces - trace_files = glob(os.path.join(vfolder, 'tables', pattern)) - if len(trace_files) > 0: - assert len(trace_files) == 1 + files = glob(os.path.join(vfolder, 'tables', pattern)) + if len(files) > 0: + assert len(files) == 1 if DRY_RUN: - print("Remove", trace_files[0]) + print("Remove", files[0]) else: - shutil.rmtree(trace_files[0]) + shutil.rmtree(files[0]) # remove xmls from the version folders # (data from rawfolder should be backed up by hand!) @@ -228,14 +236,11 @@ def remove_deprecated_data(): if __name__ == '__main__': - # TODO before doing any migration: - # - replace the chromatin segmentation and table - # - check nephridia segmentation - - # remove the data we don't want to upload (yet): - remove_deprecated_data() + # remove the data we don't want to upload (yet) + # remove_deprecated_data() - # migrate_rawfolder() + # change names and xmls in the rawfolder + migrate_rawfolder() # version = '0.0.0' # migrate_version(version) diff --git a/mmpb/files/name_lookup.py b/mmpb/files/name_lookup.py index e9e91e27eb3ccde1c022b04c2405e5d8f41cd196..0b5e9db2fe8f6a1a346f07e042eeb70bf31b0aa9 100644 --- a/mmpb/files/name_lookup.py +++ b/mmpb/files/name_lookup.py @@ -41,9 +41,7 @@ NEW_GENE_NAMES = { "ENR69": "BCA1", "ENR71": "Patched" } - -# ROOT = '/g/arendt/...' -ROOT = '/home/pape/Work/my_projects/platy-browser-data/data' +ROOT = '/g/arendt/EM_6dpf_segmentation/platy-browser-data/data' FILE_NAME_LUT = {} IMAGE_PROPERTIES = {} @@ -165,7 +163,7 @@ def get_image_properties(name): if __name__ == '__main__': - # x = json.dumps(FILE_NAME_LUT, sort_keys=True, indent=2) - # print(x) - with open('/home/pape/new_names.json', 'w') as f: - json.dump(FILE_NAME_LUT, f, sort_keys=True, indent=2) + x = json.dumps(FILE_NAME_LUT, sort_keys=True, indent=2) + print(x) + # with open('/home/pape/new_names.json', 'w') as f: + # json.dump(FILE_NAME_LUT, f, sort_keys=True, indent=2)