R/createJacobianDeterminantImage.R

Defines functions createJacobianDeterminantImage

Documented in createJacobianDeterminantImage

#' createJacobianDeterminantImage
#'
#' Compute the jacobian determinant from a transformation file
#'
#' @param domainImg image that defines transformation domain
#' @param tx deformation transformation file name
#' @param doLog return the log jacobian
#' @param geom use the geometric jacobian calculation (boolean)
#' @return jacobianImage
#' @author BB Avants
#' @examples
#' fi<-antsImageRead( getANTsRData("r16") ,2)
#' mi<-antsImageRead( getANTsRData("r64") ,2)
#' fi<-resampleImage(fi,c(128,128),1,0)
#' mi<-resampleImage(mi,c(128,128),1,0)
#' mytx<-antsRegistration(fixed=fi , moving=mi, typeofTransform = c("SyN") )
#' jac<-createJacobianDeterminantImage(fi,mytx$fwdtransforms[[1]],1)
#' # plot(jac)
#' @export createJacobianDeterminantImage
createJacobianDeterminantImage <- function(
  domainImg,
  tx,
  doLog = FALSE,
  geom = FALSE
  ) {
  dim<-domainImg@dimension
  if ( class( tx ) == "antsImage" ) {
    txuse = tempfile( fileext = c(".nii.gz") )
    antsImageWrite( tx, txuse )
    } else txuse = tx

  outimg <- .Call("createJacobianDeterminantImageR",
      antsImageClone( domainImg ), txuse,
      as.numeric( doLog ),
      as.numeric( geom ),
      PACKAGE = "ANTsR")
  return( outimg )
}
neuroconductor/ANTsR documentation built on Oct. 11, 2020, 8:14 a.m.