Package 'furrowSeg'

Title: Furrow Segmentation
Description: Image feature data and analysis codes for the Guglielmi, Barry et al. paper describing the application of an optogenetics tools to disrupt Drosophila embryo furrowing.
Authors: Joseph Barry
Maintainer: Joseph Barry <[email protected]>
License: Artistic-2.0
Version: 1.40.0
Built: 2026-10-10 11:25:13 UTC
Source: https://git.bioconductor.org/packages/furrowSeg

Help Index


Construct Box

Description

Calculates dimensions of box for at a given DV position. Ensures that box does not exceed dimensions of image.

Usage

constructBox(dvPos, Lx=100, Ly=50, w=512, mid=NA)

Arguments

dvPos

Pixel location along DV of box center.

Lx

Half of box width in pixels.

Ly

Half of box height in pixels.

w

Image width in pixels.

mid

Location of midpoint along AP in pixels. If not specified defaults to half of the image width.

Value

A vector with locations of box corners. Nonclemature is 'xleft', 'ybottom', 'xright' and 'ytop'.

Author(s)

Joseph Barry, 2014

Examples

if (interactive()) vignette(topic="genPaperFigures", package="furrowSeg")

Example Furrow Movie

Description

An example movie on which furrowSeg segmention can be performed.

Usage

exampleFurrowMovie

Value

A 4D array.

Examples

data(exampleFurrowMovie, package="furrowSeg")
dim(exampleFurrowMovie)

Identify Furrow Position

Description

Identifies furrowing line by identifying DV position of minimum area.

Usage

identifyFurrowPosition(x, nbinsExclude=3, h=100, plot=FALSE, myCex=1.4, w=512, 
    px=0.293)

Arguments

x

Feature table.

nbinsExclude

Number of pixel columns to exclude at the DV edges of the image.

h

Smoothing bandwidth, passed to locfit.

plot

Logical specifying whether or not to plot data and fit.

myCex

Size of axis labels.

w

Width of image in number of pixels.

px

Pixel dimensions in microns (assumed isotropic).

Value

The pixel index along DV indicating the furrowing position.

Author(s)

Joseph Barry, 2014

Examples

if (interactive()) vignette(topic="genPaperFigures", package="furrowSeg")

Identify Time Point of Tissue Invagination

Description

Identifies time point where the cell areas attain a minimum.

Usage

identifyTimeMinArea(x, h=2, px=0.293, plot=FALSE, myCex=1.4)

Arguments

x

Feature table.

h

Smoothing bandwidth, passed to locfit.

px

Pixel dimensions in microns (assumed isotropic).

plot

Logical specifying whether or not to plot data and fit.

myCex

Size of axis labels.

Value

Returns the time at which the tissue invaginates ('tstar') and the index of the corresponding time point ('tindex').

Author(s)

Joseph Barry, 2014

Examples

if (interactive()) vignette(topic="genPaperFigures", package="furrowSeg")

isOdd

Description

Checks if a number is odd or adds one to make it odd. Useful for constructing filters.

Usage

isOdd(x)
makeOdd(x)

Arguments

x

An integer.

Value

A logical indicating if number is odd or an odd integer.

Author(s)

Joseph Barry, 2014

Examples

isOdd(seq(1:10))

Isolate Box Cells

Description

Subsets feature table to include only cells whose center are in the interior of the specified box dimensions.

Usage

isolateBoxCells(x, box)

Arguments

x

Feature table containing centroid positions as 'x.0.m.cx' and 'x.0.m.cy'.

box

Coordinates of box corners, specified as 'xleft', 'ybottom', 'xright' and 'ytop'.

Value

A subsetted 'x' containing box cells.

Author(s)

Joseph Barry, 2014

Examples

if (interactive()) vignette(topic="genPaperFigures", package="furrowSeg")

Cell Feature Data

Description

Table containing all cell feature data for optogenetically perturbed samples and controls. Contains the following columns:

sample

Unique sample identifier referring to the .rda object from which the image analysis was loaded.

t

Integer index of time point.

z

Integer index of z-stack.

x.0.m.cx

x position (along anterior-posterior axis) of cell center in number of pixel lengths.

x.0.m.cy

