diff options
Diffstat (limited to 'tensorflow/core/util/padding.h')
-rw-r--r-- | tensorflow/core/util/padding.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/tensorflow/core/util/padding.h b/tensorflow/core/util/padding.h new file mode 100644 index 0000000000..66cd96abdb --- /dev/null +++ b/tensorflow/core/util/padding.h @@ -0,0 +1,37 @@ +#ifndef TENSORFLOW_UTIL_PADDING_H_ +#define TENSORFLOW_UTIL_PADDING_H_ + +// This file contains helper routines to deal with padding in various ops and +// kernels. + +#include <string> + +#include "tensorflow/core/framework/graph.pb.h" +#include "tensorflow/core/public/status.h" + +namespace tensorflow { + +// Padding: the padding we apply to the input tensor along the rows and columns +// dimensions. This is usually used to make sure that the spatial dimensions do +// not shrink when we progress with convolutions. Two types of padding are +// supported: +// VALID: No padding is carried out. +// SAME: The pad value is computed so that the output will have the same +// dimensions as the input. +// The padded area is zero-filled. +enum Padding { + VALID = 1, // No padding. + SAME = 2, // Input and output layers have the same size. +}; + +// Return the string containing the list of valid padding types, that can be +// used as an Attr() in REGISTER_OP. +string GetPaddingAttrString(); + +// Specialization to parse an attribute directly into a Padding enum. +Status GetNodeAttr(const NodeDef& node_def, const string& attr_name, + Padding* value); + +} // end namespace tensorflow + +#endif // TENSORFLOW_UTIL_PADDING_H_ |