环境安装
我的环境
python3.7
torch1.2.0 cuda9.2
torchvision0.4.0
cudatoolkit9.2
cudnn7.6.5
mmcv0.2.16
mmdet1.0.0
1 RuntimeError: expected device cuda:0 and dtype Float but got device cuda:0
不过要解决这个问题只需要在类型不对的后面加上.float()即可
~/anaconda3/envs/de2/lib/python3.7/site-packages/mmdet-1.0.0 c7b294a-py3.7-linux-x86_64.egg/mmdet/models/anchor_heads/solov2_head.py
需要修改
def center_of_mass(bitmasks): _, h, w bitmasks.size() ys torch.arange(0, h, dtype torch.float32, device bitmasks.device) xs torch.arange(0, w, dtype torch.float32, device bitmasks.device) m00 bitmasks.sum(dim -1).sum(dim -1).clamp(min 1e-6) m10 (bitmasks.float() * xs.float()).sum(dim -1).sum(dim -1) m01 (bitmasks.float() * ys[:, None].float()).sum(dim -1).sum(dim -1) center_x m10.float() / m00.float() center_y m01.float() / m00.float() return center_x, center_y



