.. 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/tmppq1sw4x5/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 [[[[[16100 7873 28238 ... 29235 40461 33146] [15093 19675 1572 ... 23394 57899 47477] [ 9089 16355 12624 ... 59289 3130 6427] ... [58233 40267 15620 ... 28510 3090 1334] [55791 21646 52760 ... 7733 49471 35453] [41537 16771 47111 ... 3065 62085 11164]] [[ 5871 52278 43053 ... 2008 23373 21894] [31168 35522 14416 ... 56160 58668 49502] [15330 39217 45091 ... 33466 23112 56170] ... [47427 56880 19485 ... 46227 24989 51236] [38296 10843 65235 ... 1500 16430 35481] [31899 23739 10755 ... 15951 8869 30745]] [[61792 9770 27955 ... 43440 37697 28549] [39888 64233 40933 ... 55006 42970 40427] [65168 21890 49491 ... 39031 49833 7783] ... [17920 18625 42469 ... 19524 24297 21383] [64284 24733 10279 ... 36275 42414 40256] [16555 18640 39702 ... 38015 31323 13844]]] [[[12281 47222 36489 ... 18966 46558 35403] [58401 4605 62107 ... 46067 25635 22669] [24980 51705 51854 ... 49143 59216 12285] ... [ 948 19721 40686 ... 21254 43442 20232] [31462 43658 1414 ... 429 64391 26694] [15910 29452 63035 ... 546 20986 46404]] [[41340 20694 36136 ... 30745 49204 4057] [ 1892 63820 38338 ... 63649 1190 64630] [ 3168 63611 61138 ... 31026 18973 55444] ... [ 3974 7661 27791 ... 30468 64681 10796] [51061 31140 44352 ... 18027 32253 10640] [23817 7221 30072 ... 60204 57198 63585]] [[10820 715 46542 ... 27727 23163 30258] [ 4330 2851 54484 ... 29177 18736 32968] [38783 19849 54755 ... 38496 29432 25532] ... [32122 11555 63031 ... 50106 64743 26796] [57937 33031 15768 ... 59848 43465 55739] [38933 57625 19747 ... 47393 32748 14469]]]] [[[[18487 49059 26059 ... 54414 36676 16185] [28156 9177 20010 ... 14263 4067 40957] [18171 14337 18676 ... 44741 29937 26840] ... [ 7024 41730 50891 ... 1170 6530 43038] [63648 41965 51990 ... 59665 12133 3549] [58634 28496 18283 ... 17848 59320 20248]] [[ 2691 61316 39215 ... 32285 11182 18509] [62285 63179 31432 ... 57552 43526 57948] [ 6238 795 34217 ... 40551 45346 6715] ... [ 5513 60734 49128 ... 52435 14803 54541] [ 5834 22214 26298 ... 51405 1926 14950] [61078 16593 29574 ... 61357 49213 10419]] [[60407 17291 5048 ... 65197 14858 17052] [ 5305 44050 61671 ... 7770 5422 28329] [ 8999 5468 40162 ... 9282 37331 25358] ... [27427 21405 29769 ... 10677 53602 64312] [60230 14510 50617 ... 23727 60055 51122] [65286 47670 33149 ... 31605 13275 39242]]] [[[31234 24020 5583 ... 35252 35992 5956] [64868 9009 14938 ... 18216 16492 17742] [62346 56090 28702 ... 50308 20003 42411] ... [32609 27421 31151 ... 17510 23097 50626] [33957 62470 54275 ... 31761 58165 15612] [58589 58344 35028 ... 34524 3103 32239]] [[64255 28498 33885 ... 43048 12406 53471] [59516 6178 15910 ... 63887 12885 61288] [ 283 64497 50580 ... 34689 29689 2219] ... [38907 55014 41209 ... 9196 22878 32452] [25278 13661 27660 ... 59322 18245 9652] [64290 62537 54932 ... 42711 27047 60685]] [[47635 33523 11249 ... 31639 6836 50453] [21941 13508 2447 ... 31853 8769 23345] [48238 30958 23308 ... 53726 61465 16309] ... [32728 62955 2293 ... 3481 24751 39301] [51081 5576 45044 ... 46331 33886 3585] [39885 43166 19823 ... 41627 16060 53239]]]] [[[[26564 1299 32339 ... 64037 63175 55178] [61187 50457 44072 ... 11779 26396 41730] [32156 46602 29002 ... 21467 15728 15658] ... [ 7380 49375 40408 ... 20825 27996 60464] [64101 32408 30590 ... 10291 31540 55239] [34717 1002 12203 ... 22432 49627 30971]] [[ 292 62480 3294 ... 8065 33168 18701] [57797 50762 55582 ... 60969 10946 28811] [26625 20536 51484 ... 46726 29487 47597] ... [20301 36685 41325 ... 22352 38059 31878] [12658 43820 61582 ... 19319 49489 47163] [19587 4205 49201 ... 42488 54989 23018]] [[30439 26476 23868 ... 3095 3227 30623] [24181 48233 22712 ... 37739 30881 32732] [ 1101 45402 63020 ... 37117 3303 8194] ... [17903 39655 5586 ... 33548 14157 45512] [14222 48069 22848 ... 4744 7139 30901] [27590 306 35473 ... 31937 9048 1066]]] [[[39915 36591 59229 ... 1126 9050 35683] [57052 30970 19852 ... 20702 28880 60027] [64137 26550 4376 ... 10259 15359 35183] ... [46504 106 38111 ... 55831 43105 56580] [ 1315 13328 6773 ... 22581 32337 10217] [10289 34448 2631 ... 1920 13597 65502]] [[ 67 61452 62462 ... 48401 25464 23528] [12358 33399 61307 ... 34900 24659 9862] [15424 41373 11641 ... 30231 31007 4999] ... [57741 46219 26875 ... 28317 661 45610] [ 7477 51168 37972 ... 17157 45232 54949] [42948 21825 16591 ... 15742 9256 9319]] [[25287 22217 45290 ... 57491 9811 33373] [18889 18041 30133 ... 10597 3564 63141] [57397 3598 59443 ... 2357 37713 63869] ... [41447 57196 35618 ... 45432 59007 36022] [45873 50650 15493 ... 25285 40560 26855] [54129 55437 18617 ... 38608 47376 9754]]]] [[[[17400 55288 60049 ... 38674 11337 65335] [40932 31706 15605 ... 36506 59323 20909] [14534 63557 6394 ... 42854 57951 46471] ... [23092 16272 5376 ... 25516 50437 5695] [39260 26530 51636 ... 37172 27300 60041] [60557 63052 43450 ... 9646 27287 14702]] [[30833 30947 1959 ... 36271 32417 37922] [49034 61257 31589 ... 16040 16861 32627] [62936 3018 64633 ... 3581 34753 10316] ... [13776 575 15004 ... 28014 53283 56744] [40804 25604 38202 ... 64278 26627 53720] [50768 45595 49421 ... 53258 19294 23948]] [[34638 61762 16189 ... 22250 50532 46115] [25527 23399 25353 ... 15761 50635 64131] [ 4065 14109 6373 ... 12779 16394 38881] ... [ 5799 44799 56266 ... 64510 6663 22153] [34260 13367 51256 ... 49734 5679 47908] [13015 14360 40065 ... 10886 21586 25458]]] [[[61940 52910 5956 ... 40346 433 23597] [49181 14329 23648 ... 1051 21149 20566] [ 8714 15620 60587 ... 18678 11990 44571] ... [25749 17183 7225 ... 9425 38530 27024] [ 9449 36223 64495 ... 49412 22363 20342] [13796 40799 32322 ... 35571 24943 3162]] [[27287 47572 45515 ... 52291 29296 31145] [ 4773 58627 53386 ... 41055 26563 20528] [22508 30804 16286 ... 8589 6900 22618] ... [53924 50963 48560 ... 62410 52743 29052] [57183 61430 28999 ... 4784 34466 21218] [10130 6630 55324 ... 45074 47869 7650]] [[ 6923 38950 52891 ... 440 61767 63289] [ 3652 3029 14224 ... 44779 46314 3340] [23238 29332 50538 ... 41984 44875 48368] ... [47628 36744 607 ... 63723 30224 10365] [15237 7270 24036 ... 50677 44765 32687] [24647 14930 56324 ... 54902 39029 19644]]]] [[[[62184 41345 15019 ... 24769 62375 12516] [37425 27045 7096 ... 65106 40874 8558] [58277 36285 54714 ... 53503 8353 17713] ... [24910 60240 58385 ... 2862 58736 44758] [31467 41644 21883 ... 59118 10090 15292] [19585 45688 48823 ... 57239 53722 55324]] [[11877 5118 63929 ... 43548 60255 21450] [47701 65068 4716 ... 23696 36733 43830] [51294 11111 52161 ... 47551 18782 20776] ... [32810 65244 52665 ... 36822 21229 61278] [48531 24383 38235 ... 57170 44747 39818] [ 378 32198 10323 ... 58374 17950 7866]] [[53630 5321 26546 ... 62974 41909 60621] [47528 37153 24747 ... 58975 30635 16832] [ 8613 11946 36936 ... 454 35031 24423] ... [23865 47053 12381 ... 56000 58315 53864] [48507 23973 32107 ... 30019 28576 17152] [17234 50764 33329 ... 34561 4887 31909]]] [[[11246 65235 46194 ... 22372 47051 9201] [ 1732 43176 4578 ... 47137 46711 56832] [43120 1389 36606 ... 1694 26677 55320] ... [34908 18261 33394 ... 64192 10569 4312] [63118 49117 49523 ... 20439 60663 13889] [24329 21705 753 ... 1196 844 32596]] [[ 4991 3804 21326 ... 59691 45544 41935] [10970 21988 38036 ... 33869 9504 17144] [ 5662 8461 28178 ... 23805 49886 38202] ... [39784 27187 23235 ... 40596 1685 51126] [14786 27368 42704 ... 7932 51776 62830] [35635 20857 30768 ... 16853 45293 3317]] [[10143 11842 41868 ... 33672 59360 38303] [25799 35440 56288 ... 6805 2738 25783] [19426 61809 42000 ... 20829 4888 48889] ... [18024 52257 11441 ... 53667 19989 2900] [41964 48912 11864 ... 3820 14048 47479] [47675 61372 36009 ... 59063 47550 50156]]]]] 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 `