修改或者新造一个pth文件

博客讲述了在跟踪任务中遇到的问题,即使用ResNet50预训练模型resnet50-0676ba61.pth时,由于模型结构的修改导致权重无法直接匹配。为解决此问题,提出了从跟踪任务的训练好的参数中提取相应参数并保存到新的checkpoint.pth文件的方法,以适应修改后的模型结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题的产生

训练一个受跟踪任务启发的低光增强器,跟踪任务中特征提取部分的pth不存在,想着使用pytorch提供的resnet50的参数resnet50-0676ba61.pth,但是跟踪任务中的resnet50结构有部分修改,这种修改导致resnet50-0676ba61.pth无法与model匹配

解决的办法

从跟踪任务中训练好的参数中提取相应的参数

import torch


if __name__ == "__main__":
    resnet50 = torch.load('E:\\420\code\\SCT-main\\SCT-main\\SCT\\tracking_backbone\\resnet50-0676ba61.pth')

    checkpointm = torch.load("E:\\BaiduNetdiskDownload\\model_general.pth")
    key = [k for k in resnet50]
    print(key)

    dict = {}
    for k in key:
        if k == 'fc.weight' or k == 'fc.bias':
            continue
        dict[k] = checkpointm['state_dict']['backbone.'+k]
    torch.save(dict,'checkpoint.pth')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值