Spaces:
Running
on
L40S
Running
on
L40S
import numpy as np | |
import torch | |
from mmcv.ops import box_iou_rotated | |
from mmcv.utils import collect_env | |
def check_installation(): | |
"""Check whether mmcv-full has been installed successfully.""" | |
np_boxes1 = np.asarray( | |
[[1.0, 1.0, 3.0, 4.0, 0.5], [2.0, 2.0, 3.0, 4.0, 0.6], | |
[7.0, 7.0, 8.0, 8.0, 0.4]], | |
dtype=np.float32) | |
np_boxes2 = np.asarray( | |
[[0.0, 2.0, 2.0, 5.0, 0.3], [2.0, 1.0, 3.0, 3.0, 0.5], | |
[5.0, 5.0, 6.0, 7.0, 0.4]], | |
dtype=np.float32) | |
boxes1 = torch.from_numpy(np_boxes1) | |
boxes2 = torch.from_numpy(np_boxes2) | |
# test mmcv-full with CPU ops | |
box_iou_rotated(boxes1, boxes2) | |
print('CPU ops were compiled successfully.') | |
# test mmcv-full with both CPU and CUDA ops | |
if torch.cuda.is_available(): | |
boxes1 = boxes1.cuda() | |
boxes2 = boxes2.cuda() | |
box_iou_rotated(boxes1, boxes2) | |
print('CUDA ops were compiled successfully.') | |
else: | |
print('No CUDA runtime is found, skipping the checking of CUDA ops.') | |
if __name__ == '__main__': | |
print('Start checking the installation of mmcv-full ...') | |
check_installation() | |
print('mmcv-full has been installed successfully.\n') | |
env_info_dict = collect_env() | |
env_info = '\n'.join([(f'{k}: {v}') for k, v in env_info_dict.items()]) | |
dash_line = '-' * 60 + '\n' | |
print('Environment information:') | |
print(dash_line + env_info + '\n' + dash_line) | |