DOI: 10.5061/dryad.b2rbnzsr9
title: Directional control in sea star locomotion with respect to light

description: Sea stars control hundreds of tube feet to navigate their environment with
 a rudimentary nervous system. Tube feet are capable of responding to
 stimuli without descending nervous commands and it is therefore
 unclear to what extent tactic orientation emerges through the
 collective action of the feet or is guided by central control. We
 therefore performed behavioral experiments to test models of
 neuromechanical control in a sea star (Protoreaster nodosus). We
 found that animals moved rapidly along relatively
 straight trajectories when exposed to light, but slowly crawled
 along circuitous paths in random directions in the dark. To
 remove mechanical interactions with the substrate, we measured the
 kinematics of tube feet in inverted sea stars that exhibited crawling when
 in contact with the water’s surface. The tube feet throughout the
 body of these animals moved with power strokes in a similar
 direction when the animals were exposed to light, which is
 consistent with central control. This contrasts the variety of directions
 for power strokes exhibited without illumination. These findings
 support a model of navigational control where directionless body motion
 emerges from collective mechanics in the dark, but is guided by
 the nervous system when exposed to light. In this manner, sea stars
 navigate through a combination of collective and central control.
description: The study investigated directional control in the tube feet of
 sea stars (<em>Protoreaster nodosus</em>) through experimental
 manipulation. Specifically, it examined the coordination of tube feet in
 response to light, both with and without mechanical coupling. The effects
 of directional stimuli were analyzed using kinematic assessments of
 individual sea stars. This repository contains the data, MATLAB, and R
 scripts used for all analyses in the study.
