Miscellaneous convenience/wrapper functions around geometric morphometric analyses of 2D and 3D face data. A brief intro to working with 2D face data can be found here; there are also tutorials on how to calculate averageness, asymmetry and sexual dimorphism from 2D face images. For an overview of all currently implemented functions, see here.
This package is being developed with financial support from ERC grant #647910 KINSHIP awarded to Lisa DeBruine.
Last update: 2021-03-15
You can install the development version of facefuns
from
GitHub with:
# install.packages("devtools")
devtools::install_github("iholzleitner/facefuns")
If you get a 404 error, try:
devtools::install_github("iholzleitner/facefuns", ref = "main")
We are committed to ethical face research. This means:
-
Make sure that the use of face photographs respects participant consent and personal data privacy. Images that are “freely” available on the internet are a grey area and the ethical issues should be carefully considered and approved by the relevant ethics board.
-
Do not use face images in research where there is a possibility of real-world consequences for the pictured individuals. For example, do not post identifiable images of real people on real dating sites without the explicit consent of the pictured individuals for that specific research.
-
We will never support the use of face image analysis to predict behaviour, or for automatic screening. For example, face images cannot be used to predict criminality or decide who should proceed to the interview stage in a job application. This type of application is unethical because the predictive data is always biased. Face image analysis is useful for researching what aspects of face images give rise to the perception of traits like trustworthiness, but should not be confused with the ability to detect actual behaviour.
The development of facefuns
is support by ERC grant #647910 KINSHIP
awarded to Lisa DeBruine.
Many of the functions in this package are tweaks on existing functions written by others, and for some functions code has been adopted verbatim.
-
geomorph
: Many functions in this package either usegeomorph
functions, or use code adapted fromgeomorph
, which is licensed under GPL-3.
Adams, D. C., Collyer, M. L. & Kaliontzopoulou, A. (2019) Geomorph: Software for geometric morphometric analyses. R package version 3.1.0. https://cran.r-project.org/package=geomorph -
Select PCs using Broken Stick criterion: adapted from
evplot
by Francois Gillet http://adn.biol.umontreal.ca/~numericalecology/numecolR/ (from material for first edition, GPL-2) -
Re-create 3D mesh from point cloud: adapted from
nat::as.mesh3d.ashape3d
Jefferis, G. S. X. E. & Manton, J. D. (2014). NeuroAnatomy Toolbox v1.5.2. ZENODO. https://doi.org/10.5281/zenodo.10171 -
Flat violin plots: by Ben Marwick
https://gist.githubusercontent.com/benmarwick/2a1bb0133ff568cbe28d/ -
Split violin plots: by StackOverflow user jan-glx
https://stackoverflow.com/questions/35717353/split-violin-plot-with-ggplot/