Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def make_electrode_table():
table = ElectrodeTable()
dev1 = Device('dev1')
group = ElectrodeGroup('tetrode1', 'tetrode description', 'tetrode location', dev1)
table.add_row(id=1, x=1.0, y=2.0, z=3.0, imp=-1.0, location='CA1', filtering='none',
group=group, group_name='tetrode1')
table.add_row(id=2, x=1.0, y=2.0, z=3.0, imp=-2.0, location='CA1', filtering='none',
group=group, group_name='tetrode1')
table.add_row(id=3, x=1.0, y=2.0, z=3.0, imp=-3.0, location='CA1', filtering='none',
group=group, group_name='tetrode1')
table.add_row(id=4, x=1.0, y=2.0, z=3.0, imp=-4.0, location='CA1', filtering='none',
group=group, group_name='tetrode1')
return table
def setUpElectrode(self):
""" Set up the test IntracellularElectrode """
self.device = Device(name='device_name')
self.elec = IntracellularElectrode(name="elec0", slice='tissue slice',
resistance='something measured in ohms',
seal='sealing method', description='a fake electrode object',
location='Springfield Elementary School',
filtering='a meaningless free-form text field',
initial_access_resistance='I guess this changes',
device=self.device)
def create_imaging_plane():
oc = OpticalChannel(
name='test_optical_channel',
description='description',
emission_lambda=500.
)
device = Device(name='device_name')
ip = ImagingPlane(
name='test_imaging_plane',
optical_channel=oc,
description='description',
device=device,
excitation_lambda=600.,
imaging_rate=300.,
indicator='indicator',
location='location',
reference_frame='reference_frame',
origin_coords=[10, 20],
origin_coords_unit='oc_unit',
grid_spacing=[1, 2, 3],
grid_spacing_unit='gs_unit'
)
def buildPlaneSegmentation(self):
w, h = 5, 5
img_mask = [[[1.0 for x in range(w)] for y in range(h)], [[2.0 for x in range(w)] for y in range(h)]]
pix_mask = [(1, 2, 1.0), (3, 4, 1.0), (5, 6, 1.0),
(7, 8, 2.0), (9, 10, 2.)]
ts = [0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9]
self.image_series = ImageSeries(name='test_iS', dimension=[2],
external_file=['images.tiff'],
starting_frame=[1, 2, 3], format='tiff', timestamps=ts)
self.device = Device(name='dev1')
self.optical_channel = OpticalChannel('test_optical_channel',
'optical channel description', 500.)
self.imaging_plane = ImagingPlane('imgpln1',
self.optical_channel,
'a fake ImagingPlane',
self.device,
600., 200., 'GFP', 'somewhere in the brain',
(((1., 2., 3.), (4., 5., 6.)),),
2., 'a unit',
reference_frame='unknown')
self.img_mask = deepcopy(img_mask)
self.pix_mask = deepcopy(pix_mask)
self.pxmsk_index = [3, 5]
pS = PlaneSegmentation('plane segmentation description',
self.imaging_plane, 'test_plane_seg_name', self.image_series)
def GetElectrode():
device = Device(name='device_name')
elec = IntracellularElectrode(
name='test_iS',
device=device,
description='description',
slice='slice',
seal='seal',
location='location',
resistance='resistance',
filtering='filtering',
initial_access_resistance='initial_access_resistance')
return elec
def make_electrode_table():
table = ElectrodeTable()
dev1 = Device('dev1') # noqa: F405
group = ElectrodeGroup('tetrode1', 'tetrode description', 'tetrode location', dev1) # noqa: F405
table.add_row(id=1, x=1.0, y=2.0, z=3.0, imp=-1.0, location='CA1', filtering='none',
group=group, group_name='tetrode1')
table.add_row(id=2, x=1.0, y=2.0, z=3.0, imp=-2.0, location='CA1', filtering='none',
group=group, group_name='tetrode1')
table.add_row(id=3, x=1.0, y=2.0, z=3.0, imp=-3.0, location='CA1', filtering='none',
group=group, group_name='tetrode1')
table.add_row(id=4, x=1.0, y=2.0, z=3.0, imp=-4.0, location='CA1', filtering='none',
group=group, group_name='tetrode1')
return table
def make_imaging_plane(self):
self.device = Device(name='dev1')
self.optical_channel = OpticalChannel('optchan1', 'a fake OpticalChannel', 500.)
self.imaging_plane = ImagingPlane('imgpln1', self.optical_channel, 'a fake ImagingPlane', self.device,
600., 300., 'GFP', 'somewhere in the brain', reference_frame='unknown')
def make_electrode_table(self):
""" Make an electrode table, electrode group, and device """
self.table = get_electrode_table()
self.dev1 = Device(name='dev1')
self.group = ElectrodeGroup(name='tetrode1',
description='tetrode description',
location='tetrode location',
device=self.dev1)
for i in range(4):
self.table.add_row(x=i, y=2.0, z=3.0, imp=-1.0, location='CA1', filtering='none', group=self.group,
group_name='tetrode1')
return fname_tot
elif extension == '.nwb':
if to32 and not('float32' in str(self.dtype)):
input_arr = self.astype(np.float32)
else:
input_arr = np.array(self)
# Create NWB file
nwbfile = NWBFile(sess_desc, identifier,
datetime.now(tzlocal()),
experimenter=experimenter,
lab=lab_name,
institution=institution,
experiment_description=experiment_description,
session_id=session_id)
# Get the device
device = Device('imaging_device')
nwbfile.add_device(device)
# OpticalChannel
optical_channel = OpticalChannel('OpticalChannel',
'main optical channel',
emission_lambda=emission_lambda)
imaging_plane = nwbfile.create_imaging_plane(name='ImagingPlane',
optical_channel=optical_channel,
description=imaging_plane_description,
device=device,
excitation_lambda=excitation_lambda,
imaging_rate=self.fr,
indicator=indicator,
location=location)
# Images
image_series = TwoPhotonSeries(name=var_name_hdf5, dimension=self.shape[1:],
data=input_arr,
experimenter='Dr. Bilbo Baggins',
lab='Bag End Laboratory',
institution='University of Middle Earth at the Shire',
experiment_description=('I went on an adventure with thirteen '
'dwarves to reclaim vast treasures.'),
session_id='LONELYMTN')
####################
# Adding metadata about acquisition
# ---------------------------------
#
# Before you can add your data, you will need to provide some information about how that data was generated.
# This amounts describing the device, imaging plane and the optical channel used.
device = Device('imaging_device_1')
nwbfile.add_device(device)
optical_channel = OpticalChannel('my_optchan', 'description', 500.)
imaging_plane = nwbfile.create_imaging_plane('my_imgpln', optical_channel,
description='a very interesting part of the brain',
device=device, excitation_lambda=600., imaging_rate=300., indicator='GFP',
location='my favorite brain location',
reference_frame='A frame to refer to',
grid_spacing=(.01, .01))
####################
# Adding two-photon image data
# ----------------------------
#
# Now that you have your :py:class:`~pynwb.ophys.ImagingPlane`, you can create a
# :py:class:`~pynwb.ophys.TwoPhotonSeries` - the class representing two photon imaging data.