Commit b3ed37546eecb2ce4c18e8c85d4a83fe61e4405d
1 parent
c8f25d49
update PPRegister to use tuned detector settings
Showing
1 changed file
with
10 additions
and
3 deletions
openbr/plugins/pp5.cpp
| @@ -46,7 +46,7 @@ class PP5Initializer : public Initializer | @@ -46,7 +46,7 @@ class PP5Initializer : public Initializer | ||
| 46 | { | 46 | { |
| 47 | TRY(ppr_initialize_sdk(qPrintable(Globals->sdkPath + "/share/openbr/models/pp5/"), my_license_id, my_license_key)) | 47 | TRY(ppr_initialize_sdk(qPrintable(Globals->sdkPath + "/share/openbr/models/pp5/"), my_license_id, my_license_key)) |
| 48 | Globals->abbreviations.insert("PP5","Open+Expand+PP5Enroll!PP5Gallery"); | 48 | Globals->abbreviations.insert("PP5","Open+Expand+PP5Enroll!PP5Gallery"); |
| 49 | - Globals->abbreviations.insert("PP5Register", "Open+PP5Enroll(true,requireLandmarks=true)+RenameFirst([eyeL,PP5_Landmark0_Right_Eye],Affine_0)+RenameFirst([eyeR,PP5_Landmark1_Left_Eye],Affine_1)"); | 49 | + Globals->abbreviations.insert("PP5Register", "Open+PP5Enroll(true,true,0.02,5,Frontal,1)+RenameFirst([eyeL,PP5_Landmark0_Right_Eye],Affine_0)+RenameFirst([eyeR,PP5_Landmark1_Left_Eye],Affine_1)"); |
| 50 | Globals->abbreviations.insert("PP5CropFace", "Open+PP5Enroll(true)+RenameFirst([eyeL,PP5_Landmark0_Right_Eye],Affine_0)+RenameFirst([eyeR,PP5_Landmark1_Left_Eye],Affine_1)+Affine(128,128,0.25,0.35)+Cvt(Gray)"); | 50 | Globals->abbreviations.insert("PP5CropFace", "Open+PP5Enroll(true)+RenameFirst([eyeL,PP5_Landmark0_Right_Eye],Affine_0)+RenameFirst([eyeR,PP5_Landmark1_Left_Eye],Affine_1)+Affine(128,128,0.25,0.35)+Cvt(Gray)"); |
| 51 | } | 51 | } |
| 52 | 52 | ||
| @@ -67,7 +67,7 @@ struct PP5Context | @@ -67,7 +67,7 @@ struct PP5Context | ||
| 67 | { | 67 | { |
| 68 | ppr_context_type context; | 68 | ppr_context_type context; |
| 69 | 69 | ||
| 70 | - PP5Context(bool detectOnly = false, float adaptiveMinSize = 0.01f, int minSize = 4, ppr_landmark_range_type landmarkRange = PPR_LANDMARK_RANGE_COMPREHENSIVE) | 70 | + PP5Context(bool detectOnly = false, float adaptiveMinSize = 0.01f, int minSize = 4, ppr_landmark_range_type landmarkRange = PPR_LANDMARK_RANGE_COMPREHENSIVE, int searchPruningAggressiveness = 0) |
| 71 | { | 71 | { |
| 72 | ppr_settings_type default_settings = ppr_get_default_settings(); | 72 | ppr_settings_type default_settings = ppr_get_default_settings(); |
| 73 | 73 | ||
| @@ -76,6 +76,7 @@ struct PP5Context | @@ -76,6 +76,7 @@ struct PP5Context | ||
| 76 | default_settings.detection.detect_best_face_only = !Globals->enrollAll; | 76 | default_settings.detection.detect_best_face_only = !Globals->enrollAll; |
| 77 | default_settings.detection.enable = 1; | 77 | default_settings.detection.enable = 1; |
| 78 | default_settings.detection.min_size = minSize; | 78 | default_settings.detection.min_size = minSize; |
| 79 | + default_settings.detection.search_pruning_aggressiveness = searchPruningAggressiveness; | ||
| 79 | default_settings.detection.use_serial_face_detection = 1; | 80 | default_settings.detection.use_serial_face_detection = 1; |
| 80 | 81 | ||
| 81 | default_settings.landmarks.enable = 1; | 82 | default_settings.landmarks.enable = 1; |
| @@ -260,7 +261,9 @@ class PP5EnrollTransform : public UntrainableMetaTransform | @@ -260,7 +261,9 @@ class PP5EnrollTransform : public UntrainableMetaTransform | ||
| 260 | Q_PROPERTY(float adaptiveMinSize READ get_adaptiveMinSize WRITE set_adaptiveMinSize RESET reset_adaptiveMinSize STORED false) | 261 | Q_PROPERTY(float adaptiveMinSize READ get_adaptiveMinSize WRITE set_adaptiveMinSize RESET reset_adaptiveMinSize STORED false) |
| 261 | Q_PROPERTY(float minSize READ get_minSize WRITE set_minSize RESET reset_minSize STORED false) | 262 | Q_PROPERTY(float minSize READ get_minSize WRITE set_minSize RESET reset_minSize STORED false) |
| 262 | Q_PROPERTY(LandmarkRange landmarkRange READ get_landmarkRange WRITE set_landmarkRange RESET reset_landmarkRange STORED false) | 263 | Q_PROPERTY(LandmarkRange landmarkRange READ get_landmarkRange WRITE set_landmarkRange RESET reset_landmarkRange STORED false) |
| 264 | + Q_PROPERTY(int searchPruningAggressiveness READ get_searchPruningAggressiveness WRITE set_searchPruningAggressiveness RESET reset_searchPruningAggressiveness STORED false) | ||
| 263 | 265 | ||
| 266 | +public: | ||
| 264 | enum LandmarkRange | 267 | enum LandmarkRange |
| 265 | { | 268 | { |
| 266 | Frontal = PPR_LANDMARK_RANGE_FRONTAL, | 269 | Frontal = PPR_LANDMARK_RANGE_FRONTAL, |
| @@ -268,12 +271,15 @@ class PP5EnrollTransform : public UntrainableMetaTransform | @@ -268,12 +271,15 @@ class PP5EnrollTransform : public UntrainableMetaTransform | ||
| 268 | Full = PPR_LANDMARK_RANGE_FULL, | 271 | Full = PPR_LANDMARK_RANGE_FULL, |
| 269 | Comprehensive = PPR_LANDMARK_RANGE_COMPREHENSIVE | 272 | Comprehensive = PPR_LANDMARK_RANGE_COMPREHENSIVE |
| 270 | }; | 273 | }; |
| 274 | + Q_ENUMS(LandmarkRange) | ||
| 271 | 275 | ||
| 276 | +private: | ||
| 272 | BR_PROPERTY(bool, detectOnly, false) | 277 | BR_PROPERTY(bool, detectOnly, false) |
| 273 | BR_PROPERTY(bool, requireLandmarks, false) | 278 | BR_PROPERTY(bool, requireLandmarks, false) |
| 274 | BR_PROPERTY(float, adaptiveMinSize, 0.01f) | 279 | BR_PROPERTY(float, adaptiveMinSize, 0.01f) |
| 275 | BR_PROPERTY(float, minSize, 4) | 280 | BR_PROPERTY(float, minSize, 4) |
| 276 | BR_PROPERTY(LandmarkRange, landmarkRange, Comprehensive) | 281 | BR_PROPERTY(LandmarkRange, landmarkRange, Comprehensive) |
| 282 | + BR_PROPERTY(int, searchPruningAggressiveness, 0) | ||
| 277 | 283 | ||
| 278 | Resource<PP5Context> contexts; | 284 | Resource<PP5Context> contexts; |
| 279 | 285 | ||
| @@ -290,7 +296,8 @@ class PP5EnrollTransform : public UntrainableMetaTransform | @@ -290,7 +296,8 @@ class PP5EnrollTransform : public UntrainableMetaTransform | ||
| 290 | return new PP5Context(pp5EnrollTransform->detectOnly, | 296 | return new PP5Context(pp5EnrollTransform->detectOnly, |
| 291 | pp5EnrollTransform->adaptiveMinSize, | 297 | pp5EnrollTransform->adaptiveMinSize, |
| 292 | pp5EnrollTransform->minSize, | 298 | pp5EnrollTransform->minSize, |
| 293 | - (ppr_landmark_range_type) pp5EnrollTransform->landmarkRange); | 299 | + (ppr_landmark_range_type) pp5EnrollTransform->landmarkRange, |
| 300 | + pp5EnrollTransform->searchPruningAggressiveness); | ||
| 294 | } | 301 | } |
| 295 | }; | 302 | }; |
| 296 | 303 |