[{"date_updated":"2026-10-01T10:54:33Z","publisher":"Institute of Science and Technology Austria","date_published":"2024-07-25T00:00:00Z","oa":1,"article_processing_charge":"No","doi":"10.5281/zenodo.12819780","fulldoi":"https://doi.org/10.5281/zenodo.12819780","date_created":"2026-10-01T10:54:27Z","year":"2024","OA_place":"repository","main_file_link":[{"open_access":"1","url":"https://doi.org/10.5281/zenodo.12819780"}],"OA_type":"green","user_id":"317138e5-6ab7-11ef-aa6d-ffef3953e345","title":"Data and software from: Temporal variability and cell mechanics control robustness in mammalian embryogenesis","type":"research_data_reference","status":"public","day":"25","related_material":{"record":[{"relation":"used_in_publication","id":"18446","status":"public"}]},"month":"07","oa_version":"None","abstract":[{"text":"In this repository, you will find the R-scripts used to generate the figures, along with the data necessary to make the plots. You will also find the Python-scripts used to compute the pair-wise distance between embryos, to estimate the surface, the volume, the α-parameter, to identify the closest rigid packing and to generate the morphomap. Additionally, you have access to the base model used with Plantseg to predict and label the cells at the 8-cell stage. Note that a more accurate and more specific model was generated for each embryo based on the curation of at least 5 timepoints.\r\n\r\nFigures\r\nThe plots in Figure 1-7 and Figure S1-S7 can be generated with the respective files. The code is written in R and requires RStudio to work out-of-the-box. The R scripts are located in figures/. Figures and supplemental figures are generated with the same file (e.g., Figure 1.R generates all the computed panels of Figure 1 and Figure S1). Data required to generate the plots are located in figures/data/. Note that the code to work with the morphomap and the tracking data is located in local packages figures/fabreges.morphomap and figures/fabreges.tracking. An additional package figures/fabreges.generic contains utility functions.\r\n\r\nPython packages\r\nFor the needs of this study, we developed a series of package for Python located in python-packages/. The packages can be directly imported within your scripts. Along with the packages, you will find 6 scripts used to compute, extract or estimate the data from the source. The folder is organised as follow:\r\n\r\npackage interfaces is located in python-packages/interfaces/ and can be tested by running the scripts to extract the angles an estimate the surface of contact (compute-angles.py and estimate-contacts.py respectively) in folder python-packages,\r\npackage morphomap is located in python-packages/morphomap/ and can be tested by running the script to compute the geometrical distances between embryos, project the data in 2D and compute the volume of the cells (compute-distances.py, process-distances.py and compute-volumes.py respectively) in folder python-packages,\r\npackage splinefit is included in morphomap in python-packages/morphomap/splinefit/, but can function independently,\r\npackage rbb is located in python-packages/rbb/ and can be tested by running the script to identify the closest rigid packing of an embryo at the 8-cell stage (identify-packing.py) in folder python-packages.\r\nWe provide example of segmented data in python-packages/samples/.\r\n\r\nCNN\r\nWe provide a convolutional neural network (CNN) used in our study, located in cnn. Please note that we optimised the CNN further for each dataset by doing manual curation of at least 5 time points and by retraining the network with those ground truth. The CNN were trained using pytorch-3dunet. The CNN can be used with Plantseg. Currently (plantseg v.1.6.0 and pytorch-3dunet v.1.6.0), the output model from pytorch-3dunet must currently be modified to work with plantseg:\r\n\r\n# python\r\nimport torch\r\nfor model in ('best_checkpoint.pytorch', 'last_checkpoint.pytorch'):\r\n    state = torch.load(model, map_location='cpu')\r\n    state = state['model_state_dict']\r\n    torch.save(state, model)\r\n\r\nRequierements\r\nFigures\r\nThe figures were generated with R (v. 4.4.0) and RStudio (v. 2024.04.1+748). The following packages must be installed prior to execution:\r\n\r\nalphashape3d (v. 1.3.2)\r\ndevtools (v. 2.4.5)\r\nggplot2 (v. 3.5.1)\r\nggrepel (v. 0.9.5)\r\nrstudioapi (v. 0.16.0)\r\nTo install all these packages, run the following command in the RStudio console:\r\n\r\n# R\r\ninstall.packages(c(\"alphashape3d@1.3.2\", \"devtools@2.4.5\", \"ggplot2@3.5.1\", \"ggrepel@0.9.5\", \"rstudioapi@0.16\"))\r\n\r\nMore recent version of R, RStudio and the packages may also work (not tested).\r\n\r\nPython packages\r\nPython 3.12.3 was used to analyse the data. The scripts may work with more recent version of Python and with Python 3.8 or earlier (not tested). To run the code, you must first install the following packages:\r\n\r\nnumpy (v. 1.26.4)\r\nimageio (v. 2.34.1)\r\nscipy (v. 1.13.1)\r\nscikit-image (v. 0.23.2)\r\nscikit-learn (v. 1.5.0)\r\nAlternatively, you can create a conda environment:\r\n\r\n# Shell script\r\nconda create -y --name fabreges2024 python=3.12.3\r\nconda activate fabreges2024\r\npython -m pip install numpy==1.26.4 imageio==2.34.1 scipy==1.13.1 scikit-image==0.23.2 scikit-learn==1.5.0\r\n\r\nMore recent version of the dependencies may work (not tested).\r\n\r\nUsage\r\nFigures\r\nOpen one of the figure script in RStudio and run the entire code. You may have to create a folder output in figures/ if it does not exist.\r\n\r\nThe code has local dependencies that will be installed on your computer when encountering them for the first time. They start with fabreges.* and are necessary to generate the figures.\r\n\r\nPython packages (example)\r\nCompute angles\r\n# Shell script\r\n# Compute a summary (mean, median, s.d.) of the angles in embryo C1 at time 40\r\npython compute-angles.py -s -r 15 -R 20 samples/C1_t040.tif.gz output/C1_t040_angles.csv\r\n# Compute a detailed list of angle values\r\npython compute-angles.py -r 15 -R 20 samples/C1_t041.tif.gz output/C1_t041_angles.csv\r\n\r\nCompute distances\r\n# Shell script\r\n# Compute the distance between two embryos\r\npython compute-distances.py -c 5 -s 5 samples/C1_t040.tif.gz samples/C1_t041.tif.gz output/distances.csv\r\n# Append another distance measurement\r\npython compute-distances.py -a -c 5 -s 5 samples/C1_t040.tif.gz samples/C1_t042.tif.gz output/distances.csv\r\n\r\nCompute volumes\r\n# Shell script\r\n# Compute the volume in isotropic data\r\npython compute-volumes.py -r 0.416 0.416 0.416 samples/C1_t040.tif.gz output/volumes.csv\r\n\r\nEstimate contacts\r\n# Shell script\r\n# Estimate the contacts and the free surface area\r\npython estimate-contacts.py -r 0.416 0.416 0.416 samples/C1_t040.tif.gz output/contacts.csv\r\n\r\nIdentify the closest rigid packing\r\n# Shell script\r\n# Assuming the file `output/contacts.csv` exists and contains the output\r\n# from command `estimate-contacts.py`.\r\n# Identify the closest rigid packings\r\npython identify-packing.py output/contacts.csv output/backbones.csv\r\n\r\nGenerate the seeds for Surface Evolver\r\n# Shell script\r\n# Assuming the file `output/contacts.csv` exists and contains the output\r\n# from command `estimate-contacts.py`, and the file `output/volumes.csv`\r\n# exists and contains the output from command `compute-volumes.py`\r\n# Generate the seeds for Surface Evolver using automatic thresholding\r\n# Automatic threshold will determine the highest cell-cell contact threshold\r\n# that preserves rigidity of the embryo (or 0 if not rigid)\r\npython generate-seed.py output/contacts.csv output/volumes.csv output/seed.fe\r\n# Generate the seeds for Surface Evolver with custom threshold\r\npython generate-seed.py --threshold 0.1 output/contacts.csv output/volumes.csv output/seed.fe\r\n\r\nProject in 2D and generate a distance matrix\r\n# Shell script\r\n# Assuming the folder `foo` only contains one or more CSV\r\n# from command `compute-distances.py`.\r\n\r\n# Compute the tSNE 2D projection\r\npython process-distances.py -D2 -t output/tsne_2d.csv foo/\r\n\r\n# Compute the tSNE 3D projection\r\npython process-distances.py -D3 -t output/tsne_2d.csv foo/\r\n\r\n# Generate the distance matrix\r\npython process-distances.py -m output/dismat.csv foo/","lang":"eng"}],"_id":"23023","author":[{"last_name":"Corominas-Murtra","full_name":"Corominas-Murtra, Bernat","first_name":"Bernat"},{"last_name":"  Moghe","first_name":"Prachiti","full_name":"  Moghe, Prachiti"},{"full_name":"Kickuth, Alison","first_name":"Alison","last_name":"Kickuth"},{"first_name":"Takafumi","full_name":"Ichikawa, Takafumi","last_name":"Ichikawa"},{"full_name":"Iwatani, Chizuru","first_name":"Chizuru","last_name":"Iwatani"},{"first_name":"Tomoyuki","full_name":"Tsukiyama, Tomoyuki","last_name":"Tsukiyama"},{"last_name":"Daniel","first_name":"Nathalie","full_name":"Daniel, Nathalie"},{"last_name":"Gering","full_name":"Gering, Julie","first_name":"Julie"},{"last_name":"Stokkermans","full_name":"Stokkermans, Anniek","first_name":"Anniek"},{"last_name":"Wolny","first_name":"Adrian","full_name":"Wolny, Adrian"},{"first_name":"Anna","full_name":"Kreshuk, Anna","last_name":"Kreshuk"},{"first_name":"Véronique","full_name":"Duranthon, Véronique","last_name":"Duranthon"},{"full_name":"Uhlmann, Virginie","first_name":"Virginie","last_name":"Uhlmann"},{"full_name":"Hannezo, Edouard","first_name":"Edouard","last_name":"Hannezo"},{"full_name":"Hiiragi, Takashi","first_name":"Takashi","last_name":"Hiiragi"}],"department":[{"_id":"EdHa"}],"citation":{"short":"B. Corominas-Murtra, P.   Moghe, A. Kickuth, T. Ichikawa, C. Iwatani, T. Tsukiyama, N. Daniel, J. Gering, A. Stokkermans, A. Wolny, A. Kreshuk, V. Duranthon, V. Uhlmann, E. Hannezo, T. Hiiragi, (2024).","ieee":"B. Corominas-Murtra <i>et al.</i>, “Data and software from: Temporal variability and cell mechanics control robustness in mammalian embryogenesis.” Institute of Science and Technology Austria, 2024.","ama":"Corominas-Murtra B,   Moghe P, Kickuth A, et al. Data and software from: Temporal variability and cell mechanics control robustness in mammalian embryogenesis. 2024. doi:<a href=\"https://doi.org/10.5281/zenodo.12819780\">10.5281/zenodo.12819780</a>","chicago":"Corominas-Murtra, Bernat, Prachiti   Moghe, Alison Kickuth, Takafumi Ichikawa, Chizuru Iwatani, Tomoyuki Tsukiyama, Nathalie Daniel, et al. “Data and Software from: Temporal Variability and Cell Mechanics Control Robustness in Mammalian Embryogenesis.” Institute of Science and Technology Austria, 2024. <a href=\"https://doi.org/10.5281/zenodo.12819780\">https://doi.org/10.5281/zenodo.12819780</a>.","apa":"Corominas-Murtra, B.,   Moghe, P., Kickuth, A., Ichikawa, T., Iwatani, C., Tsukiyama, T., … Hiiragi, T. (2024). Data and software from: Temporal variability and cell mechanics control robustness in mammalian embryogenesis. Institute of Science and Technology Austria. <a href=\"https://doi.org/10.5281/zenodo.12819780\">https://doi.org/10.5281/zenodo.12819780</a>","mla":"Corominas-Murtra, Bernat, et al. <i>Data and Software from: Temporal Variability and Cell Mechanics Control Robustness in Mammalian Embryogenesis</i>. Institute of Science and Technology Austria, 2024, doi:<a href=\"https://doi.org/10.5281/zenodo.12819780\">10.5281/zenodo.12819780</a>.","ista":"Corominas-Murtra B,   Moghe P, Kickuth A, Ichikawa T, Iwatani C, Tsukiyama T, Daniel N, Gering J, Stokkermans A, Wolny A, Kreshuk A, Duranthon V, Uhlmann V, Hannezo E, Hiiragi T. 2024. Data and software from: Temporal variability and cell mechanics control robustness in mammalian embryogenesis, Institute of Science and Technology Austria, <a href=\"https://doi.org/10.5281/zenodo.12819780\">10.5281/zenodo.12819780</a>."},"contributor":[{"first_name":"Dimitri","last_name":"Fabrèges","contributor_type":"contact_person"}]}]
