An acquisition event is a dictionary that defines the parameters for an image acquisition. To trigger an image acquisition, the event must contain either the 'channel' key within 'axes' or the 'axes' key itself. If these are missing, the event is used for hardware control only.
Key fields include:
'axes': A dictionary of positions along various axes.'channel': A special axis name that overlays different positions in different colors in the viewer.'row' and 'column': Special values used by XYTiledAcquisition to convert to stage coordinates for grid layouts.
'config_group': A list ['group_name', 'preset_name'] to control hardware properties.'z': Controls the default z stage device (e.g., Core-Focus) in $\mu m$.'stage_positions': A list of dictionaries to control multiple specific devices by name and position in $\mu m$.'x', 'y': XY stage positions in $\mu m$.'exposure': Exposure time in ms.'camera': The name of the camera device to use (if not the default 'Core-camera').'properties': A list of ['DeviceName', 'PropertyName', 'PropertyValue'] for arbitrary hardware settings.'tags': Custom metadata that will be added to the resultant image's metadata.
event = {
'axes': {
'axis1_name': 1,
'axis2_name': 'first_position',
'channel': 'DAPI',
'row': 1,
'column': 0,
},
'config_group': ['name_of_config_group', 'name_of_preset'],
'exposure': 10.6,
'z': 123.45,
'stage_positions':
[{'z_stage1_name': 12.34},
{'z_stage2_name': 1234.566}],
'min_start_time': 100,
'x': 123.4,
'y': 567.8,
'camera': 'a_camera_device_name',
'properties': [['DeviceName', 'PropertyName', 'PropertyValue'],
['OtherDeviceName', 'OtherPropertyName', 'OtherPropertyValue']],
'tags': {
'whatever_you_want_here': 54,
'something_else': 'here'}
}