Skip to main content

A Python Library for VISoR Image.

Project description

visor-py

A Python Library for VISoR Image.

Usage

Install Module

pip install visor-py

Import Module

import visor.image as vimg

Examples

  • Read .vsr
import visor.image as vimg

# Open .vsr file with read-only ('r') mode
# img is a visor.Image object 
img = vimg.open_vsr('path/to/VISOR001.vsr', 'r')
print(img.info)
  • Read raw image
import visor.image as vimg
img = vimg.open_vsr('path/to/VISOR001.vsr', 'r')

# Read raw image of slice_1_10x from zarr file
# arr is a visor.Array object
arr = img.read(img_type='raw',
               zarr_file='slice_1_10x.zarr',
               resolution=0)
print(arr.info)
  • Read arrays by named stacks or channels
import visor.image as vimg
img = vimg.open_vsr('path/to/VISOR001.vsr', 'r')
arr = img.read(img_type='raw',
               zarr_file='slice_1_10x.zarr',
               resolution=0)

# Read stack by label
# s1_array is a dask.array, dimensions: c,z,y,x
s1_array = arr.read(stack='stack_1')
print(f's1_array shape: {s1_array.shape}, dimensions: c,z,y,x')

# Read channel by wavelength
# c488_array is a dask.array, dimensions: s,z,y,x
c488_array = arr.read(channel='488')
print(f'c488_array shape: {c488_array.shape}, dimensions: s,z,y,x')

# Read stack and channel
# s1c488_array is a dask.array, dimensions: z,y,x
s1c488_array = arr.read(stack='stack_1', channel='488')
print(f's1c488_array shape: {s1c488_array.shape}, dimensions: z,y,x')
  • Read array by index
import visor.image as vimg
img = vimg.open_vsr('path/to/VISOR001.vsr', 'r')
arr = img.read(img_type='raw',
               zarr_file='slice_1_10x.zarr',
               resolution=0)

# Read by index
# the_array is a dask.array
the_array = arr.array
print(f'the_array shape: {the_array.shape}, dimensions: s,c,z,y,x')
# subarr is a dask.array
subarr = the_array[0,0,:,:,:]
print(f'subarr shape: {subarr.shape}, dimensions: z,y,x')
  • Write .vsr
import visor.image as vimg
import numpy as np
import dask.array as da

# Open .vsr file with write ('w') mode
# img is a visor.Image object 
img = vimg.open_vsr('path/to/VISOR001.vsr', 'w')

# Generate a random array
# new_arr is a dask array
new_arr = da.random.random(size=(2, 2, 4, 4, 4), chunks=(1, 1, 2, 2, 2))

# Metadata
# follow https://visor-tech.github.io/visor-data-schema/
img_info = {}    # info.json
arr_info = {}    # .zattrs
selected = {}    # selected.json

# Write array to .vsr
img.write(arr=new_arr,
          img_type='raw',
          file='slice_1_10x',
          resolution=0,
          img_info=img_info,
          arr_info=arr_info,
          selected=selected)

References

VISoR Image Schema

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

visor_py-2024.12.1.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

visor_py-2024.12.1-py3-none-any.whl (7.8 kB view details)

Uploaded Python 3

File details

Details for the file visor_py-2024.12.1.tar.gz.

File metadata

  • Download URL: visor_py-2024.12.1.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for visor_py-2024.12.1.tar.gz
Algorithm Hash digest
SHA256 d49c82eb314fed81a421201c1a56783aae982a8e0ec6385ee1fe208fbd2c36f9
MD5 5a74f9c54ee1383f6a58b94a75eb6d3b
BLAKE2b-256 c637e141807765d3c480598af603acceeed822622cb7f44efe68e221b7b947a2

See more details on using hashes here.

File details

Details for the file visor_py-2024.12.1-py3-none-any.whl.

File metadata

  • Download URL: visor_py-2024.12.1-py3-none-any.whl
  • Upload date:
  • Size: 7.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for visor_py-2024.12.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7a7103aab965c29a454105442a36c88a7fd43a50cf7f38fc02e333fe6beefbf4
MD5 408845241cc210423fb2701911486466
BLAKE2b-256 31722fbc8f58c7f4bc5733a1e436435d5d34422f327580a7515c04a0281f24c7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page