_execution_builder->append(std::move(acl_fn));
}
+void KernelGenerator::visit(const model::operation::ResizeBilinearNode &node)
+{
+ const auto ofm_index{node.getOutputs().at(0)};
+
+ const auto ifm_index{node.getInputs().at(model::operation::ResizeBilinearNode::Input::INPUT)};
+ const auto height_index{node.param().height_index};
+ const auto width_index{node.param().width_index};
+ (void)height_index;
+ (void)width_index;
+
+ auto ofm_alloc = _tensor_builder->at(ofm_index).get();
+ auto ifm_alloc = _tensor_builder->at(ifm_index).get();
+
+ std::unique_ptr<::arm_compute::IFunction> fn;
+
+ auto l = nnfw::cpp14::make_unique<::arm_compute::NEScale>();
+
+ l->configure(ifm_alloc->handle(), ofm_alloc->handle(),
+ ::arm_compute::InterpolationPolicy::BILINEAR, ::arm_compute::BorderMode::REPLICATE,
+ ::arm_compute::PixelValue(0.f), ::arm_compute::SamplingPolicy::TOP_LEFT);
+
+ fn = std::move(l);
+
+ auto acl_fn = asAclFunction(std::move(fn));
+
+ _execution_builder->append(std::move(acl_fn));
+}
+
void KernelGenerator::visit(const model::operation::RNNNode &node)
{
const auto output_index{node.getOutputs().at(model::operation::RNNNode::Output::OUTPUT)};
void visit(const model::operation::ReLU1Node &) override;
void visit(const model::operation::ReLU6Node &) override;
void visit(const model::operation::ReshapeNode &) override;
+ void visit(const model::operation::ResizeBilinearNode &) override;
void visit(const model::operation::RNNNode &) override;
void visit(const model::operation::RSQRTNode &) override;
void visit(const model::operation::SqueezeNode &) override;
_tensor_builder->dimCorrection(output_index, false);
}
+void ShapeFixer::visit(const model::operation::ResizeBilinearNode &) { /* DO NOTHING */}
+
void ShapeFixer::visit(const model::operation::RNNNode &) { /* DO NOTHING */}
void ShapeFixer::visit(const model::operation::ComparisonNode &node)
void visit(const model::operation::ReLU1Node &) override;
void visit(const model::operation::ReLU6Node &) override;
void visit(const model::operation::ReshapeNode &) override;
+ void visit(const model::operation::ResizeBilinearNode &) override;
void visit(const model::operation::RNNNode &) override;
void visit(const model::operation::RSQRTNode &) override;
void visit(const model::operation::SqueezeNode &) override;