pytorch中的inference使用实例

这里inference两个程序的连接,如目标检测,可以利用一个程序提取候选框,然后把候选框输入到分类cnn网络中。

这里常需要进行一定的连接。

#加载训练好的分类CNN网络
model=torch.load('model.pkl')

#假设proposal_img是我们提取的候选框,是需要输入到CNN网络的数据

#先定义transforms对输入cnn的网络数据进行处理,常包括resize、totensor等操作
data_transforms=transforms.Compose([transforms.RandomSizedCrop(224),
transforms.ToTensor()])

#由于transforms是对PIL格式数据操作,所以必要时转化格式

def tensor_to_PIL(tensor):
 image = tensor.cpu().clone()
 image = image.squeeze(0)
 image = unloader(image)
 return image
 
#unqueeze(0)是加多一维,对应原来batchsiaze
data=data_transforms(proposal_img).unqueeze(0)

#新版本pytorch已经不用variable,可以省略这句
data=Variable(data)
#貌似这句也是多余的
torch.no_grad()

predict=F.softmax(model(data.cuda()).cuda())

以上这篇pytorch中的inference使用实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。