Creates a logical array from an antsImage object

coerce_mask(x, error = TRUE)

Arguments

x

antsImage object

error

should the function error if the mask as not binary?

Value

Array, logical if all values within 0, 1, NA, and NaN

Examples

img <- makeImage(c(10, 10), rnorm(100))
mask <- img > 0
coerce_mask(mask, error = TRUE)
#>        [,1]  [,2]  [,3]  [,4]  [,5]  [,6]  [,7]  [,8]  [,9] [,10]
#>  [1,]  TRUE  TRUE  TRUE  TRUE  TRUE FALSE  TRUE  TRUE  TRUE  TRUE
#>  [2,] FALSE  TRUE  TRUE  TRUE FALSE FALSE  TRUE  TRUE FALSE  TRUE
#>  [3,]  TRUE  TRUE  TRUE FALSE  TRUE FALSE  TRUE  TRUE  TRUE  TRUE
#>  [4,] FALSE  TRUE  TRUE FALSE FALSE  TRUE FALSE FALSE FALSE  TRUE
#>  [5,] FALSE  TRUE  TRUE  TRUE FALSE  TRUE FALSE  TRUE FALSE  TRUE
#>  [6,] FALSE FALSE FALSE  TRUE  TRUE FALSE FALSE FALSE  TRUE  TRUE
#>  [7,]  TRUE FALSE FALSE FALSE  TRUE  TRUE  TRUE FALSE  TRUE  TRUE
#>  [8,] FALSE FALSE FALSE  TRUE FALSE FALSE FALSE  TRUE FALSE FALSE
#>  [9,]  TRUE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE FALSE  TRUE
#> [10,] FALSE FALSE  TRUE  TRUE FALSE  TRUE  TRUE FALSE  TRUE FALSE
coerce_mask(mask + 1, error = FALSE)
#>       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
#>  [1,]    2    2    2    2    2    1    2    2    2     2
#>  [2,]    1    2    2    2    1    1    2    2    1     2
#>  [3,]    2    2    2    1    2    1    2    2    2     2
#>  [4,]    1    2    2    1    1    2    1    1    1     2
#>  [5,]    1    2    2    2    1    2    1    2    1     2
#>  [6,]    1    1    1    2    2    1    1    1    2     2
#>  [7,]    2    1    1    1    2    2    2    1    2     2
#>  [8,]    1    1    1    2    1    1    1    2    1     1
#>  [9,]    2    1    1    2    1    1    1    1    1     2
#> [10,]    1    1    2    2    1    2    2    1    2     1
testthat::expect_error(coerce_mask(mask + 1, error = TRUE))
coerce_mask(as.array(mask) > 0, error = FALSE)
#>        [,1]  [,2]  [,3]  [,4]  [,5]  [,6]  [,7]  [,8]  [,9] [,10]
#>  [1,]  TRUE  TRUE  TRUE  TRUE  TRUE FALSE  TRUE  TRUE  TRUE  TRUE
#>  [2,] FALSE  TRUE  TRUE  TRUE FALSE FALSE  TRUE  TRUE FALSE  TRUE
#>  [3,]  TRUE  TRUE  TRUE FALSE  TRUE FALSE  TRUE  TRUE  TRUE  TRUE
#>  [4,] FALSE  TRUE  TRUE FALSE FALSE  TRUE FALSE FALSE FALSE  TRUE
#>  [5,] FALSE  TRUE  TRUE  TRUE FALSE  TRUE FALSE  TRUE FALSE  TRUE
#>  [6,] FALSE FALSE FALSE  TRUE  TRUE FALSE FALSE FALSE  TRUE  TRUE
#>  [7,]  TRUE FALSE FALSE FALSE  TRUE  TRUE  TRUE FALSE  TRUE  TRUE
#>  [8,] FALSE FALSE FALSE  TRUE FALSE FALSE FALSE  TRUE FALSE FALSE
#>  [9,]  TRUE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE FALSE  TRUE
#> [10,] FALSE FALSE  TRUE  TRUE FALSE  TRUE  TRUE FALSE  TRUE FALSE