.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "auto_examples/run_single_fov_ome_zarr.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_auto_examples_run_single_fov_ome_zarr.py: Single-FOV OME-Zarr =================== This script shows how to create a single-FOV, single-scale OME-Zarr dataset, read data in read-only mode, append an extra time point to an existing dataset, and adding a new channel to an existing dataset. .. GENERATED FROM PYTHON SOURCE LINES 12-19 .. code-block:: Python import os from tempfile import TemporaryDirectory import numpy as np from iohub.ngff import open_ome_zarr .. GENERATED FROM PYTHON SOURCE LINES 20-21 Set storage path .. GENERATED FROM PYTHON SOURCE LINES 21-25 .. code-block:: Python tmp_dir = TemporaryDirectory() store_path = os.path.join(tmp_dir.name, "ome.zarr") print("Zarr store path", store_path) .. rst-class:: sphx-glr-script-out .. code-block:: none Zarr store path /tmp/tmp9t82c9to/ome.zarr .. GENERATED FROM PYTHON SOURCE LINES 26-27 Write 5D data to a new Zarr store .. GENERATED FROM PYTHON SOURCE LINES 27-37 .. code-block:: Python tczyx = np.random.randint( 0, np.iinfo(np.uint16).max, size=(5, 2, 3, 32, 32), dtype=np.uint16 ) with open_ome_zarr( store_path, layout="fov", mode="a", channel_names=["DAPI", "GFP"] ) as dataset: dataset["img"] = tczyx .. GENERATED FROM PYTHON SOURCE LINES 38-39 Opening in read-only mode prevents writing .. GENERATED FROM PYTHON SOURCE LINES 39-49 .. code-block:: Python with open_ome_zarr(store_path, layout="auto", mode="r") as dataset: img = dataset["img"] print(img) print(img.numpy()) try: img[0, 0, 0, 0, 0] = 0 except Exception as e: print(f"Writing was rejected: {e}") .. rst-class:: sphx-glr-script-out .. code-block:: none [[[[[40945 4963 63523 ... 58384 41713 59315] [ 5165 52488 1620 ... 5339 20212 32536] [52769 42833 30440 ... 4938 60499 65201] ... [21235 48609 924 ... 9710 6491 34427] [38798 18982 53790 ... 36545 30411 39307] [23743 56270 18809 ... 5373 40351 58645]] [[10551 1701 48617 ... 29513 4540 34496] [ 2071 58778 34168 ... 47554 39690 15810] [17128 50122 58852 ... 27967 65049 63012] ... [48278 11060 23642 ... 4480 9122 18128] [14841 44672 42059 ... 12359 279 29326] [ 7377 56822 7173 ... 46957 1694 13798]] [[24185 43110 24460 ... 58506 34552 21493] [46098 36169 18126 ... 40112 7246 31113] [30959 63249 64571 ... 56429 7868 19416] ... [33236 61394 58206 ... 17370 8077 27219] [33443 810 21170 ... 6442 46025 54730] [ 6008 43089 13042 ... 17309 53290 30455]]] [[[52578 10034 60948 ... 17457 20374 11992] [43923 3429 64967 ... 36325 22147 13711] [ 109 2625 60655 ... 5978 16224 22846] ... [36317 4133 19080 ... 23604 32488 20802] [11316 44028 29196 ... 18004 41188 42671] [15374 19104 27451 ... 32787 37040 35639]] [[47103 4430 59393 ... 33776 56597 54132] [54885 24511 51841 ... 37100 22486 4249] [22201 7841 6763 ... 42119 18246 3654] ... [64996 34303 40382 ... 57792 12220 63531] [55539 53267 16685 ... 35724 45259 52180] [16095 48746 32351 ... 42538 29059 61129]] [[32838 64516 6500 ... 21374 43934 5348] [28369 15356 37555 ... 10011 20838 34161] [59142 12202 10121 ... 52307 9835 25359] ... [58995 14038 65308 ... 8815 26885 30389] [49287 47388 10279 ... 29054 55302 34549] [14134 33263 13849 ... 53672 54251 3544]]]] [[[[25073 20039 35336 ... 28361 58861 15531] [30330 16435 57716 ... 49067 54827 32396] [40913 17818 20382 ... 26453 15618 38474] ... [33201 58208 48821 ... 34290 34692 49529] [49537 58117 16326 ... 27673 12322 1220] [45910 39278 59674 ... 10422 53394 50853]] [[12016 48390 28131 ... 52604 1113 60754] [47472 16190 16605 ... 51828 64023 11695] [61139 41523 9696 ... 57833 4197 24980] ... [16652 54573 23756 ... 63108 45825 17533] [ 6564 10577 17228 ... 54528 9038 61938] [24443 2672 45737 ... 20652 5316 49189]] [[ 7666 23474 39918 ... 22595 33571 31216] [21306 53955 31051 ... 29617 61081 58587] [55272 6068 49354 ... 49914 60112 61819] ... [16750 11758 40838 ... 29614 28158 14467] [36697 28658 3079 ... 7374 48116 41346] [ 7001 25601 49322 ... 2456 61440 21323]]] [[[10196 55513 10647 ... 16934 28457 32333] [28166 53428 47433 ... 48303 26658 56628] [ 1765 55661 40573 ... 11736 32986 52751] ... [63258 34626 65304 ... 25186 56423 3232] [43097 20091 25029 ... 9465 37983 47143] [47054 3061 20297 ... 51177 55366 6705]] [[36943 16078 22418 ... 5082 16705 49417] [ 2049 13866 38210 ... 34548 48404 62456] [16968 60313 37998 ... 33137 7600 55598] ... [55322 50978 6005 ... 305 54991 4953] [ 4295 47606 26470 ... 7601 46205 1058] [41979 27082 21637 ... 17617 58631 39574]] [[54657 42056 50121 ... 59057 14705 56445] [49264 14571 31630 ... 47619 17037 4707] [35416 6846 61930 ... 4553 58591 47784] ... [42797 8075 2379 ... 64892 22957 33160] [41038 40321 39468 ... 36371 47715 23530] [ 1 30989 62365 ... 10393 23500 4408]]]] [[[[28795 41781 57684 ... 9828 48564 29501] [ 2781 17690 27847 ... 49513 51775 55567] [12780 10571 12314 ... 23126 44538 58538] ... [ 2553 43912 872 ... 59257 11919 42767] [36750 58651 12399 ... 15631 6445 11926] [63999 38564 19131 ... 21791 42276 35357]] [[47932 63952 9028 ... 55091 55087 12987] [32120 6147 31183 ... 991 129 39387] [20799 44731 21892 ... 29791 10360 41332] ... [31854 44739 11971 ... 19277 55320 65062] [63200 21909 12003 ... 14980 48456 32013] [55220 4543 57724 ... 50613 1850 62778]] [[61653 63804 7360 ... 61086 41267 11428] [38986 38684 8049 ... 47266 28770 40560] [41889 54705 7296 ... 63473 32555 9228] ... [62678 59613 4405 ... 54617 51781 24218] [31197 58352 54541 ... 63341 62737 13761] [ 6694 17016 61080 ... 64204 62472 20643]]] [[[48646 52080 39730 ... 32259 5452 26285] [28665 19996 13321 ... 60628 32315 52579] [25730 32003 27440 ... 26598 19915 11935] ... [64501 61150 48718 ... 29083 24602 46073] [38201 11622 1097 ... 20909 62416 37010] [32385 19523 4911 ... 48250 1810 38677]] [[47428 58822 52409 ... 31837 19044 46034] [ 5913 31407 26315 ... 54471 16376 16778] [60269 57308 23342 ... 1563 26721 6583] ... [32316 62176 50364 ... 32647 17257 1313] [40353 24163 12002 ... 42528 36703 61637] [50720 2711 59821 ... 5438 34668 45517]] [[59494 3352 26075 ... 12561 4559 35390] [10996 12928 40117 ... 40071 43255 46233] [50124 46122 29759 ... 5778 5786 44753] ... [31384 48555 25438 ... 4162 60179 33211] [ 3796 55447 42662 ... 21977 48853 55970] [29840 46320 17824 ... 58848 13589 36194]]]] [[[[37782 36610 46033 ... 57904 15220 7477] [63832 32704 7391 ... 10265 33185 50573] [20695 30072 20027 ... 58890 52776 10418] ... [64366 45850 30376 ... 57310 37064 27402] [13573 33028 45760 ... 19914 61844 45600] [ 9324 44404 64781 ... 63808 38477 20446]] [[63785 119 8402 ... 34739 17159 7743] [20264 56653 29107 ... 38791 29876 2427] [ 6070 60796 30769 ... 58362 34943 51485] ... [26925 34503 33183 ... 55688 15558 49756] [28098 5752 1088 ... 24877 35961 7099] [37453 38201 54532 ... 40668 45001 19067]] [[49709 53523 17015 ... 37843 38894 37460] [53372 58272 46933 ... 63155 52336 47516] [25316 5808 19648 ... 17747 43524 5137] ... [44819 5610 63226 ... 61944 236 20852] [58509 49565 2632 ... 44334 1189 9817] [41127 62977 59998 ... 60705 1575 23534]]] [[[ 79 3558 32757 ... 57542 40138 64624] [ 3411 36369 3970 ... 28946 2108 9221] [14682 58116 50615 ... 2601 19852 61155] ... [ 5445 6890 52952 ... 37457 29901 49781] [56115 57073 10410 ... 39165 36483 32148] [58054 22485 15423 ... 6777 57129 55347]] [[26542 3311 1924 ... 10229 51399 32286] [64825 55520 55271 ... 47449 15882 30072] [22871 6385 23364 ... 8404 43179 37181] ... [49241 22637 2227 ... 62106 33979 666] [22922 26136 56584 ... 3095 29213 38180] [35914 1820 22928 ... 31423 33299 14491]] [[60130 51244 32530 ... 23759 13445 53541] [49882 13623 22236 ... 19590 22713 2914] [64221 5183 33301 ... 38571 16551 44512] ... [ 6278 48243 2343 ... 6768 22797 54730] [31039 41784 18714 ... 60296 47471 915] [ 7082 24165 42782 ... 35168 1232 35638]]]] [[[[20494 37188 65456 ... 25012 52388 5427] [52400 53616 22503 ... 34600 16442 51933] [40602 53397 59398 ... 7845 51431 60765] ... [53180 35140 21740 ... 39870 42590 59961] [ 7132 27409 475 ... 43002 43914 29649] [39207 5805 34447 ... 50919 42659 53091]] [[57934 37882 56082 ... 38065 38238 63315] [65466 60519 17759 ... 26399 20779 36632] [49592 48033 48010 ... 57154 61212 38446] ... [17070 20163 8324 ... 19887 30016 33740] [49229 16962 46249 ... 10403 44138 21317] [54789 32867 38247 ... 23521 11025 39674]] [[50805 37727 29362 ... 30717 63247 58308] [ 7040 52750 29486 ... 14496 4582 16857] [41094 25712 32710 ... 13798 21704 29114] ... [11680 63770 26797 ... 43843 60058 22007] [40208 13653 55416 ... 28263 26183 58262] [16365 56974 58152 ... 26297 38869 54328]]] [[[60012 8509 45586 ... 18332 5128 34896] [ 2882 48173 27399 ... 64299 18373 63945] [ 4611 18600 35337 ... 24293 17929 34014] ... [ 4346 26639 1328 ... 5849 59225 63349] [29008 40566 29189 ... 59770 3782 24860] [65239 53487 13392 ... 3166 1636 27674]] [[62834 43632 11326 ... 55720 28638 465] [11253 14965 18472 ... 63000 4548 35679] [ 9502 21452 48947 ... 49584 19340 37030] ... [25345 4003 52585 ... 59180 20173 58545] [65084 21615 58527 ... 22992 13689 34634] [19621 36183 11689 ... 14990 56252 46129]] [[61886 36463 3092 ... 46050 40604 540] [49909 6614 5092 ... 41574 53495 10045] [64082 63110 63733 ... 15108 59912 49800] ... [22650 53937 34828 ... 57433 33216 40770] [15117 33380 62221 ... 43962 33484 13411] [55441 1139 63140 ... 52546 31219 35685]]]]] Writing was rejected: store was opened in read-only mode and does not support writing .. GENERATED FROM PYTHON SOURCE LINES 50-51 Append a new timepoint to an existing dataset .. GENERATED FROM PYTHON SOURCE LINES 51-62 .. code-block:: Python new_1czyx = np.random.randint( 0, np.iinfo(np.uint16).max, size=(1, 2, 3, 32, 32), dtype=np.uint16 ) with open_ome_zarr(store_path, layout="fov", mode="r+") as dataset: img = dataset["img"] print(img.shape) img.append(new_1czyx, axis=0) print(img.shape) .. rst-class:: sphx-glr-script-out .. code-block:: none (5, 2, 3, 32, 32) (6, 2, 3, 32, 32) .. GENERATED FROM PYTHON SOURCE LINES 63-64 Modify channels .. GENERATED FROM PYTHON SOURCE LINES 64-96 .. code-block:: Python # Open the dataset used above dataset = open_ome_zarr(store_path, mode="r+") dataset.print_tree() # Append a new channel and write a Z-stack new_zyx = np.random.randint( 0, np.iinfo(np.uint16).max, size=(3, 32, 32), dtype=np.uint16 ) dataset.append_channel("New", resize_arrays=True) dataset["img"][0, 2] = new_zyx print(dataset.channel_names) dataset.print_tree() # Rename the new channel dataset.rename_channel("New", "Renamed") print(dataset.channel_names) # Write new data to the channel new_tzyx = np.random.randint( 0, np.iinfo(np.uint16).max, size=(6, 3, 32, 32), dtype=np.uint16 ) c_idx = dataset.get_channel_index("Renamed") dataset["img"][:, c_idx] = new_tzyx # Which is equivalent to: if False: # remove this line dataset.update_channel("Renamed", target="img", data=new_tzyx) # Close the dataset dataset.close() .. rst-class:: sphx-glr-script-out .. code-block:: none / └── img (6, 2, 3, 32, 32) uint16 ['DAPI', 'GFP', 'New'] / └── img (6, 3, 3, 32, 32) uint16 ['DAPI', 'GFP', 'Renamed'] .. GENERATED FROM PYTHON SOURCE LINES 97-98 Try viewing the images with napari-ome-zarr .. GENERATED FROM PYTHON SOURCE LINES 100-101 Clean up .. GENERATED FROM PYTHON SOURCE LINES 101-101 .. code-block:: Python tmp_dir.cleanup() .. _sphx_glr_download_auto_examples_run_single_fov_ome_zarr.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: run_single_fov_ome_zarr.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: run_single_fov_ome_zarr.py ` .. container:: sphx-glr-download sphx-glr-download-zip :download:`Download zipped: run_single_fov_ome_zarr.zip `