image = np.random.randint(low=0, high=256, size=(100, 100, 3), dtype=np.uint8)
predicted_mask = np.empty((100, 100), dtype=np.uint8)
ground_truth_mask = np.empty((100, 100), dtype=np.uint8)
predicted_mask[:50, :50] = 0
predicted_mask[50:, :50] = 1
predicted_mask[:50, 50:] = 2
predicted_mask[50:, 50:] = 3
ground_truth_mask[:25, :25] = 0
ground_truth_mask[25:, :25] = 1
ground_truth_mask[:25, 25:] = 2
ground_truth_mask[25:, 25:] = 3
class_set = wandb.Classes([
{"name" : "person", "id" : 0},
{"name" : "tree", "id" : 1},
{"name" : "car", "id" : 2},
{"name" : "road", "id" : 3}
masked_image = wandb.Image(image, masks={
"mask_data": predicted_mask,
"class_labels": class_labels
"mask_data": ground_truth_mask,
"class_labels": class_labels
table = wandb.Table(columns=["image"])
table.add_data(masked_image)
wandb.log({"random_field": table})