Program Listing for File prior_box.h

Return to documentation for file (include/converter/include/ops/prior_box.h)

#ifndef MINDSPORE_CORE_OPS_PRIOR_BOX_H_
#define MINDSPORE_CORE_OPS_PRIOR_BOX_H_
#include <memory>
#include <vector>

#include "mindapi/base/types.h"
#include "ops/base_operator.h"

namespace mindspore {
namespace ops {
constexpr auto kNamePriorBox = "PriorBox";
class MIND_API PriorBox : public BaseOperator {
 public:
  MIND_API_BASE_MEMBER(PriorBox);
  PriorBox() : BaseOperator(kNamePriorBox) {}

  void Init(const std::vector<int64_t> &min_sizes, const std::vector<int64_t> &max_sizes,
            const std::vector<float> &aspect_ratios, const std::vector<float> &variances, const int64_t image_size_w,
            const int64_t image_size_h, const float step_w, const float step_h, const bool clip, const bool flip,
            const float offset);

  void set_min_sizes(const std::vector<int64_t> &min_sizes);

  void set_max_sizes(const std::vector<int64_t> &max_sizes);

  void set_aspect_ratios(const std::vector<float> &aspect_ratios);

  void set_variances(const std::vector<float> &variances);

  void set_image_size_w(const int64_t image_size_w);

  void set_image_size_h(const int64_t image_size_h);

  void set_step_w(const float step_w);

  void set_step_h(const float step_h);

  void set_clip(const bool clip);

  void set_flip(const bool flip);

  void set_offset(const float offset);

  std::vector<int64_t> get_min_sizes() const;

  std::vector<int64_t> get_max_sizes() const;

  std::vector<float> get_aspect_ratios() const;

  std::vector<float> get_variances() const;

  int64_t get_image_size_w() const;

  int64_t get_image_size_h() const;

  float get_step_w() const;

  float get_step_h() const;

  bool get_flip() const;

  bool get_clip() const;

  float get_offset() const;
};

MIND_API abstract::AbstractBasePtr PriorBoxInfer(const abstract::AnalysisEnginePtr &, const PrimitivePtr &primitive,
                                                 const std::vector<abstract::AbstractBasePtr> &input_args);
}  // namespace ops
}  // namespace mindspore

#endif  // MINDSPORE_CORE_OPS_PRIOR_BOX_H_