y position (along dorsal-ventral axis) of cell center in number of pixel lengths.

x.0.m.majoraxis

Length of major axis of the cell.

x.0.m.theta

Angle between the major axis of the cell and the anterior-posterior axis of the embryo.

x.0.s.area

Area of the cell in number of pixels.

x.0.s.perimeter

Perimeter length of cell in number of pixel lengths.

x.0.s.radius.mean

Mean radius of cell in number of pixel lengths.

x.0.s.radius.max

Maximum radius of cell in number of pixel lengths.

e.x

First component of anisotropy vector. Referred to as AP anisotropy in the paper.

e.y

Second component of anisotropy vector. Referred to as DV anisotropy in the paper.

dt

Time between frames in seconds

px

Side length of a (square) pixel in microns. Note that the z-stack spacing is longer.

condition

Factor identifying which experimental condition cell is associated with.

Usage

opto

Value

A data table.

Examples

data(opto, package="furrowSeg")
head(opto)

Plot Feature Evolution

Description

Plots mean and standard deviation of area and elongation features over time.

Usage

plotFeatureEvolution(x, dt=32.6/60, tMax, myTitle="", cex=1.4, cex.axis=1, 
    px=0.293, mar=c(5.1, 5.1, 4.1, 4.1), legend=TRUE, line=2.5)

Arguments

x

A feature table, as supplied by constructFeatureTable.

dt

Timestep in minutes (numeric).

tMax

Latest time point to plot in minutes (numeric).

myTitle

Plot title (string).

cex

Label size.

cex.axis

See help for par.

px

Pixel width in microns.

mar

See help for par.

legend

A logical. Should figure legend be displayed or not?

line

Determines placement of right-hand axis label. See help for mtext.

Value

Nothing is returned from this function.

Author(s)

Joseph Barry, 2014

Examples

if (interactive()) vignette(topic="genPaperFigures", package="furrowSeg")

px2area

Description

Converts area in pixels to microns squared and vice versa.

Usage

px2area(x, px)
area2px(x, px)

Arguments

x

A vector of numbers.

px

Side-length of a pixel in microns.

Value

A vector of areas in new units.

Author(s)

Joseph Barry, 2014

Examples

# pixels side-length half a micron, square of 10x10 pixels
px2area(x=10*10, px=0.5)

px2microns

Description

Converts length in pixels to microns and vice versa.

Usage

px2microns(x, px)
microns2px(x, px)

Arguments

x

A vector of numbers.

px

Side-length of a pixel in microns.

Value

A vector of lengths in new units.

Author(s)

Joseph Barry, 2014

Examples

# map a contiguous block of 8 pixels to position in microns (here pixel side-length is half a micron)
px2microns(x=seq(1:8), px=0.5)

Table of image names with metadata

Description

Contains names of the images used in study, and assigns them to their respective experimental groupings. The time interval between frames is listed in seconds and the (isotropic) pixel dimensions in microns.

Usage

sampleTable

Value

A data table.

Examples

data(sampleTable, package="furrowSeg")
head(sampleTable)

Cell segmentation of furrow images.

Description

Performs segmentation on furrow images using smoothing, adaptive thresholding and watershed algorithms.

Usage

segmentFurrowAllStacks(x, L=17, filterSize=3, threshOffset=0.001, closingSize=3, 
    minObjectSize=2^5, maxObjectSize=2^10)

Arguments

x

A 4-dimensional image with dimensions x, y, z, t

L

The characterisitc diameter of a cell in pixels.

filterSize

The size of the filter for gaussian smoothing.

threshOffset

The offset value for the adaptive thresholding algorithm that is used to segment cytoplasmic fluorescence signal.

closingSize

The size of the brush that is used to perform a closing operation that smooths the cytoplasmic mask after the adaptive thresholding.

minObjectSize

Determines the threshold below which objects in the cytoplasmic mask are removed.

maxObjectSize

Determines the threshold above which objects in the cytoplasmic mask are removed.

Value

A list with items.

x

A smoothed version of the original image array

mask

Cell masks

hs

An image showing highlighted segmentation of the cell masks

Author(s)

Joseph Barry, 2014

Examples

if (interactive()) vignette(topic="exampleFurrowSegmentation", package="furrowSeg")