-
Notifications
You must be signed in to change notification settings - Fork 30
/
Copy pathtile.py
executable file
·45 lines (31 loc) · 954 Bytes
/
tile.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#!/usr/bin/env python
import matplotlib.pyplot as plt
import imgviz
def tile():
data = imgviz.data.arc2017()
rgb = data["rgb"]
bboxes = data["bboxes"].astype(int)
masks = data["masks"] == 1
crops = []
for bbox, mask in zip(bboxes, masks):
slice_ = slice(bbox[0], bbox[2]), slice(bbox[1], bbox[3])
rgb_crop = rgb[slice_]
mask_crop = mask[slice_]
crops.append(rgb_crop * mask_crop[:, :, None])
tiled = imgviz.tile(imgs=crops, border=(255, 255, 255))
# -------------------------------------------------------------------------
plt.figure(dpi=200)
plt.subplot(121)
plt.title("original")
plt.imshow(rgb)
plt.axis("off")
plt.subplot(122)
plt.title("instances")
plt.imshow(tiled)
plt.axis("off")
img = imgviz.io.pyplot_to_numpy()
plt.close()
return img
if __name__ == "__main__":
from base import run_example
run_example(tile)