Pytorch之YOLOV3读解

首先列出在写代码过程中遇到的各种错误
(1)RuntimeError: invalid argument 2: non-empty vector or matrix expected at /pytorch/aten/src/THCUNN/generic/ClassNLLCriterion.cu:31

错误原因:在计算loss时,所用到的mask掩码:
我写的是mask_obj = target[…, 4] > 0.5与
mask_noobj = target[…, 4]< 0.5,这就导致了可能出现小于0的值,所以就出现了上述问题。

改正办法:改写成 mask_obj = target[…, 4] > 0与
mask_noobj = target[…, 4] == 0

(2)RuntimeError: invalid argument 0:size of tensor must match except in dimension 0, Got 1 and 3 indimension 1 at pytorch/aten/src/THCUNN/generic/ClassNLLCriterion.cu:711

错误原因:数据集img图片中,有channel=3的图片,也有channel=1的图片,导致了通道不统一。

改正办法:把通道数改成一致,比如都改成三通道:img=img.convert(‘RGB’)

(3)由于yolov3对输入的图片有了规定,必须是32的倍数我把它定义为416X416的,所以在resize时代码如下: transforms.Compose([transforms.Resize((416,416)

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值