TADT代码问题
Posted qq552048250
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TADT代码问题相关的知识,希望对你有一定的参考价值。
paper:Li X, Ma C, Wu B, et al. Target-Aware Deep Tracking[C]. //CVPR2019
调用adam.m时候报错
结构体内容引用自非结构体数组对象。
出错 solver.adam (line 62)
state.m = opts.beta1 * state.m + (1 - opts.beta1) * grad ;
原因是因为传递给adam函数的state参数是一个空数据,如果是这种情况应该是传一个0进去,因为adam.m的57行有写
if isequal(state, 0) % start off with state = 0 so as to get default state
state = struct(‘m‘, 0, ‘v‘, 0, ‘t‘, 0);
end
所以修改cnn_train_dag_ridge函数的374行左右
在
[net.params(p).value, state.solverStatep] = ...
params.solver(net.params(p).value, state.solverStatep, ...
grad, params.solverOpts, thisLR) ;
这句前增加代码如下:
if(isempty(state.solverStatep))
state.solverStatep=0;
end
以上是关于TADT代码问题的主要内容,如果未能解决你的问题,请参考以下文章