Learn R Programming

⚠️There's a newer version (2.12) of this package.Take me there.

Morpho (version 2.1)

Calculations and visualisations related to Geometric Morphometrics

Description

A toolset for Geometric Morphometrics and mesh processing. This includes (among other stuff) mesh deformations based on reference points, permutation tests, detection of outliers, processing of sliding semi-landmarks and semi-automated surface landmark placement.

Copy Link

Version

Install

install.packages('Morpho')

Monthly Downloads

1,495

Version

2.1

License

GPL-2

Issues

Pull Requests

Stars

Forks

Maintainer

Stefan Schlager

Last Published

September 25th, 2014

Functions in Morpho (2.1)

computeTransform

calculate an affine transformation matrix
ray2mesh

projects the vertices of a mesh along its normals onto the surface of another one.
Morpho-package

A toolbox providing methods for data-acquisitiopn, visualisation and statistical methods related to Geometric Morphometrics and shape analysis
CreateL

Create Matrices necessary for Thin-Plate Spline
name2factor

extract data from array names
bindArr

concatenate multiple arrays/matrices
checkLM

Visually browse through a sample rendering its landmarks and corresponding surfaces.
kendalldist

Calculates the Riemannian distance between two superimposed landmark configs.
regdist

correlation between shape space and tangent space
NNshapeReg

Estimate the shape by averaging the shape of the nearest neighbours.
qqmat

Q-Q plot to assess normality of data
arrMean3

calculate mean of an array
fixLMtps

estimate missing landmarks
deformGrid3d

visualise differences between two superimposed sets of 3D landmarks
mergeMeshes

merge multiple triangular meshes into a single one
icpmat

match two landmark configurations using iteratively closest point search
getFaces

find indices of faces that contain specified vertices
covW

calculate the pooled within groups covariance matrix
groupPCA

Perform PCA based of the group means' covariance matrix
conv2backf

invert faces' orientation of triangular mesh
read.csv.folder

batch import data from files
exVar

calculate variance of a distribution stemming from prediction models
mesh2obj

export mesh objects to disk
getTrafoRotaxis

compute a 4x4 Transformation matrix for rotation around an arbitrary axis
closemeshKD

Project coordinates onto a target triangular surface mesh.
meshPlaneIntersect

get intersections between mesh and a plane
meanMat

fast calculation of a Matrix' per row/ per column mean - useful for very large matrices
fixLMmirror

estimate missing landmarks from their bilateral counterparts
ProcGPA

Workhorse function for procSym, responsible for Procrustes registration
boneData

Landmarks and a triangular mesh
procSym

Procrustes registration
cSize

calculate Centroid Size for a landmark configuration
getTrafo4x4

get 4x4 Transformation matrix
PCdist

correlation between a reduced space and the original space
pcAlign

align two pointclouds/meshes by their principal axes
rotaxisMat

calculate a rotation matrix around an arbitrary axis through the origin in 3D
readLandmarks.csv

import landmark data from csv files
colors

predefined colors for bone and skin
deprecated

deprecated functions of Morpho
meshcube

calculate the corners of a mesh's bouning box
retroDeformMesh

symmetrize a triangular mesh
classify

classify specimen based on between-group PCA or CVA
meshDist.matrix

calculates and visualises distances between surface meshes or 3D coordinates and a surface mesh.
mcNNindex

find nearest neighbours for point clouds
asymPermute

Assess differences in amount and direction of asymmetric variation
crossp

calculate the orthogonal complement of a 3D-vector
read.pts

reads pts files
meshres

calculate average edge length of a triangular mesh
typprob

calculate typicality probabilities
permuvec

perfom permutation testing on angles and distances between subgroups of two major groups.
projRead

Project points onto the closest point on a mesh
pcaplot3d

visualization of shape variation
histGroup

plot histogram for multiple groups.
slider3d

slides Semilandmarks along curves and surfaces in 3D by minimising bending energy of a thin-plate spline deformation.
applyTransform

apply affine transformation to data
quad2trimesh

converts a mesh containing quadrangular faces into one only consisting of triangles
pls2B

Two-Block partial least square regression.
covDist

calculates distances and PC-coordinates of covariance matrices
showPC

convert PCs to landmark configuration
CVA

Canonical Variate Analysis
angle.calc

calculate angle between two vectors
proc.weight

calculate weights inverse to the distances from the specified observation.
retroDeform3d

symmetrize a bilateral landmark configuration
read.mpp

Read saved pick-points from meshlab
mesh2grey

convert a colored mesh to greyscale.
procAOVsym

Procrustes ANOVA for structures with object symmetry
warp.mesh

warping a mesh onto another configuration
r2morphoj

Export data to MorphoJ and Morphologika
find.outliers

Graphical interface to find outliers and/or to switch mislabeld landmarks
nose

landmarks and a triangular mesh representing a human nose
warpmovie3d

Creates a sequence of images showing predefined steps of warping two meshes or landmark configurations (2D and 3D) into each other
relWarps

calculate relative Warp analysis
render.matrixDist

plot or save the results of meshDist
rotonto

rotates, translates and scales one matrix onto an other using Procrustes fitting
write.pts

exports a matrix containing landmarks into .pts format
rotonmat

rotate matrix of landmarks
updateNormals

Compute face or vertex normals of a triangular mesh
predictShape.lm

Predict shapes based on linear models calculated from PCscores
vecx

convert an 3D array into a matrix and back
scalemesh

scale a mesh of class "mesh3d"
solutionSpace

returns the solution space (basis and translation vector) for an equation system
anonymize

Replace ID-strings of data and associated files.
cutMeshPlane

cut a mesh by a hyperplane and remove parts above/below that plane
createAtlas

Create an atlas needed in placePatch
file2mesh

Import 3D surface mesh files
barycenter

calculates the barycenters for all faces of a triangular mesh
plotNormals

plots the normals of a triangular surface mesh.
cExtract

extract information about fixed landmarks, curves and patches from and atlas generated by "landmark"
relaxLM

relax one specific landmark configuration against a reference
lineplot

plot lines between landmarks
rotmesh.onto

rotate ,scale and translate a mesh based on landmark information.
unrefVertex

some little helpers for vertex operations on triangular meshes
mirror

mirror landmarks or triangular mesh in place
placePatch

Project semi-landmarks from a predefined atlas onto all specimen in a sample
RegScore

calulate regression scores for linear model
permudist

performs permutation testing for group differences.
read.lmdta

read dta files
readallTPS

Import landmarks and outlines from TPS files
rotaxis3d

Rotate an object (matrix or mesh) around an arbitrary axis in 3D
tps3d

thin plate spline mapping
CAC

calculate common allometric component
cutSpace

separate a 3D-pointcloud by a hyperplane
plotAtlas

visualize an atlas defined by createAtlas