35 class GraphSRCNN955Example :
public Example 38 GraphSRCNN955Example()
39 : cmd_parser(), common_opts(cmd_parser), model_input_width(nullptr), model_input_height(nullptr), common_params(), graph(0,
"SRCNN955")
45 model_input_width->
set_help(
"Input image width.");
46 model_input_height->
set_help(
"Input image height.");
48 GraphSRCNN955Example(
const GraphSRCNN955Example &) =
delete;
49 GraphSRCNN955Example &operator=(
const GraphSRCNN955Example &) =
delete;
50 ~GraphSRCNN955Example()
override =
default;
51 bool do_setup(
int argc,
char **argv)
override 54 cmd_parser.parse(argc, argv);
55 cmd_parser.validate();
61 if(common_params.help)
63 cmd_parser.print_help(argv[0]);
68 const unsigned int image_width = model_input_width->value();
69 const unsigned int image_height = model_input_height->
value();
72 std::cout << common_params << std::endl;
73 std::cout <<
"Image width: " << image_width << std::endl;
74 std::cout <<
"Image height: " << image_height << std::endl;
77 const std::string data_path = common_params.data_path;
78 const std::string model_path =
"/cnn_data/srcnn955_model/";
81 std::unique_ptr<IPreprocessor> preprocessor = std::make_unique<TFPreproccessor>();
90 graph << common_params.target
91 << common_params.fast_math_hint
97 PadStrideInfo(1, 1, 4, 4))
104 PadStrideInfo(1, 1, 2, 2))
111 PadStrideInfo(1, 1, 2, 2))
114 <<
OutputLayer(std::make_unique<DummyAccessor>(0));
119 config.
use_tuner = common_params.enable_tuner;
122 config.
mlgo_file = common_params.mlgo_file;
125 graph.finalize(common_params.target, config);
130 void do_run()
override 157 int main(
int argc,
char **argv)
159 return arm_compute::utils::run_example<GraphSRCNN955Example>(argc, argv);
Graph configuration structure Device target types.
CLTunerMode tuner_mode
Tuner mode to be used by the CL tuner.
std::unique_ptr< graph::ITensorAccessor > get_input_accessor(const arm_compute::utils::CommonGraphParams &graph_parameters, std::unique_ptr< IPreprocessor > preprocessor=nullptr, bool bgr=true)
Generates appropriate input accessor according to the specified graph parameters. ...
bool convert_to_uint8
Convert graph to a synthetic uint8 graph.
void consume_common_graph_parameters(CommonGraphValidateOptions &options, CommonParams &common_params)
Consumes the consume_common_graph_parameters graph options and creates a structure containing any inf...
Includes all the Graph headers at once.
Common command line options used to configure the graph examples.
Class to parse command line arguments.
std::string mlgo_file
Filename to load MLGO heuristics from.
std::string tuner_file
File to load/store tuning values from.
quantized, asymmetric fixed-point 8-bit number unsigned
const T & value() const
Get the option value.
Num samples, channels, height, width.
TensorShape permute_shape(TensorShape tensor_shape, DataLayout in_data_layout, DataLayout out_data_layout)
Permutes a given tensor shape given the input and output data layout.
TensorDescriptor & set_layout(DataLayout data_layout)
Sets tensor descriptor data layout.
Structure holding all the common graph parameters.
bool use_tuner
Use a tuner in tunable backends.
std::unique_ptr< graph::ITensorAccessor > get_weights_accessor(const std::string &path, const std::string &data_file, DataLayout file_layout=DataLayout::NCHW)
Generates appropriate weights accessor according to the specified path.
int num_threads
Number of threads to use (thread capable backends), if 0 the backend will auto-initialize, if -1 the backend will stay as it is.
Stream frontend class to construct simple graphs in a stream fashion.
int main(int argc, char **argv)
Main program for SRCNN 9-5-5.
DataLayout
[DataLayout enum definition]
ILayer & set_name(std::string name)
Sets the name of the layer.
void set_help(std::string help)
Set the help message for the option.