Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] 'KeypointPartitionMetric' could't function properly #3001

Open
2 tasks done
wisematch opened this issue Mar 27, 2024 · 0 comments
Open
2 tasks done

[Bug] 'KeypointPartitionMetric' could't function properly #3001

wisematch opened this issue Mar 27, 2024 · 0 comments
Assignees

Comments

@wisematch
Copy link

wisematch commented Mar 27, 2024

Prerequisite

Environment

OrderedDict([('sys.platform', 'linux'), ('Python', '3.8.19 (default, Mar 20 2024, 19:58:24) [GCC 11.2.0]'), ('CUDA available', True), ('MUSA available', False), ('numpy_random_seed', 2147483648), ('GPU 0,1,2,3,4,5', 'NVIDIA GeForce RTX 4090'), ('CUDA_HOME', '/usr/local/cuda-12.1'), ('NVCC', 'Cuda compilation tools, release 12.1, V12.1.66'), ('GCC', 'gcc (GCC) 12.1.0'), ('PyTorch', '2.1.0+cu121'), ('PyTorch compiling details', 'PyTorch built with:\n - GCC 9.3\n - C++ Version: 201703\n - Intel(R) oneAPI Math Kernel Library Version 2022.2-Product Build 20220804 for Intel(R) 64 architecture applications\n - Intel(R) MKL-DNN v3.1.1 (Git Hash 64f6bcbcbab628e96f33a62c3e975f8535a7bde4)\n - OpenMP 201511 (a.k.a. OpenMP 4.5)\n - LAPACK is enabled (usually provided by MKL)\n - NNPACK is enabled\n - CPU capability usage: AVX2\n - CUDA Runtime 12.1\n - NVCC architecture flags: -gencode;arch=compute_50,code=sm_50;-gencode;arch=compute_60,code=sm_60;-gencode;arch=compute_70,code=sm_70;-gencode;arch=compute_75,code=sm_75;-gencode;arch=compute_80,code=sm_80;-gencode;arch=compute_86,code=sm_86;-gencode;arch=compute_90,code=sm_90\n - CuDNN 8.9.2\n - Magma 2.6.1\n - Build settings: BLAS_INFO=mkl, BUILD_TYPE=Release, CUDA_VERSION=12.1, CUDNN_VERSION=8.9.2, CXX_COMPILER=/opt/rh/devtoolset-9/root/usr/bin/c++, CXX_FLAGS= -D_GLIBCXX_USE_CXX11_ABI=0 -fabi-version=11 -fvisibility-inlines-hidden -DUSE_PTHREADPOOL -DNDEBUG -DUSE_KINETO -DLIBKINETO_NOROCTRACER -DUSE_FBGEMM -DUSE_QNNPACK -DUSE_PYTORCH_QNNPACK -DUSE_XNNPACK -DSYMBOLICATE_MOBILE_DEBUG_HANDLE -O2 -fPIC -Wall -Wextra -Werror=return-type -Werror=non-virtual-dtor -Werror=bool-operation -Wnarrowing -Wno-missing-field-initializers -Wno-type-limits -Wno-array-bounds -Wno-unknown-pragmas -Wno-unused-parameter -Wno-unused-function -Wno-unused-result -Wno-strict-overflow -Wno-strict-aliasing -Wno-stringop-overflow -Wno-psabi -Wno-error=pedantic -Wno-error=old-style-cast -Wno-invalid-partial-specialization -Wno-unused-private-field -Wno-aligned-allocation-unavailable -Wno-missing-braces -fdiagnostics-color=always -faligned-new -Wno-unused-but-set-variable -Wno-maybe-uninitialized -fno-math-errno -fno-trapping-math -Werror=format -Werror=cast-function-type -Wno-stringop-overflow, LAPACK_INFO=mkl, PERF_WITH_AVX=1, PERF_WITH_AVX2=1, PERF_WITH_AVX512=1, TORCH_DISABLE_GPU_ASSERTS=ON, TORCH_VERSION=2.1.0, USE_CUDA=ON, USE_CUDNN=ON, USE_EXCEPTION_PTR=1, USE_GFLAGS=OFF, USE_GLOG=OFF, USE_MKL=ON, USE_MKLDNN=ON, USE_MPI=OFF, USE_NCCL=1, USE_NNPACK=ON, USE_OPENMP=ON, USE_ROCM=OFF, \n'), ('TorchVision', '0.16.0+cu121'), ('OpenCV', '4.9.0'), ('MMEngine', '0.10.3'), ('MMPose', '1.3.1+')])

