diff --git a/deploy/cpp/demo/detector.cpp b/deploy/cpp/demo/detector.cpp index 54f93d2995fa24af73bba2855b6b26466129fa20..dc8939609b89ea081bafc78edeecf30ee15aa1ac 100644 --- a/deploy/cpp/demo/detector.cpp +++ b/deploy/cpp/demo/detector.cpp @@ -124,7 +124,7 @@ int main(int argc, char** argv) { // 可视化 for (int j = 0; j < im_vec_size - i; ++j) { cv::Mat vis_img = PaddleX::Visualize( - im_vec[j], results[j], model.labels, colormap, FLAGS_threshold); + im_vec[j], results[j], model.labels, FLAGS_threshold); std::string save_path = PaddleX::generate_save_path(FLAGS_save_dir, image_paths[i + j]); cv::imwrite(save_path, vis_img); @@ -155,7 +155,7 @@ int main(int argc, char** argv) { // 可视化 cv::Mat vis_img = - PaddleX::Visualize(im, result, model.labels, colormap, FLAGS_threshold); + PaddleX::Visualize(im, result, model.labels, FLAGS_threshold); std::string save_path = PaddleX::generate_save_path(FLAGS_save_dir, FLAGS_image); cv::imwrite(save_path, vis_img); diff --git a/deploy/cpp/demo/segmenter.cpp b/deploy/cpp/demo/segmenter.cpp index 90adb5aea860bf5ad9f6cb9019990a188c37f871..4b3905a70fe8edc08143f415d1ffcd0dddd93945 100644 --- a/deploy/cpp/demo/segmenter.cpp +++ b/deploy/cpp/demo/segmenter.cpp @@ -106,7 +106,7 @@ int main(int argc, char** argv) { // 可视化 for (int j = 0; j < im_vec_size - i; ++j) { cv::Mat vis_img = - PaddleX::Visualize(im_vec[j], results[j], model.labels, colormap); + PaddleX::Visualize(im_vec[j], results[j], model.labels); std::string save_path = PaddleX::generate_save_path(FLAGS_save_dir, image_paths[i + j]); cv::imwrite(save_path, vis_img); @@ -124,7 +124,7 @@ int main(int argc, char** argv) { microseconds::period::num / microseconds::period::den; // 可视化 - cv::Mat vis_img = PaddleX::Visualize(im, result, model.labels, colormap); + cv::Mat vis_img = PaddleX::Visualize(im, result, model.labels); std::string save_path = PaddleX::generate_save_path(FLAGS_save_dir, FLAGS_image); cv::imwrite(save_path, vis_img); diff --git a/deploy/cpp/include/paddlex/visualize.h b/deploy/cpp/include/paddlex/visualize.h index 9ddba5387b427c60645db7c96a54bcba76fa9898..9b80ca367bc8e45334c951cb6dd32069c67c9dbd 100644 --- a/deploy/cpp/include/paddlex/visualize.h +++ b/deploy/cpp/include/paddlex/visualize.h @@ -65,13 +65,12 @@ std::vector GenerateColorMap(int num_class); * @param img: initial image matrix * @param results: the detection result * @param labels: label map - * @param colormap: visualization color map + * @param threshold: minimum confidence to display * @return visualized image matrix * */ cv::Mat Visualize(const cv::Mat& img, const DetResult& results, const std::map& labels, - const std::vector& colormap, float threshold = 0.5); /* @@ -81,13 +80,11 @@ cv::Mat Visualize(const cv::Mat& img, * @param img: initial image matrix * @param results: the detection result * @param labels: label map - * @param colormap: visualization color map * @return visualized image matrix * */ cv::Mat Visualize(const cv::Mat& img, const SegResult& result, - const std::map& labels, - const std::vector& colormap); + const std::map& labels); /* * @brief diff --git a/deploy/cpp/src/visualize.cpp b/deploy/cpp/src/visualize.cpp index 1511887f097e20826f13c8c1f098ceea4efc0b5b..afc1733b497269b706bf4e07d82f3a7aa43087f5 100644 --- a/deploy/cpp/src/visualize.cpp +++ b/deploy/cpp/src/visualize.cpp @@ -34,8 +34,8 @@ std::vector GenerateColorMap(int num_class) { cv::Mat Visualize(const cv::Mat& img, const DetResult& result, const std::map& labels, - const std::vector& colormap, float threshold) { + auto colormap = GenerateColorMap(labels.size()); cv::Mat vis_img = img.clone(); auto boxes = result.boxes; for (int i = 0; i < boxes.size(); ++i) { @@ -107,8 +107,8 @@ cv::Mat Visualize(const cv::Mat& img, cv::Mat Visualize(const cv::Mat& img, const SegResult& result, - const std::map& labels, - const std::vector& colormap) { + const std::map& labels) { + auto colormap = GenerateColorMap(labels.size()); std::vector label_map(result.label_map.data.begin(), result.label_map.data.end()); cv::Mat mask(result.label_map.shape[0],