\name{zernikeMoments} \alias{zernikeMoments} \concept{feature extraction} \title{ Extraction of Zernike moments from image objects.} \description{ Computation of Zernike moment features from image objects. } \usage{ zernikeMoments(x, ref, N = 12, R = 30) } \arguments{ \item{x}{An \code{Image} object or an array containing object masks. Object masks are sets of pixels with the same unique integer value.} \item{ref}{An \code{Image} object or an array, containing the intensity values of the objects.} \item{N}{A numeric. Indicates the maximal order of Zernike polynomials to be computed. Default value is 12.} \item{R}{A numeric. Defines the radius of the circle in pixels around object centers from which the features are calculated.} } \value{ Returns a matrix (or a list of matrices if \code{x} contains multiple frames) of features computed of the objects present in \code{x} and using the intensity values of \code{ref}. } \details{ Zernike features are computed by projecting image objects on the Zernike complex polynomials, using: \code{z.{nl} = (n+1) / pi * abs( sum_x,y(V*nl(x,y) * i(x,y)) )}, where \code{0 <= l <= n, n - l} is even and \code{i(x,y)} is the intensity of the reference image at the coordinates \code{(x,y)} that fall withing a circle of radius \code{R} from the object's centre. Coordinates are taken relative to the object's centre. \code{V*nl} is a complex conjugate of a Zernike polynomial of degree \code{n} and angular dependence \code{l}: \code{Vnl(x,y) = Qnl(x,y) * exp(j*l*theta)}, where \code{j = sqrt(-1), theta=atan2(y,x)}, and \code{Qnl(x,y) = sum[_m=0^((n-l)/2)] ((-1)^m * (n-m)! * r^(n-2*m)) / (m! * ((n-2*m+l)/2)! * ((n-2*m-l)/2)!) }, where \code{r = sqrt(x^2+y^2)}. } \references{ F. Zernike. \emph{Beugungstheorie des Schneidenverfahrens und seiner verbesserten Form, der Phasenkontrastmethode (Diffraction theory of the cut procedure and its improved form, the phase contrast method)}. Physica, 1:pp. 689-704, 1934. Jamie Shutler, \emph{Complex Zernike Moments}: \url{http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/SHUTLER3/node11.html} } \seealso{\code{\link{getFeatures}} } \author{ Oleg Sklyar, \email{osklyar@ebi.ac.uk}; Mike Smith, \email{msmith@ebi.ac.uk}, 2007 } \examples{ example(getFeatures) } \keyword{manip}