def __call__(self, results): if self.visualize['flag']: img = results['img'].astype(np.uint8) boundary_key = self.visualize['boundary_key'] if boundary_key is not None: img = overlay_mask_img(img, results[boundary_key].masks[0]) features = [img] names = ['img'] to_uint8 = [1] for k in results['mask_fields']: for iter in range(len(results[k].masks)): features.append(results[k].masks[iter]) names.append(k + str(iter)) to_uint8.append(0) show_feature(features, names, to_uint8) if self.call_super: results = super().__call__(results) for k in self.keys: results[k] = DC(results[k], cpu_only=True) return results
def test_overlay_mask_img(mock_drawContours): img = np.random.rand(10, 10) mask = np.zeros((10, 10)) visualize_utils.overlay_mask_img(img, mask) mock_drawContours.assert_called_once()