getNeighborhoodAtVoxel: Get a hypercube neighborhood at a voxel

View source: R/getNeighborhood.R

getNeighborhoodAtVoxelR Documentation

Get a hypercube neighborhood at a voxel

Description

Get the values in a local neighborhood of an antsImage.

Usage

getNeighborhoodAtVoxel(image, center, kernel, physical.coordinates = FALSE)

Arguments

image

Image object of S4 class antsImage to get values from.

center

array of indices for neighborhood center

kernel

either an array of values for neighborhood radius (in voxels) or a binary array of the same dimension as the image, specifying the shape of the neighborhood to extract

physical.coordinates

a logical indicating if voxel indices and offsets should be in voxel or physical coordinates

Value

a list

  • valuesnumeric vector of values

  • indicesmatrix providing the coordinates for each value

Author(s)

Duda JT

Examples

img <- makeImage(c(10, 10), rnorm(100))
center <- dim(img) / 2
radius <- rep(3, 2)
nhlist <- getNeighborhoodAtVoxel(img, center, radius)
kernel <- 1 * (rnorm(49) > 0)
dim(kernel) <- c(7, 7)
randlist <- getNeighborhoodAtVoxel(img, center, kernel)
randlist <- getNeighborhoodAtVoxel(img, center, kernel,
  physical.coordinates = TRUE
)
arr <- as.array(img)
testthat::expect_error(getNeighborhoodAtVoxel(arr, center, kernel), "class")
testthat::expect_error(
  getNeighborhoodAtVoxel(img, as.character(center), kernel),
  "center must be"
)
testthat::expect_error(
  getNeighborhoodAtVoxel(img, center, c(radius, 3)),
  "kernel must have same"
)


stnava/ANTsR documentation built on April 16, 2024, 12:17 a.m.