add symmetric color style option
PiperOrigin-RevId: 547069284
This commit is contained in:
		
							parent
							
								
									0bde987a38
								
							
						
					
					
						commit
						bf6561ce91
					
				| 
						 | 
					@ -152,6 +152,7 @@ cc_library(
 | 
				
			||||||
    visibility = ["//visibility:public"],
 | 
					    visibility = ["//visibility:public"],
 | 
				
			||||||
    deps = [
 | 
					    deps = [
 | 
				
			||||||
        "//mediapipe/framework/formats:landmark_cc_proto",
 | 
					        "//mediapipe/framework/formats:landmark_cc_proto",
 | 
				
			||||||
 | 
					        "//mediapipe/framework/port:logging",
 | 
				
			||||||
        "//mediapipe/framework/port:opencv_core",
 | 
					        "//mediapipe/framework/port:opencv_core",
 | 
				
			||||||
        "//mediapipe/framework/port:opencv_imgproc",
 | 
					        "//mediapipe/framework/port:opencv_imgproc",
 | 
				
			||||||
    ],
 | 
					    ],
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,6 @@
 | 
				
			||||||
#include "mediapipe/util/pose_util.h"
 | 
					#include "mediapipe/util/pose_util.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#include "mediapipe/framework/port/logging.h"
 | 
				
			||||||
#include "mediapipe/framework/port/opencv_imgproc_inc.h"
 | 
					#include "mediapipe/framework/port/opencv_imgproc_inc.h"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace {
 | 
					namespace {
 | 
				
			||||||
| 
						 | 
					@ -192,7 +193,7 @@ void DrawPose(const mediapipe::NormalizedLandmarkList& pose, bool flip_y,
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void DrawFace(const mediapipe::NormalizedLandmarkList& face, bool flip_y,
 | 
					void DrawFace(const mediapipe::NormalizedLandmarkList& face, bool flip_y,
 | 
				
			||||||
              bool draw_nose, bool color_style, bool reverse_color,
 | 
					              bool draw_nose, int color_style, bool reverse_color,
 | 
				
			||||||
              int draw_line_width, cv::Mat* image) {
 | 
					              int draw_line_width, cv::Mat* image) {
 | 
				
			||||||
  const int target_width = image->cols;
 | 
					  const int target_width = image->cols;
 | 
				
			||||||
  const int target_height = image->rows;
 | 
					  const int target_height = image->rows;
 | 
				
			||||||
| 
						 | 
					@ -202,16 +203,26 @@ void DrawFace(const mediapipe::NormalizedLandmarkList& face, bool flip_y,
 | 
				
			||||||
                           (flip_y ? 1.0f - lm.y() : lm.y()) * target_height);
 | 
					                           (flip_y ? 1.0f - lm.y() : lm.y()) * target_height);
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  cv::Scalar kFaceOvalColor = kWhiteColor;
 | 
					  cv::Scalar kFaceOvalColor;
 | 
				
			||||||
  cv::Scalar kLipsColor = kWhiteColor;
 | 
					  cv::Scalar kLipsColor;
 | 
				
			||||||
  cv::Scalar kLeftEyeColor = kGreenColor;
 | 
					  cv::Scalar kLeftEyeColor;
 | 
				
			||||||
  cv::Scalar kLeftEyebrowColor = kGreenColor;
 | 
					  cv::Scalar kLeftEyebrowColor;
 | 
				
			||||||
  cv::Scalar kLeftEyeIrisColor = kGreenColor;
 | 
					  cv::Scalar kLeftEyeIrisColor;
 | 
				
			||||||
  cv::Scalar kRightEyeColor = kRedColor;
 | 
					  cv::Scalar kRightEyeColor;
 | 
				
			||||||
  cv::Scalar kRightEyebrowColor = kRedColor;
 | 
					  cv::Scalar kRightEyebrowColor;
 | 
				
			||||||
  cv::Scalar kRightEyeIrisColor = kRedColor;
 | 
					  cv::Scalar kRightEyeIrisColor;
 | 
				
			||||||
  cv::Scalar kNoseColor = kWhiteColor;
 | 
					  cv::Scalar kNoseColor;
 | 
				
			||||||
  if (color_style) {
 | 
					  if (color_style == 0) {
 | 
				
			||||||
 | 
					    kFaceOvalColor = kWhiteColor;
 | 
				
			||||||
 | 
					    kLipsColor = kWhiteColor;
 | 
				
			||||||
 | 
					    kLeftEyeColor = kGreenColor;
 | 
				
			||||||
 | 
					    kLeftEyebrowColor = kGreenColor;
 | 
				
			||||||
 | 
					    kLeftEyeIrisColor = kGreenColor;
 | 
				
			||||||
 | 
					    kRightEyeColor = kRedColor;
 | 
				
			||||||
 | 
					    kRightEyebrowColor = kRedColor;
 | 
				
			||||||
 | 
					    kRightEyeIrisColor = kRedColor;
 | 
				
			||||||
 | 
					    kNoseColor = kWhiteColor;
 | 
				
			||||||
 | 
					  } else if (color_style == 1) {
 | 
				
			||||||
    kFaceOvalColor = kWhiteColor;
 | 
					    kFaceOvalColor = kWhiteColor;
 | 
				
			||||||
    kLipsColor = kBlueColor;
 | 
					    kLipsColor = kBlueColor;
 | 
				
			||||||
    kLeftEyeColor = kCyanColor;
 | 
					    kLeftEyeColor = kCyanColor;
 | 
				
			||||||
| 
						 | 
					@ -221,6 +232,18 @@ void DrawFace(const mediapipe::NormalizedLandmarkList& face, bool flip_y,
 | 
				
			||||||
    kRightEyebrowColor = kRedColor;
 | 
					    kRightEyebrowColor = kRedColor;
 | 
				
			||||||
    kRightEyeIrisColor = kRedColor;
 | 
					    kRightEyeIrisColor = kRedColor;
 | 
				
			||||||
    kNoseColor = kYellowColor;
 | 
					    kNoseColor = kYellowColor;
 | 
				
			||||||
 | 
					  } else if (color_style == 2) {
 | 
				
			||||||
 | 
					    kFaceOvalColor = kWhiteColor;
 | 
				
			||||||
 | 
					    kLipsColor = kBlueColor;
 | 
				
			||||||
 | 
					    kLeftEyeColor = kCyanColor;
 | 
				
			||||||
 | 
					    kLeftEyebrowColor = kGreenColor;
 | 
				
			||||||
 | 
					    kLeftEyeIrisColor = kRedColor;
 | 
				
			||||||
 | 
					    kRightEyeColor = kCyanColor;
 | 
				
			||||||
 | 
					    kRightEyebrowColor = kGreenColor;
 | 
				
			||||||
 | 
					    kRightEyeIrisColor = kRedColor;
 | 
				
			||||||
 | 
					    kNoseColor = kYellowColor;
 | 
				
			||||||
 | 
					  } else {
 | 
				
			||||||
 | 
					    LOG(ERROR) << "color_style not supported.";
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if (reverse_color) {
 | 
					  if (reverse_color) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -24,7 +24,7 @@ void DrawPose(const mediapipe::NormalizedLandmarkList& pose, bool flip_y,
 | 
				
			||||||
              cv::Mat* image);
 | 
					              cv::Mat* image);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void DrawFace(const mediapipe::NormalizedLandmarkList& face, bool flip_y,
 | 
					void DrawFace(const mediapipe::NormalizedLandmarkList& face, bool flip_y,
 | 
				
			||||||
              bool draw_nose, bool color_style, bool reverse_color,
 | 
					              bool draw_nose, int color_style, bool reverse_color,
 | 
				
			||||||
              int draw_line_width, cv::Mat* image);
 | 
					              int draw_line_width, cv::Mat* image);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}  // namespace mediapipe
 | 
					}  // namespace mediapipe
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue
	
	Block a user