def test_rle_mask(self): rle_data = random_rle_encoding() dense = rl.rle_to_dense(rle_data) mask = np.random.uniform(size=dense.shape) > 0.8 expected = dense[mask] actual = tuple(rl.rle_mask(rle_data, mask)) np.testing.assert_equal(actual, expected)
def test_brle_to_rle(self): brle_data = random_brle_encoding() brle_dense = rl.brle_to_dense(brle_data) rle_data = rl.brle_to_rle(brle_data) rle_dense = rl.rle_to_dense(rle_data) np.testing.assert_equal(brle_dense, rle_dense) np.testing.assert_equal(rl.brle_to_rle([0, 5, 2, 0]), [1, 5, 0, 2])
def test_rle_encode_decode(self): small = np.array([3] * 500 + [5] * 1000 + [2], dtype=np.uint8) rand = (np.random.uniform(size=(10000, )) > 0.05).astype(np.uint8) for original in [small, rand]: for dtype in [np.uint8, np.int64]: enc = rl.dense_to_rle(original, dtype=dtype) dec = rl.rle_to_dense(enc) np.testing.assert_equal(original, dec)
def test_rle_to_dense(self): np.testing.assert_equal(rl.rle_to_dense([5, 3, 4, 10]), [5] * 3 + [4] * 10) np.testing.assert_equal(rl.rle_to_dense([5, 300, 4, 100]), [5] * 300 + [4] * 100)