mmcv 2.1.0
mmdet 3.3.0 /data2/zhang/mmdetection
mmengine 0.10.3
mmpose 1.3.1 /data2/zhang/mmpose

Reproduces the problem - code sample

val_evaluator = dict(type='KeypointPartitionMetric',
                     metric=dict(type='CocoMetric',),
                     partitions=dict(face=range(5),
                         all=range(16),
                         ))

Reproduces the problem - command or script

python ./tools/train.py projects/sub_dekr/configs/dekr_hrnet-w32_8xb10-140e_coco-512x512.py

Reproduces the problem - error message

File "/data2/zhang/mmpose/tools/train.py", line 162, in <module>
    main()
  File "/data2/zhang/mmpose/tools/train.py", line 158, in main
    runner.train()
  File "/home/zhang/miniconda3/envs/transpose/lib/python3.8/site-packages/mmengine/runner/runner.py", line 1777, in train
    model = self.train_loop.run()  # type: ignore
  File "/home/zhang/miniconda3/envs/transpose/lib/python3.8/site-packages/mmengine/runner/loops.py", line 102, in run
    self.runner.val_loop.run()
  File "/home/zhang/miniconda3/envs/transpose/lib/python3.8/site-packages/mmengine/runner/loops.py", line 374, in run
    metrics = self.evaluator.evaluate(len(self.dataloader.dataset))
  File "/home/zhang/miniconda3/envs/transpose/lib/python3.8/site-packages/mmengine/evaluator/evaluator.py", line 79, in evaluate
    _results = metric.evaluate(size)
  File "/data2/zhang/mmpose/mmpose/evaluation/metrics/keypoint_partition_metric.py", line 198, in evaluate
    _eval_results = metric.evaluate(size)
  File "/home/zhang/miniconda3/envs/transpose/lib/python3.8/site-packages/mmengine/evaluator/metric.py", line 133, in evaluate
    _metrics = self.compute_metrics(results)  # type: ignore
  File "/data2/zhang/mmpose/mmpose/evaluation/metrics/coco_metric.py", line 499, in compute_metrics
    info_str = self._do_python_keypoint_eval(outfile_prefix)
  File "/data2/zhang/mmpose/mmpose/evaluation/metrics/coco_metric.py", line 566, in _do_python_keypoint_eval
    coco_eval.evaluate()
  File "/home/zhang/miniconda3/envs/transpose/lib/python3.8/site-packages/xtcocotools/cocoeval.py", line 257, in evaluate
    self.ious = {(imgId, catId): computeIoU(imgId, catId) \
  File "/home/zhang/miniconda3/envs/transpose/lib/python3.8/site-packages/xtcocotools/cocoeval.py", line 257, in <dictcomp>
    self.ious = {(imgId, catId): computeIoU(imgId, catId) \
  File "/home/zhang/miniconda3/envs/transpose/lib/python3.8/site-packages/xtcocotools/cocoeval.py", line 373, in computeOks
    dx = xd - xg
ValueError: operands could not be broadcast together with shapes (5,) (17,)

Additional information

I tried to use the 'KeypointPartitionMetric' in DEKR on COCO dataset (with config dekr_hrnet-w32_8xb10-140e_coco-512x512.py), the program keep report Error: 'ValueError: operands could not be broadcast together with shapes (5,) (17,)', in which 17 is the number of keypoints in COCO and 5 is the length for the first partition 'face'.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants