holypipette.interface.paramecium_droplet module

class holypipette.interface.paramecium_droplet.CalibratedUnitProxy(pipette_interface)[source]

Bases: object

Small helper object that forwards all requests to the currently selected manipulator.

class holypipette.interface.paramecium_droplet.ParameciumDropletConfig(value_changed=None, *args, **kwds)[source]

Bases: Config

params(autofocus_size=NumberWithUnit, autofocus_sleep=NumberWithUnit, blur_size=NumberWithUnit, draw_contours=Boolean, draw_fitted_ellipses=Boolean, max_displacement=NumberWithUnit, max_gradient=NumberWithUnit, max_length=NumberWithUnit, max_width=NumberWithUnit, min_gradient=NumberWithUnit, min_length=NumberWithUnit, min_width=NumberWithUnit, minimum_contour=NumberWithUnit, minimum_stop_time=NumberWithUnit, stop_amplitude=NumberWithUnit, stop_duration=NumberWithUnit, target_pixelperum=Number, working_distance=NumberWithUnit, name=String) Parameters of ‘ParameciumDropletConfig’ =======================================  Parameters changed from their default values are marked in red. Soft bound values are marked in cyan. C/V= Constant/Variable, RO/RW = ReadOnly/ReadWrite, AN=Allow None

Name Value Type Bounds Mode 

target_pixelperum 1 Number (0, 4) V RW min_gradient 75 NumberWithUnit (0, 100) V RW max_gradient 98 NumberWithUnit (0, 100) V RW blur_size 10 NumberWithUnit (0, 100) V RW minimum_contour 100 NumberWithUnit (0, 1000) V RW min_length 65 NumberWithUnit (0, 1000) V RW max_length 170 NumberWithUnit (0, 1000) V RW min_width 30 NumberWithUnit (0, 1000) V RW max_width 60 NumberWithUnit (0, 1000) V RW max_displacement 50 NumberWithUnit (0, 1000) V RW autofocus_size 150 NumberWithUnit (0, 1000) V RW autofocus_sleep 0.5 NumberWithUnit (0, 1) V RW minimum_stop_time 0 NumberWithUnit (0, 5000) V RW stop_duration 50 NumberWithUnit (0, 1000) V RW stop_amplitude 5 NumberWithUnit (0, 1000) V RW working_distance 200 NumberWithUnit (0, 1000) V RW draw_contours False Boolean (0, 1) V RW draw_fitted_ellipses False Boolean (0, 1) V RW

Parameter docstrings: =====================

target_pixelperum: Target number of pixel per um min_gradient: Minimum gradient quantile for edge detection max_gradient: Maximum gradient quantile for edge detection blur_size: Gaussian blurring size minimum_contour: Minimum contour length min_length: Minimum length ellipsis max_length: Maximum length for ellipsis min_width: Minimum width for ellipsis max_width: Maximum width for ellipsis max_displacement: Maximum displacement over one frame autofocus_size: Size of bounding box for autofocus autofocus_sleep: Sleep time autofocus minimum_stop_time: Time before starting automation stop_duration: Stopping duration before detection stop_amplitude: Movement threshold for detecting stop working_distance: Working distance for pipettes draw_contours: Draw contours? draw_fitted_ellipses: Draw fitted ellipses?

autofocus_size = 150
autofocus_sleep = 0.5
blur_size = 10
categories = [('Tracking', ['target_pixelperum', 'min_gradient', 'max_gradient', 'blur_size', 'minimum_contour', 'min_length', 'max_length', 'min_width', 'max_width', 'max_displacement']), ('Manipulation', ['working_distance', 'autofocus_size', 'autofocus_sleep']), ('Automation', ['stop_duration', 'stop_amplitude', 'minimum_stop_time']), ('Debugging', ['draw_contours', 'draw_fitted_ellipses'])]
draw_contours = False
draw_fitted_ellipses = False
max_displacement = 50
max_gradient = 98
max_length = 170
max_width = 60
min_gradient = 75
min_length = 65
min_width = 30
minimum_contour = 100
minimum_stop_time = 0
name = 'ParameciumDropletConfig'
stop_amplitude = 5
stop_duration = 50
target_pixelperum = 1
working_distance = 200
class holypipette.interface.paramecium_droplet.ParameciumDropletInterface(pipette_interface, camera)[source]

Bases: TaskInterface

autofocus(xy_position)[source]

Autofocus

Parameters:

xy_position (object, optional)

autofocus_paramecium()[source]

Autofocus on Paramecium

automatic_experiment()[source]

Perform automatic experiment

detect_contact()[source]

Detects contact of the pipette with water.

display_z_manipulator()[source]

Display z position of manipulator relative to floor

focus()[source]

Focus on tip

move_pipette_down()[source]

Move pipette vertically to floor level

move_pipette_floor(xy_position)[source]

Move pipettes to position at floor level

Parameters:

xy_position (object, optional)

move_pipette_working_level(xy_position)[source]

Move pipette down to position at working distance level

Parameters:

xy_position (object, optional)

move_pipettes_paramecium()[source]

Move pipettes to Paramecium

start_tracking(xy_position)[source]

Start tracking paramecium at mouse position

Parameters:

xy_position (object, optional)

toggle_following()[source]

Toggle paramecium following

toggle_tracking()[source]

Toggle paramecium tracking

track_paramecium(frame)[source]