a b/R/create_ct_head_mask.R
1
#' Create CT Head Mask
2
#'
3
#' @param img CT image of class \code{\link{nifti}}
4
#' @param fill_size Size of fill (in voxels),
5
#' passed to \code{\link[extrantsr]{filler}}
6
#'
7
#' @return An object of class \code{\link{nifti}}
8
#' @export
9
create_ct_head_mask = function(img, fill_size = 11) {
10
  img = neurobase::check_nifti(img)
11
  head_mask = img >= -100 & img <= 1000
12
  cc = extrantsr::largest_component(head_mask)
13
  filled = extrantsr::filler(cc, fill_size = fill_size)
14
  return(filled)
15
}
16
17
#' @export
18
#' @rdname create_ct_head_mask
19
segment_ct_head = function(img, fill_size = 11) {
20
  img = neurobase::check_nifti(img)
21
  mask = create_ct_head_mask(img, fill_size = fill_size)
22
  head_img = neurobase::mask_img(img + 1024, mask)
23
  head_img = head_img - 1024
24
  return(img)
25
}