MCPcopy Create free account
hub / github.com/OpenPTrack/open_ptrack_v2 / InitTrainNet

Method InitTrainNet

rtpose_wrapper/src/caffe/solver.cpp:67–109  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

65
66template <typename Dtype>
67void Solver<Dtype>::InitTrainNet() {
68 const int num_train_nets = param_.has_net() + param_.has_net_param() +
69 param_.has_train_net() + param_.has_train_net_param();
70 const string& field_names = "net, net_param, train_net, train_net_param";
71 CHECK_GE(num_train_nets, 1) << "SolverParameter must specify a train net "
72 << "using one of these fields: " << field_names;
73 CHECK_LE(num_train_nets, 1) << "SolverParameter must not contain more than "
74 << "one of these fields specifying a train_net: " << field_names;
75 NetParameter net_param;
76 if (param_.has_train_net_param()) {
77 LOG_IF(INFO, Caffe::root_solver())
78 << "Creating training net specified in train_net_param.";
79 net_param.CopyFrom(param_.train_net_param());
80 } else if (param_.has_train_net()) {
81 LOG_IF(INFO, Caffe::root_solver())
82 << "Creating training net from train_net file: " << param_.train_net();
83 ReadNetParamsFromTextFileOrDie(param_.train_net(), &net_param);
84 }
85 if (param_.has_net_param()) {
86 LOG_IF(INFO, Caffe::root_solver())
87 << "Creating training net specified in net_param.";
88 net_param.CopyFrom(param_.net_param());
89 }
90 if (param_.has_net()) {
91 LOG_IF(INFO, Caffe::root_solver())
92 << "Creating training net from net file: " << param_.net();
93 ReadNetParamsFromTextFileOrDie(param_.net(), &net_param);
94 }
95 // Set the correct NetState. We start with the solver defaults (lowest
96 // precedence); then, merge in any NetState specified by the net_param itself;
97 // finally, merge in any NetState specified by the train_state (highest
98 // precedence).
99 NetState net_state;
100 net_state.set_phase(TRAIN);
101 net_state.MergeFrom(net_param.state());
102 net_state.MergeFrom(param_.train_state());
103 net_param.mutable_state()->CopyFrom(net_state);
104 if (Caffe::root_solver()) {
105 net_.reset(new Net<Dtype>(net_param));
106 } else {
107 net_.reset(new Net<Dtype>(net_param, root_solver_->net_.get()));
108 }
109}
110
111template <typename Dtype>
112void Solver<Dtype>::InitTestNets() {

Callers

nothing calls this directly

Calls 5

CopyFromMethod · 0.80
netMethod · 0.80
resetMethod · 0.45
getMethod · 0.45

Tested by

no test coverage detected