You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
64 lines
2.6 KiB
64 lines
2.6 KiB
#ifndef CAFFE_UTIL_UPGRADE_PROTO_H_ |
|
#define CAFFE_UTIL_UPGRADE_PROTO_H_ |
|
|
|
#include <string> |
|
#include "caffe/common.hpp" |
|
#include "caffe.pb.h" |
|
|
|
namespace caffe { |
|
|
|
// Return true iff the net is not the current version. |
|
bool NetNeedsUpgrade(const NetParameter& net_param); |
|
|
|
// Return true iff any layer contains parameters specified using |
|
// deprecated V0LayerParameter. |
|
bool NetNeedsV0ToV1Upgrade(const NetParameter& net_param); |
|
|
|
// Perform all necessary transformations to upgrade a V0NetParameter into a |
|
// NetParameter (including upgrading padding layers and LayerParameters). |
|
bool UpgradeV0Net(const NetParameter& v0_net_param, NetParameter* net_param); |
|
|
|
// Upgrade NetParameter with padding layers to pad-aware conv layers. |
|
// For any padding layer, remove it and put its pad parameter in any layers |
|
// taking its top blob as input. |
|
// Error if any of these above layers are not-conv layers. |
|
void UpgradeV0PaddingLayers(const NetParameter& param, |
|
NetParameter* param_upgraded_pad); |
|
|
|
// Upgrade a single V0LayerConnection to the V1LayerParameter format. |
|
bool UpgradeV0LayerParameter(const V1LayerParameter& v0_layer_connection, |
|
V1LayerParameter* layer_param); |
|
|
|
V1LayerParameter_LayerType UpgradeV0LayerType(const string& type); |
|
|
|
// Return true iff any layer contains deprecated data transformation parameters. |
|
bool NetNeedsDataUpgrade(const NetParameter& net_param); |
|
|
|
// Perform all necessary transformations to upgrade old transformation fields |
|
// into a TransformationParameter. |
|
void UpgradeNetDataTransformation(NetParameter* net_param); |
|
|
|
// Return true iff the Net contains any layers specified as V1LayerParameters. |
|
bool NetNeedsV1ToV2Upgrade(const NetParameter& net_param); |
|
|
|
// Perform all necessary transformations to upgrade a NetParameter with |
|
// deprecated V1LayerParameters. |
|
bool UpgradeV1Net(const NetParameter& v1_net_param, NetParameter* net_param); |
|
|
|
bool UpgradeV1LayerParameter(const V1LayerParameter& v1_layer_param, |
|
LayerParameter* layer_param); |
|
|
|
const char* UpgradeV1LayerType(const V1LayerParameter_LayerType type); |
|
|
|
// Check for deprecations and upgrade the NetParameter as needed. |
|
bool UpgradeNetAsNeeded(const string& param_file, NetParameter* param); |
|
|
|
// Read parameters from a file into a NetParameter proto message. |
|
void ReadNetParamsFromTextFileOrDie(const string& param_file, |
|
NetParameter* param); |
|
void ReadNetParamsFromBinaryFileOrDie(const string& param_file, |
|
NetParameter* param); |
|
|
|
} // namespace caffe |
|
|
|
#endif // CAFFE_UTIL_UPGRADE_PROTO_H_
|
|
|