Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
mask = label == label_i
if 1.0 * mask.sum() / mask.size < thresh_suppress:
continue
y, x = np.array(_center_of_mass(mask), dtype=int)
if label[y, x] != label_i:
Y, X = np.where(mask)
point_index = np.random.randint(0, len(Y))
y, x = Y[point_index], X[point_index]
text = label_names[label_i]
height, width = draw_module.text_size(
text, size=font_size, font_path=font_path
)
color = color_module.get_fg_color(res[y, x])
res = draw_module.text(
res,
yx=(y - height // 2, x - width // 2),
text=text,
color=color,
size=font_size,
font_path=font_path,
)
elif loc in ["rb", "lt"]:
text_sizes = np.array(
[
draw_module.text_size(
label_names[l], font_size, font_path=font_path
)
for l in unique_labels
]
)
return res
if loc == "centroid":
for label_i in unique_labels:
mask = label == label_i
if 1.0 * mask.sum() / mask.size < thresh_suppress:
continue
y, x = np.array(_center_of_mass(mask), dtype=int)
if label[y, x] != label_i:
Y, X = np.where(mask)
point_index = np.random.randint(0, len(Y))
y, x = Y[point_index], X[point_index]
text = label_names[label_i]
height, width = draw_module.text_size(
text, size=font_size, font_path=font_path
)
color = color_module.get_fg_color(res[y, x])
res = draw_module.text(
res,
yx=(y - height // 2, x - width // 2),
text=text,
color=color,
size=font_size,
font_path=font_path,
)
elif loc in ["rb", "lt"]:
text_sizes = np.array(
[
draw_module.text_size(
label_names[l], font_size, font_path=font_path
for label_i in unique_labels:
mask = label == label_i
if 1.0 * mask.sum() / mask.size < thresh_suppress:
continue
y, x = np.array(_center_of_mass(mask), dtype=int)
if label[y, x] != label_i:
Y, X = np.where(mask)
point_index = np.random.randint(0, len(Y))
y, x = Y[point_index], X[point_index]
text = label_names[label_i]
height, width = draw_module.text_size(
text, size=font_size, font_path=font_path
)
color = color_module.get_fg_color(res[y, x])
res = draw_module.text(
res,
yx=(y - height // 2, x - width // 2),
text=text,
color=color,
size=font_size,
font_path=font_path,
)
elif loc in ["rb", "lt"]:
text_sizes = np.array(
[
draw_module.text_size(
label_names[l], font_size, font_path=font_path
)
for l in unique_labels
]
def test_label2rgb():
data = imgviz.data.arc2017()
H, W = data["class_label"].shape[:2]
labelviz = imgviz.label2rgb(label=data["class_label"])
assert labelviz.dtype == np.uint8
assert labelviz.shape == (H, W, 3)
labelviz = imgviz.label2rgb(label=data["class_label"], img=data["rgb"])
assert labelviz.dtype == np.uint8
assert labelviz.shape == (H, W, 3)
labelviz = imgviz.label2rgb(
label=data["class_label"],
img=data["rgb"],
label_names=data["class_names"],
)
assert labelviz.dtype == np.uint8
assert labelviz.shape == (H, W, 3)
def test_label2rgb():
data = imgviz.data.arc2017()
H, W = data["class_label"].shape[:2]
labelviz = imgviz.label2rgb(label=data["class_label"])
assert labelviz.dtype == np.uint8
assert labelviz.shape == (H, W, 3)
labelviz = imgviz.label2rgb(label=data["class_label"], img=data["rgb"])
assert labelviz.dtype == np.uint8
assert labelviz.shape == (H, W, 3)
labelviz = imgviz.label2rgb(
label=data["class_label"],
img=data["rgb"],
label_names=data["class_names"],
)
assert labelviz.dtype == np.uint8
assert labelviz.shape == (H, W, 3)
def test_label2rgb():
data = imgviz.data.arc2017()
H, W = data["class_label"].shape[:2]
labelviz = imgviz.label2rgb(label=data["class_label"])
assert labelviz.dtype == np.uint8
assert labelviz.shape == (H, W, 3)
labelviz = imgviz.label2rgb(label=data["class_label"], img=data["rgb"])
assert labelviz.dtype == np.uint8
assert labelviz.shape == (H, W, 3)
labelviz = imgviz.label2rgb(
label=data["class_label"],
img=data["rgb"],
label_names=data["class_names"],
)
assert labelviz.dtype == np.uint8
def test_pyplot():
backend = plt.get_backend()
plt.switch_backend("agg")
x = y = [0, 1, 2]
plt.plot(x, y)
plt.switch_backend(backend)
img = imgviz.io.pyplot_to_numpy()
assert isinstance(img, np.ndarray)
assert img.ndim == 3
def test_flow2rgb():
data = imgviz.data.middlebury()
flow = data["flow"]
flowviz = imgviz.flow2rgb(flow)
assert flowviz.dtype == np.uint8
H, W = flow.shape[:2]
assert flowviz.shape == (H, W, 3)
def test_depth2rgb():
data = imgviz.data.arc2017()
depthviz = imgviz.depth2rgb(data["depth"])
assert depthviz.dtype == np.uint8
H, W = data["depth"].shape[:2]
assert depthviz.shape == (H, W, 3)
def test_rectangle():
img = np.full((100, 100, 3), 255, dtype=np.uint8)
res = imgviz.draw.rectangle(img, (0, 0), (50, 50), outline=(0, 0, 0))
assert res.shape == img.shape
assert res.dtype == img.dtype