flatironinstitute / neurosift

Browser-based NWB visualization and DANDI exploration
Apache License 2.0
39 stars 4 forks source link

Neurosift shows images rotated #179

Open h-mayorquin opened 2 weeks ago

h-mayorquin commented 2 weeks ago

image

But in neurosift:

image

Code to reproduce

import numpy as np 
img  = np.zeros((1000,1000))
img[:, 200:400] = 1

plt.imshow(img, cmap="gray")
# plt.imshow(np.rot90(img, k=1), cmap="gray")

from pynwb.testing.mock.file import mock_NWBFile
from pynwb.image import GrayscaleImage, Images

nwbfile = mock_NWBFile()

image = GrayscaleImage(name='test_image', data=img)

images_container = Images(
    name="stimuli",
    images=[image],
    description=f"test image",
)

nwbfile.add_stimulus(images_container)

from pynwb import NWBHDF5IO

with NWBHDF5IO('test.nwb', 'w') as io:
    io.write(nwbfile)

with NWBHDF5IO('test.nwb', 'r') as io:
    nwbfile_read = io.read()
    image_data = nwbfile_read.stimulus["stimuli"].images["test_image"].data
    plt.imshow(image_data, cmap="gray")