description: # seastar\_phototaxis Dryad DOI link:
 [https://doi.org/10.5061/dryad.b2rbnzsr9](https://doi.org/10.5061/dryad.b2rbnzsr9) It remains unclear how hundreds of tube feet on sea stars coordinate their movements without a brain. Our research article investigates the behavior of Protoreaster nodosus—specifically, how its tube feet coordinate under different conditions. Previous evidence suggests that tube feet may coordinate through mechanical coupling with the body and substrate, although it is also possible that motor commands from the nervous system drive their coordination. To test these possibilities, we designed an experiment to minimize mechanical coupling. We inverted the sea stars while providing a directional light stimulus. If the tube feet can still coordinate effectively in the inverted position, it would support the hypothesis that directional coordination is primarily a result of nervous system control rather than mechanical coupling. Our findings indicate that mechanical coupling is not necessary for the directional coordination of sea star tube feet. ## Overview for PhototaxisRightSideUpUpload.csv This file contains data collected from trials involving sea stars in right side up experiments. In each trial, sea stars were exposed to either a directional light stimulus or no light (darkness). At the beginning of each experimental day, a calibration video with a scale bar was recorded. Each sea star was assigned an individual name and number, with a total of six sea stars used in these experiments. Note that the light direction was kept constant throughout the trials. vidID : Name of video that includes the date the trial was taken, lightDLC the project identifier, mobnet_100 is the neural network used for training from deeplabcut, 100 is the width multiplier, lightProjectRSUSummerJun26 is the project name, shuffle 1 indicates the first shuffle, 800000 is the iteration number, labled.mp4 indicates that it is the labeled video where deeplabcut overlaid the tracked points onto the original footage. expType : one light on (oL), no light on, darkness (nL) heaterPos : heater position seasStar : The name of the sea star (Wumbo, Starbuck, Jaffa, Magnus, Sindaco, Peach) indivNum : The identifying number that the individual was assigned date : The date that the particular trial was taken on caliVid. : Calibration video that contain a scale bar. A new calibration video was taken the begining of each day of experiments. caliConst : Calculated from caliVid using ImageJ, the units are cm per pixels. trial_animal_total : Total number of trials for that animal on all days including right side up and inverted experiments. trialNum_animal_day : Total number of trials specific to animal for all days including right side up experiments only. trialNumAll : Total number of trials for all animals for all days inlcuding right side up and inverted experiments. trial_num : Total number of trials for all animals for all days including right side up experiments only. fps : Frames per second that the video was taken at daysLastMeal : The number of days since the last meal the sea star had before the experiment of that trial was conducted volt : The voltage used to power the light metDir : The direction of the madreporite of the sea star use_video : To use video(1) or not (0) ana_video : To analyze video (1) or not (0) notes : Experimental notes taken during the experiments ## Overview for rightSideUpCompiledData.mat for right side up experiments This file contains the data of the coordinates of right side up experiments. This file is to be opened via MatLab. In each trial, sea stars were exposed to either a directional light stimulus or no light (darkness). Each sea star was assigned an individual name and number, with a total of six sea stars used in these experiments. lightArmXL : X position of arm closest to the light in a local frame of reference lightArmYL : Y position of the arm closest to the light in a local frame of reference lightArmXG : X position of the arm closest to the light in a global frame of reference lightArmYG : Y position of the arm closest to the light in a global frame of reference xLPos1 : X position of the local frame of reference of arm 1 xLPos2 : X position of the local frame of reference of arm 2 xLPos3 : X position of the local frame of reference of arm 3 xLPos4 : X position of the local frame of reference of arm 4 xLPos5 : X position of the local frame of reference of arm 5 yLPos1 : Y position of the local frame of reference of arm 1 yLPos2 : Y position of the local frame of reference of arm 2 yLPos3 : Y position of the local frame of reference of arm 3 yLPos4 : Y position of the local frame of reference of arm 4 yLPos5 : Y position of the local frame of reference of arm 5 xLMean : X position of the center of the body in the local frame of reference calculated with the mean of all arms yLMean : Y position of the center of the body in the local frame of reference calculated with the mean of all arms xGMean : X position of the center of the body in the global frame of reference calculated with the mean of all arms yGMean : Y position of the center of the body in the global frame of reference calculated with the mean of all arms time : Time vector from DeepLabCut CSV velL : Velocity of the center of the body in the local frame of reference velG : Velocity of the center of the body in the gloabl frame of reference netOverActualL : Net distance of center over actual position of center of the body in the local frame of reference netOverActualG : Net distance of center over actual position of center of the body in the global frame of reference lightArmSpinAngL : Angle of the arm closet to the light with respect to the light ub the local frame of reference lightArmSpinAngG : Angle of the arm closet to the light with respect to the light ub the local frame of reference vidID : Name of video that includes the date the trial was taken, lightDLC the project identifier, mobnet_100 is the neural network used for training from deeplabcut, 100 is the width multiplier, lightProjectRSUSummerJun26 is the project name, shuffle 1 indicates the first shuffle, 800000 is the iteration number, labled.mp4 indicates that it is the labeled video where deeplabcut overlaid the tracked points onto the original footage. treatment : The lighting condition of the trial. oL means one light on, nL means no light on (darkness) daysLastMeal : The number of days since the last meal from the date of the experiment date : Date of the experiment indiv : Name or identifier of the animal netPathMagL : The magnitude of the net path in the local frame of reference netPathMagG : The magnitude of the net path in the global frame of reference xRawOri : The x coordinates of the middle of the light as the origin in the local frame of reference yRawOri : The y coordination of the middle of the light as the origin in the local frame of reference indivNum : The number used as an identifier of an animal angLightCntr : Angle of the center of the body with respect to the origin of the light metDir : Madreporite direction in cardinal direction ## Overview for lightProjectUpsideDownNoPlateUpload.csv This file contains data collected from trials involving inverted sea star (upside down) . In each trial, sea stars were exposed to either a directional light stimulus or no light (darkness). At the beginning of each experimental day, a calibration video with a scale bar was recorded. Each sea star was assigned an individual name and number, with a total of six sea stars used in these experiments. Note that the light direction was kept constant throughout the trials. filename : Name of the file expType : One light on (oL), no light on, darkness (nL) seaStar : The name of the sea star (Wumbo, Starbuck, Jaffa, Magnus, Sindaco, Peach) indiv : Identifying number of the sea star date : The date that the particular trial was taken on caliVid. : Calibration video that contain a scale bar. A new calibration video was taken the begining of each day of experiments. trialNum_animal_total: Total number of trials specific to animal for all days in upside down (inverted) experiments trialNum_animal_day : Total number of trials for a specific animal for that day in upside down (inverted) experiments trialNumAll : Total number of trials for that animal on all days including right side up and upside down experiments trial_num : Total number of trials over all for all days and all animals fps : Frames per second that the video was taken at daysLastMeal : The number of days since the last meal the sea star had before the experiment of that trial was conducted volt : The voltage used to power the light metDir : The direction of the madreporite of the sea star use_video : To use video(1) or not (0) ana_video : To analyze video (1) or not (0) notes : Experimental notes taken during the experiments ## Overview for upSideDownNoPlateCompiledData.csv This file contains data calcualted from the kinematics data in upsideDownExperiment files. filename : Name of the file, each file is labeled with the date of the experiment, the trial number for that day seaStar : The name of the sea star (Wumbo, Starbuck, Jaffa, Magnus, Sindaco, Peach) indiv : Identifying number of the sea star polarization : A number between 0(least coordinated) and 1 (most coordinated) that is the quantification of the tube feet directional coordination meanStrDur : The mean power stroke duration of the tube feet in the video meanStrDist : The mean distance that a powerstroke of a tube foot moves in the video ## Overview for upsideDownExperimentNoPlate This dataset contains manually collected kinematics data for the tube feet of sea stars during inverted (upside down) experiments without glass plates. More information about each video file can be found in lightProjectUpsideDownNoPlateUpload.csv. The data regarding the polarization, mean power stroke duration, mean powerstroke distance can be found in upSideDownNoPlateCompiledData.csv Each file is labeled with the date of the experiment, the trial number for that day, and the lighting condition applied during the trial (oL for one light on or nL for no light/darkness). For each experimental day, a calibration video with a scale bar was recorded to allow conversion from pixels to centimeters. Data were collected during multiple trials per day, with each sea star uniquely identified by a name and a corresponding number. ## Overview for lightProjectUpsideDownPlateUpload.csv This file contains data collected from trials involving inverted sea star (upside down) with glass paltes. In each trial, sea stars were exposed to either a directional light stimulus or no light (darkness). Each sea star was assigned an individual name and number, with a total of five sea stars used in these experiments. Note that the light direction was kept constant throughout the trials. filename : Name of the file expType : One light on (oL), no light on, darkness (nL) seaStar : The name of the sea star (Wumbo, Starbuck, Jaffa, Magnus, Sindaco, Peach) indiv : Identifying number of the sea star date : The date that the particular trial was taken on trialNum_animal_total: Total number of trials specific to animal for all days in upside down (inverted) experiments trialNum_animal_day : Total number of trials for a specific animal for that day in upside down (inverted) experiments trialNumAll : Total number of trials for that animal on all days including right side up and upside down experiments trial_num : Total number of trials over all for all days and all animals fps : Frames per second that the video was taken at daysLastMeal : The number of days since the last meal the sea star had before the experiment of that trial was conducted volt : The voltage used to power the light metDir : The direction of the madreporite of the sea star use_video : To use video(1) or not (0) ana_video : To analyze video (1) or not (0) notes : Experimental notes taken during the experiments ## Overview for lightProjectUpsideDownPlateCompliedData.csv This file contains data calcualted from the kinematics data in upsideDownExperimentPlate files. filename : Name of the file, each file is labeled with the date of the experiment, with or without plate (Experiments without plates in this file are clips of videos taken right before the glass plate was placed onto the tube feet) plate : Indicates whether the video is with plate (1) or without plate (0) light : Indicates whether the light is on (1) or off (0) seaStar : The name of the sea star (Wumbo, Starbuck, Jaffa, Magnus, Sindaco, Peach) indiv : Identifying number of the sea star polarization : A number between 0(least coordinated) and 1 (most coordinated) that is the quantification of the tube feet directional coordination meanStrDur : The mean power stroke duration of the tube feet in the video meanStrDist : The mean distance that a powerstroke of a tube foot moves in the video ## Overview for upsideDownExperimentsPlate This dataset contains manually collected kinematics data for the tube feet of sea stars during inverted (upside down) experiments with glass plates. The videos without the glass plates in this folder are clips of videos taken right before the glass plate was placed onto the tube feet. More information about each video file can be found in lightProjectUpsideDownPlateUpload.csv. The data regarding the polarization, mean power stroke duration, mean power stroke distance can be found in upSideDownNoPlateCompiledData.csv Each file is labeled with the date of the experiment, the trial number for that day, and whether the plate is on the tube feet (plate means the glass plate is on the tube feet, dur means the glass plate is not on the tube feet). For each experimental day, a calibration video with a scale bar was recorded to allow conversion from pixels to centimeters. Data were collected during multiple trials per day, with each sea star uniquely identified by a name and a corresponding number. ## Overview of tfKineSummary.csv 'tfKineSummary' stands for tube foot kinematics summary. This file includes information from upside down experiments with plate and without plate. This is a file that contains the lighting condition, plate condition, polarization, stroke suration, mean stroke distance, and whether the trial was part of a plate experiment. fileName : Name of the file that contains the date, and trial number, lighting condition, and whether a plate was used in the trial. plate : Wether a plate was placed onto the tube feet of the sea stars. light : Whether the light was on (1) or off (0) polarization : How coordinated the tube feet are. 0 means the tube feet are pointed in the opposite direction and 1 means the tube feet are pointed in the same direction. meanStrDur : The mean stroke duration of the tube feet per powerstroke. meanStrDist : The mean stroke distance of the tube feet per powerstroke. plateExp : Whether the trial is part of a trials with plates (1) or not (0) lightExp : Whether thr trial is a light only(1) - no plate experiment(0) ## Overview of plate\_straightness.csv This file contains the plate_straightness during upside down experiments with a glass plate placed on the tube feet of the sea stars, lighting condition, and identifying information. light : Whether the light was on (1) or off (0) straightness: The striaghtness or the net path of the plate divided by the distance traveled by a glass plate indivNum : The name specific to the sea star (Wumbo, Starbuck, Jaffa, Magnus, Sindaco, Peach) fileName : The video file name contains several key details. It includes the date of the trial, indicating when the experiment was conducted, and "lightDLC" as the project identifier. "mobnet_100" refers to the neural network used for training in DeepLabCut, specifically MobileNet with a width multiplier of 100. "lightProjectRSUSummerJun26" represents the project name. "Shuffle 1" indicates the first shuffle of the dataset during training, while "800000" is the training iteration number. The "labeled.mp4" suffix signifies that this is the labeled video where DeepLabCut has overlaid tracked points onto the original footage. The file also includes "seq1" and "seq2," which correspond to different segments of the same video: seq1 captures the sequence when a plate was placed onto the tube feet for the first time, while seq2 captures for the second time during the same video of the same sea star. ## Overview of plate\_straightness\_data This file contains data mentioned in plate_striaghtness.csv. fileName : The video file name contains several key details. It includes the date of the trial, indicating when the experiment was conducted, and "lightDLC" as the project identifier. "mobnet_100" refers to the neural network used for training in DeepLabCut, specifically MobileNet with a width multiplier of 100. "lightProjectRSUSummerJun26" represents the project name. "Shuffle 1" indicates the first shuffle of the dataset during training, while "800000" is the training iteration number. The "labeled.mp4" suffix signifies that this is the labeled video where DeepLabCut has overlaid tracked points onto the original footage. The file also includes "seq1" and "seq2," which correspond to different segments of the same video: seq1 captures the sequence when a plate was placed onto the tube feet for the first time, while seq2 captures for the second time during the same video of the same sea star. ## Overview for stats\_functions.R, phototaxis\_stats.RmD, phototaxis\_stats.nb.html, stats\_USD.Rmd The coordinates for a study on phototaxis in sea stars. The coordinates for kinematic analysis were acquired with DeepLabCut (DLC), controlled with our own [kinekit](https://github.com/mmchenry/kineKit.git]) project. Our analysis code assumes that the tips of each arm (i.e., ray) of the sea star, as are the 'arm pits' between the arms. The code assumes that these coordinates are accurately acquired by DLC, through does correct for coordinates that jump between the arms. So, if DLC mistakenly switches between arms 2 and 4, the code can handle that. However, it cannot handle if there are jumps between arm pits and arms, or jumps to other items in the video frame. This repository focuses on the analysis that follows, organized in the following steps. 1. **Processing**: Taking the raw coordinates from DLC videos, cleaning the data, and generating parameter metrics of the kinematics. Controlled with runProcessing. ## Data processing Most of the code originated from the geotaxis project, but was refined for the phototaxis project. 1. From 'raw' to 'refined': Vertical axis adjusted, according to whether the recording was made through a mirror. Outlier points replaced by linear interpolation. Data reindexed into a new dataframe. 2. From 'refined' to 'derived': Calculated features, such as the center point and heading. Data organized in a dataframe with each row corresponding to each video frame. Functions for these operations are within anaFunctions. ### Processing code catalog * **runProcessing.py**: Control center for running the processing code. Organized into cells for the major operations in the low-level analysis. This is also where the code is/was developed in interactive mode. * **procFunctions.py**: Holds the principle functions for running the data processing. Functions: * **refine_all**: Loops through all raw DLC coord files and generates refined coord files, using refine_data. Called by runAnalysis. * **refine_data**: Accepts raw DLC coordinate datatable (df_raw) and outputs newly-organized datatable. Called by refine_all. * **find_coord_match**: Used by refine_data to correct DLC's switching of the position of landmarks. * **animate_all**: Makes data animation of all sequences in cat where visualize=1. - **animate_coords**: Used by animate_all to perform an animation on a single sequence. **Versioned changes**: uploaded data files that were mentioned in plate_straightness.csv.