diff --git a/deploy/cpp_infer/include/args.h b/deploy/cpp_infer/include/args.h new file mode 100644 index 0000000000000000000000000000000000000000..4f87c0fa5f8ad151d65361702a1955bf0d6d9143 --- /dev/null +++ b/deploy/cpp_infer/include/args.h @@ -0,0 +1,46 @@ +// Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include + +// common args +DECLARE_bool(use_gpu); +DECLARE_bool(use_tensorrt); +DECLARE_int32(gpu_id); +DECLARE_int32(gpu_mem); +DECLARE_int32(cpu_threads); +DECLARE_bool(enable_mkldnn); +DECLARE_string(precision); +DECLARE_bool(benchmark); +DECLARE_string(output); +DECLARE_string(image_dir); +DECLARE_bool(visualize); +// detection related +DECLARE_string(det_model_dir); +DECLARE_int32(max_side_len); +DECLARE_double(det_db_thresh); +DECLARE_double(det_db_box_thresh); +DECLARE_double(det_db_unclip_ratio); +DECLARE_bool(use_dilation); +DECLARE_string(det_db_score_mode); +// classification related +DECLARE_bool(use_angle_cls); +DECLARE_string(cls_model_dir); +DECLARE_double(cls_thresh); +// recognition related +DECLARE_string(rec_model_dir); +DECLARE_int32(rec_batch_num); +DECLARE_string(rec_char_dict_path); \ No newline at end of file diff --git a/deploy/cpp_infer/src/args.cpp b/deploy/cpp_infer/src/args.cpp new file mode 100644 index 0000000000000000000000000000000000000000..539968eb1a8a0a28ca193b231f2b858601cfc07d --- /dev/null +++ b/deploy/cpp_infer/src/args.cpp @@ -0,0 +1,45 @@ +// Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include + +// common args +DEFINE_bool(use_gpu, false, "Infering with GPU or CPU."); +DEFINE_bool(use_tensorrt, false, "Whether use tensorrt."); +DEFINE_int32(gpu_id, 0, "Device id of GPU to execute."); +DEFINE_int32(gpu_mem, 4000, "GPU id when infering with GPU."); +DEFINE_int32(cpu_threads, 10, "Num of threads with CPU."); +DEFINE_bool(enable_mkldnn, false, "Whether use mkldnn with CPU."); +DEFINE_string(precision, "fp32", "Precision be one of fp32/fp16/int8"); +DEFINE_bool(benchmark, false, "Whether use benchmark."); +DEFINE_string(output, "./output/", "Save benchmark log path."); +DEFINE_string(image_dir, "", "Dir of input image."); +DEFINE_bool(visualize, true, "Whether show the detection results."); +// detection related +DEFINE_string(det_model_dir, "", "Path of det inference model."); +DEFINE_int32(max_side_len, 960, "max_side_len of input image."); +DEFINE_double(det_db_thresh, 0.3, "Threshold of det_db_thresh."); +DEFINE_double(det_db_box_thresh, 0.6, "Threshold of det_db_box_thresh."); +DEFINE_double(det_db_unclip_ratio, 1.5, "Threshold of det_db_unclip_ratio."); +DEFINE_bool(use_dilation, false, "Whether use the dilation on output map."); +DEFINE_string(det_db_score_mode, "slow", "Whether use polygon score."); +// classification related +DEFINE_bool(use_angle_cls, false, "Whether use use_angle_cls."); +DEFINE_string(cls_model_dir, "", "Path of cls inference model."); +DEFINE_double(cls_thresh, 0.9, "Threshold of cls_thresh."); +// recognition related +DEFINE_string(rec_model_dir, "", "Path of rec inference model."); +DEFINE_int32(rec_batch_num, 6, "rec_batch_num."); +DEFINE_string(rec_char_dict_path, "../../ppocr/utils/ppocr_keys_v1.txt", + "Path of dictionary."); \ No newline at end of file diff --git a/deploy/cpp_infer/src/main.cpp b/deploy/cpp_infer/src/main.cpp index 046a68a9692c6bbaf582924c688249b0bc366b97..27c7bde09c7c5dffcfb769d78bf8d992c8a1e3a6 100644 --- a/deploy/cpp_infer/src/main.cpp +++ b/deploy/cpp_infer/src/main.cpp @@ -27,6 +27,7 @@ #include #include +#include #include #include #include @@ -34,37 +35,6 @@ #include #include "auto_log/autolog.h" -#include - -// common args -DEFINE_bool(use_gpu, false, "Infering with GPU or CPU."); -DEFINE_bool(use_tensorrt, false, "Whether use tensorrt."); -DEFINE_int32(gpu_id, 0, "Device id of GPU to execute."); -DEFINE_int32(gpu_mem, 4000, "GPU id when infering with GPU."); -DEFINE_int32(cpu_threads, 10, "Num of threads with CPU."); -DEFINE_bool(enable_mkldnn, false, "Whether use mkldnn with CPU."); -DEFINE_string(precision, "fp32", "Precision be one of fp32/fp16/int8"); -DEFINE_bool(benchmark, false, "Whether use benchmark."); -DEFINE_string(output, "./output/", "Save benchmark log path."); -DEFINE_string(image_dir, "", "Dir of input image."); -DEFINE_bool(visualize, true, "Whether show the detection results."); -// detection related -DEFINE_string(det_model_dir, "", "Path of det inference model."); -DEFINE_int32(max_side_len, 960, "max_side_len of input image."); -DEFINE_double(det_db_thresh, 0.3, "Threshold of det_db_thresh."); -DEFINE_double(det_db_box_thresh, 0.6, "Threshold of det_db_box_thresh."); -DEFINE_double(det_db_unclip_ratio, 1.5, "Threshold of det_db_unclip_ratio."); -DEFINE_bool(use_dilation, false, "Whether use the dilation on output map."); -DEFINE_string(det_db_score_mode, "slow", "Whether use polygon score."); -// classification related -DEFINE_bool(use_angle_cls, false, "Whether use use_angle_cls."); -DEFINE_string(cls_model_dir, "", "Path of cls inference model."); -DEFINE_double(cls_thresh, 0.9, "Threshold of cls_thresh."); -// recognition related -DEFINE_string(rec_model_dir, "", "Path of rec inference model."); -DEFINE_int32(rec_batch_num, 6, "rec_batch_num."); -DEFINE_string(rec_char_dict_path, "../../ppocr/utils/ppocr_keys_v1.txt", - "Path of dictionary."); using namespace std; using namespace cv;