def test_crop_mask(): rng = np.random.RandomState(42) mask = np.zeros((3, 4, 5), dtype=np.bool) box = mask[:2, :3, :4] box[rng.rand(*box.shape) < 3.] = 1 # mask covers 30% of brain idx = np.where(mask) assert_true(idx[1].max() < 3) tight_mask = _crop_mask(mask) assert_equal(mask.sum(), tight_mask.sum()) assert_true(np.prod(tight_mask.shape) <= np.prod(box.shape))
def test_crop_mask_empty_mask(): with pytest.raises(ValueError, match="Empty mask:."): _crop_mask(np.array([])) with pytest.raises(ValueError, match="Empty mask:"): _crop_mask(np.zeros((2, 2, 2)))