Caffe2 - C++ API
A deep learning, cross platform ML framework
roi_align_rotated_gradient_op.h
1 // Copyright 2004-present Facebook. All Rights Reserved.
2 
3 #ifndef ROI_ALIGN_ROTATED_GRADIENT_OP_H_
4 #define ROI_ALIGN_ROTATED_GRADIENT_OP_H_
5 
6 #include "caffe2/core/context.h"
7 #include "caffe2/core/logging.h"
8 #include "caffe2/core/operator.h"
9 
10 namespace caffe2 {
11 
12 template <typename T, class Context>
13 class RoIAlignRotatedGradientOp final : public Operator<Context> {
14  public:
15  template <class... Args>
16  explicit RoIAlignRotatedGradientOp(Args&&... args)
17  : Operator<Context>(std::forward<Args>(args)...),
18  spatial_scale_(
19  this->template GetSingleArgument<float>("spatial_scale", 1.)),
20  pooled_height_(this->template GetSingleArgument<int>("pooled_h", 1)),
21  pooled_width_(this->template GetSingleArgument<int>("pooled_w", 1)),
22  sampling_ratio_(
23  this->template GetSingleArgument<int>("sampling_ratio", -1)) {
24  DCHECK_GT(spatial_scale_, 0);
25  DCHECK_GT(pooled_height_, 0);
26  DCHECK_GT(pooled_width_, 0);
27  DCHECK_GE(sampling_ratio_, 0);
28  }
29  USE_OPERATOR_CONTEXT_FUNCTIONS;
30 
31  bool RunOnDevice() override {
32  CAFFE_NOT_IMPLEMENTED;
33  }
34 
35  protected:
36  float spatial_scale_;
37  int pooled_height_;
38  int pooled_width_;
39  int sampling_ratio_;
40 };
41 
42 } // namespace caffe2
43 
44 #endif // ROI_ALIGN_ROTATED_GRADIENT_OP_H_
A global dictionary that holds information about what Caffe2 modules have been loaded in the current ...
Definition: blob.h:13