def test_main(self):
# set up
mask = np.asarray([
[0, 0, 0, 1, 1],
[0, 0, 0, 1, 0],
[0, 1, 1, 1, 1],
[0, 0, 0, 0, 0]
])
mask2 = np.ones((4, 5))
masks = np.array([mask])
# test area
assert area(encode(mask)) == 7
assert area(encode(masks)[0]) == 7
assert np.array_equal(decode(encode(mask)), mask)
# test iou
assert isinstance(iou(encode(masks), encode(masks), [0]), np.ndarray)
assert iou(encode(mask), encode(mask), [0]) == 1
assert equal(iou(encode(np.array([mask, mask])), encode(mask2), [0]), 7.0/20).all()
# test toBbox
assert isinstance(toBbox(masks), np.ndarray)
assert np.equal(toBbox(encode(mask)), np.array([1, 0, 4, 3])).all()
assert np.equal(toBbox(encode(mask2)), np.array([0, 0, 5, 4])).all()
评论列表
文章目录