open-mmlab / mmdetection

OpenMMLab Detection Toolbox and Benchmark
https://mmdetection.readthedocs.io
Apache License 2.0
29.12k stars 9.38k forks source link

About the instance segmentation usage of 'large_image_demo.py'. Bug:AssertionError: `binary_marks` must have the same shape with image #10918

Open W-hary opened 1 year ago

W-hary commented 1 year ago

Thanks for your error report and we appreciate it a lot.

Checklist

  1. I have searched related issues but cannot get the expected help.
  2. I have read the FAQ documentation but cannot get the expected help.
  3. The bug has not been fixed in the latest version.

Describe the bug AssertionError: binary_marks must have the same shape with image

Reproduction

python demo/large_image_demo.py demo/large_image.jpg rtmdet-ins_tiny_8xb32-300e_coco.py rtmdet-ins_tiny_8xb32-300e_coco_20221130_151727-ec670f7e.pth --device cpu

A placeholder for the command.
  1. Did you make any modifications on the code or config? Did you understand what you have modified? No modifications have been made
  2. What dataset did you use? COCO

Environment

  1. Please run python mmdet/utils/collect_env.py to collect necessary environment information and paste it here.

sys.platform: linux Python: 3.8.10 (default, Jun 4 2021, 15:09:15) [GCC 7.5.0] CUDA available: True numpy_random_seed: 2147483648 GPU 0: NVIDIA RTX A5000 CUDA_HOME: /usr/local/cuda NVCC: Cuda compilation tools, release 11.3, V11.3.109 GCC: gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0 PyTorch: 1.11.0+cu113 PyTorch compiling details: PyTorch built with:

TorchVision: 0.12.0+cu113 OpenCV: 4.8.0 MMEngine: 0.8.4 MMDetection: 3.1.0+769c810

  1. You may add addition that may be helpful for locating the problem I completely follow the official recommended method to install mmdet_ Dev-3.1.0

Error traceback I ran the following command on 'demo/large_image' and an error occurred: ’python demo/large_image_demo.py demo/large_image.jpg rtmdet-ins_tiny_8xb32-300e_coco.py rtmdet-ins_tiny_8xb32-300e_coco_20221130_151727-ec670f7e.pth --device cpu‘

Loads checkpoint by local backend from path: rtmdet-ins_tiny_8xb32-300e_coco_20221130_151727-ec670f7e.pth /root/miniconda3/lib/python3.8/site-packages/mmengine/visualization/visualizer.py:196: UserWarning: Failed to add <class 'mmengine.visualization.vis_backend.LocalVisBackend'>, please provide the save_dir argument. warnings.warn(f'Failed to add {vis_backend.class}, ' Performing inference on 1 images.... This may take a while. [ ] 0/1, elapsed: 0s, ETA:/root/miniconda3/lib/python3.8/site-packages/torch/functional.py:568: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at ../aten/src/ATen/native/TensorShape.cpp:2228.) return _VF.meshgrid(tensors, kwargs) # type: ignore[attr-defined] /root/autodl-tmp/mmdetection/mmdet/visualization/palette.py:90: UserWarning: floordiv is deprecated, and its behavior will change in a future version of pytorch. It currently rounds toward 0 (like the 'trunc' function NOT 'floor'). This results in incorrect rounding for negative values. To keep the current behavior, use torch.div(a, b, rounding_mode='trunc'), or for actual floor division, use torch.div(a, b, rounding_mode='floor'). scales = 0.5 + (areas - min_area) // (max_area - min_area) Traceback (most recent call last): File "demo/large_image_demo.py", line 282, in main() File "demo/large_image_demo.py", line 264, in main visualizer.add_datasample( File "/root/miniconda3/lib/python3.8/site-packages/mmengine/dist/utils.py", line 401, in wrapper return func(*args, *kwargs) File "/root/autodl-tmp/mmdetection/mmdet/visualization/local_visualizer.py", line 468, in add_datasample pred_img_data = self._draw_instances(image, pred_instances, File "/root/autodl-tmp/mmdetection/mmdet/visualization/local_visualizer.py", line 194, in _draw_instances self.draw_binary_masks(masks, colors=colors, alphas=self.alpha) File "/root/miniconda3/lib/python3.8/site-packages/mmengine/dist/utils.py", line 401, in wrapper return func(args, kwargs) File "/root/miniconda3/lib/python3.8/site-packages/mmengine/visualization/visualizer.py", line 881, in draw_binary_masks assert img.shape[:2] == binary_masks.shape[ AssertionError: binary_marks must have the same shape with image

Whether ‘demo/large_image_demo.py’ can be used for instance splitting tasks?
how can i solve?
56012e3de860d122b8fb79818f3389e
rbli-john commented 1 year ago

I have the same problem. Could anyone fix the issue? thanks.

rbli-john commented 11 months ago

@hhaAndroid Hi, may I ask, do you have any plan to solve this issue? thank.

confusedgreenhand commented 10 months ago

I met the same error

JCRONG96 commented 6 months ago

Yes. The same issue appears using rtmdet, its a bug. Any one fixed it?