From c869c9fd5d370fd4f90902b4124d9d974ebc41da Mon Sep 17 00:00:00 2001 From: Harshit Kumar Date: Tue, 15 Oct 2019 00:40:47 -0700 Subject: [PATCH] Fix transparency parameter and window size (#68) Summary: * Fixed missing alpha in instance masks of panoptic segmentation output *(When changing alpha in demo/demo.py, the instance masks' alpha doesn't change otherwise)* * Add namedWindow to handle the overlage window size Pull Request resolved: https://github.com/facebookresearch/detectron2/pull/68 Differential Revision: D17926546 Pulled By: ppwwyyxx fbshipit-source-id: 0ed302c9e6f662bb0bb90d667dbe0cbde8db845e --- demo/demo.py | 10 ++++++++-- detectron2/utils/visualizer.py | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/demo/demo.py b/demo/demo.py index d4b040f67d..fb6c057ea6 100644 --- a/demo/demo.py +++ b/demo/demo.py @@ -13,6 +13,9 @@ from predictor import VisualizationDemo +# constants +WINDOW_NAME = "COCO detections" + def setup_cfg(args): # load config from file and command-line arguments @@ -92,14 +95,16 @@ def get_parser(): out_filename = args.output visualized_output.save(out_filename) else: - cv2.imshow("COCO detections", visualized_output.get_image()[:, :, ::-1]) + cv2.namedWindow(WINDOW_NAME, cv2.WINDOW_NORMAL) + cv2.imshow(WINDOW_NAME, visualized_output.get_image()[:, :, ::-1]) if cv2.waitKey(0) == 27: break # esc to quit elif args.webcam: assert args.input is None, "Cannot have both --input and --webcam!" cam = cv2.VideoCapture(0) for vis in tqdm.tqdm(demo.run_on_video(cam)): - cv2.imshow("COCO detections", vis) + cv2.namedWindow(WINDOW_NAME, cv2.WINDOW_NORMAL) + cv2.imshow(WINDOW_NAME, vis) if cv2.waitKey(1) == 27: break # esc to quit cv2.destroyAllWindows() @@ -132,6 +137,7 @@ def get_parser(): if args.output: output_file.write(vis_frame) else: + cv2.namedWindow(basename, cv2.WINDOW_NORMAL) cv2.imshow(basename, vis_frame) if cv2.waitKey(1) == 27: break # esc to quit diff --git a/detectron2/utils/visualizer.py b/detectron2/utils/visualizer.py index 512e436a23..065e8c879f 100644 --- a/detectron2/utils/visualizer.py +++ b/detectron2/utils/visualizer.py @@ -447,7 +447,7 @@ def draw_panoptic_seg_predictions( colors = [random_color(rgb=True, maximum=1) for k in category_ids] except AttributeError: colors = None - self.overlay_instances(masks=masks, labels=labels, assigned_colors=colors) + self.overlay_instances(masks=masks, labels=labels, assigned_colors=colors, alpha=alpha) return self.output