|
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 |
} |