Perfectly Clear SDK Documentation  10.6.3.965
PerfectlyClearPro.h
Go to the documentation of this file.
1 
8 #ifndef __PERFECTLYCLEARPRO_H__
9 #define __PERFECTLYCLEARPRO_H__
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13 
14 #ifdef _LINUX
15 #define BOOL int
16 #define ULONG unsigned long
17 #define UINT unsigned int
18 #define TRUE 1
19 #define FALSE 0
20 //#define NULL 0
21 #endif
22 
24 #define NRRETCODE(x) (x & 0x000000FF)
25 #define CORERETCODE(x) ((x >> 8) & 0x000000FF)
27 #define FBRETCODE(x) ((x >> 16) & 0x000000FF)
29 #define RERETCODE(x) ((x >> 24) & 0x000000FF)
31 #define PFCINTERNAL void*
33 
37 typedef BOOL (*PFC_PROGRESS)(int iPercent);
38 
40 typedef enum {
154 
156 typedef enum {
161 
163 typedef enum {
164  CALC_CORE = 1,
165  CALC_NR = 2,
166  CALC_FB = 4,
167  CALC_RE = 8,
168  CALC_ALL = 15,
170  CALC_NOFAE = 32,
173  CALC_SHARP = 256,
175  CALC_COMPOSITE = 1024,
176  CALC_SKINTONE = 2048,
177  CALC_AICOLOR = 4096
179 
181 typedef enum {
182  PRESET_NONE = -1,
194 
196 typedef struct {
197  int x;
198  int y;
199 }
200 PFCPOINT;
201 
203 typedef struct {
204  int left;
205  int top;
206  int width;
207  int height;
208 }
209 PFCRECT;
210 
212 typedef struct {
216 }
218 
228 typedef struct PFCFaceRect{
235  int angle;
242  int yawAngle;
243  int FAE[3];
246  struct PFCFaceRect *pNext;
248 typedef PFCFACERECT* LPPFCFACERECT;
249 
251 typedef struct {
254 } PFCENGINE;
255 
257 typedef struct {
258  int width;
259  int height;
260  int stride;
262  unsigned char *data;
263 } PFCIMAGE;
264 
266 typedef enum {
271 }
273 
275 typedef enum {
278 }
280 
282 typedef enum {
284  DCF_VIVID
285 }
286 DCFMODE;
287 
289 typedef enum {
293 }
295 
297 typedef enum {
303  BIAS_AUTO
304 }
305 BIASMODE;
306 
308 typedef enum {
311 }
312 SKINMODE;
313 
315 typedef enum {
319 }
321 
323 typedef enum {
329 }
331 
333 typedef enum {
337 }
339 
341 typedef enum {
351 
353 typedef enum {
363 
365 typedef enum {
378 
380 typedef enum {
391 
393 typedef enum {
409 
412 typedef enum {
415  PFC_REJECT_CLIPART = 2
417 
420 typedef enum {
428  PFC_COMPOSITE_V2_2 = 4
430 
433 typedef struct {
434  int r; // start of Hue range ramp
435  int a; // start of flat part of Hue range
436  int m; // end of flat part of Hue range
437  int p; // end of Hue range ramp
438  int H; // shift of Hue, -180 .. 180
439  int S; // correction of S, -100 .. 100
440  int L; // correction of L, -100 .. 100
442 
444 typedef struct {
445  BOOL bEnabled;
448  float fTintScale;
450  BOOL bVibrancy;
451  int iVibrancy;
452  int iStrength;
453  BOOL bContrast;
455  int iContrast;
457  float fBiasScale;
460  BOOL bSharpen;
463  BOOL bUseFAE;
466  BOOL bInfrared;
467  float fInfrared;
471  BOOL bDCF;
473  float fDCF;
485  SELECTIVECOLOR selectiveColor[8];
486 } PFCCOREPARAM;
487 
489 typedef struct {
490  BOOL bEnabled;
491  BOOL bSmooth;
495  BOOL bEnlarge;
497  BOOL bEnhance;
499  BOOL bEyeCirc;
500  int iEyeCirc;
501  BOOL bTeeth;
503  BOOL bBlemish;
504  int iBlemish;
505  BOOL bSlim;
506  int iSlim;
507  BOOL bDeFlash;
508  int iDeFlash;
509  BOOL bCatchLight;
512  BOOL bSkinToning;
522  BOOL bLipSharpen;
525  BOOL bBlush;
526  int iBlush;
527  unsigned int colorSkinToning;
528  unsigned int colorBlush;
529 } PFCFBPARAM;
530 
532 typedef struct {
533  BOOL bEnabled;
534  int iPreset;
535  int iStrengthOffset;
544 } PFCNRPARAM;
545 
547 typedef struct {
548  BOOL bEnabled;
549 } PFCREPARAM;
550 
551 #define PFC3DLutGuidLength 32
552 typedef struct {
554  char guid[PFC3DLutGuidLength + 1];
555  unsigned char strength;
556 } PFC3DLutInfo;
557 
566 };
567 
569 typedef struct PFCCOREMask
570 {
571  PFCCORE_MASK_TYPE type;
572  float centerX;
573  float centerY;
574  float width;
575  float height;
576  float radius;
577  float feather;
578  float angle;
579  float transparency;
580  bool invert;
581  // if two layers (top and bottom) - swap params between layers instead.
583 
585 typedef struct {
586  // Image Ambulance
589 
590  // built-in 3D luts
593  int iDarkSkin;
598  // custom output 3D Lut
600 
601  // Finishing
613 
614  int iDeltaR;
615  int iDeltaG;
616  int iDeltaB;
617 
618  BOOL bDynamic;
619  int iDynamic;
621 
624 } PFCV3PARAM;
625 
627 typedef struct {
628  int iDensity;
629  int iDeltaR;
630  int iDeltaG;
631  int iDeltaB;
632  float fGamma;
633  int iContrast;
635  int mode;
636  BOOL bAuto;
637  BOOL bEnable;
638 } DP2PARAM;
639 
641 typedef struct {
646 #ifndef NO_V3PARAM
648  PFCV3PARAM layer[3];
649  PFCCOREMask mask[3];
650 #endif
651  DP2PARAM dp2;
652 } PFCPARAM;
653 
655 typedef struct {
661 
666 
667  int Status;
676 #define PFCPROFILE PFCIMAGEPROFILE*
677 
679 #define PFCBGPROFILE PFCINTERNAL
680 
682 typedef struct {
683  int iRawMaskMode; // 7
684  int iBG; // 0..100
685  int iFG; // 0 .. 100
686  int iTolerance; // allow target I variation (similar to +- 8 logic)
687  int iSobel; // Sobel binarization threshold, 32
688  int iBlur;
689  bool bImfill; // remove black holes
690  bool bAreaopen; // do areaopen in black subject (remove white)
691  int iAreaopen; // size param in 1/10000 of w*h
692  bool bAreaopenBG; // do areaopen in white BG (rem small blacks)
693  int iAreaopenBG;
694  int iConnectivity; // 8 or 4
695  bool bGrad; // add grad filter
696  bool bGradAuto; // fixed based on detected face bottom,
697  int iGradBottom; // rel bottom
698  int iGradHeight; // rel spread
699  float avR; // calculated average BG RGB
700  float avG;
701  float avB;
702 }
704 
705 
709 
742 int PFC_SetProtectionPath(const char*utf8FolderPath, const char* liceseCode = NULL);
743 
752 
773 int PFC_ReadPresets(PFCPARAM &param, char *filename);
774 
807 int PFC_AutoCorrect(PFCIMAGE *pImage, PFCIMAGE *pImageds, PFCPARAM &param, int iISO=-1, char *pCameraModel=NULL, BOOL bFastFAE=FALSE, PFC_PROGRESS progfn=NULL, PFCENGINE* pEngineAI=NULL, BOOL bUseAutoSDPreset = FALSE);
808 
812 
813 
815 
819 
827 
855 PFCPROFILE PFC_Calc(PFCIMAGE *pImage, PFCIMAGE *pImageds, PFCENGINE* pEngine, unsigned int feature=CALC_ALL, int iISO=-1, char *pCameraModel=NULL, PFCPROFILE pImageProfile=NULL, PFC_PROGRESS progfn=NULL, int iRejectOption=PFC_REJECT_CLIPART, PFCENGINE* pEngineAI=NULL);
856 
857 
871 PFCAPPLYSTATUS PFC_Apply(PFCIMAGE *pImage, PFCENGINE *pEngine, PFCPROFILE pImageProfile, PFCPARAM &param, PFC_PROGRESS progfn=NULL, int iOpacity=100, void* pBGProfile=NULL);
872 
880 
889 
893 
899 void PFC_SetAddonPath(const char *utf8AddonPath);
900 
904 
905 
906 
913 void PFC_LoadAddonLooks(PFCENGINE *pEngine, const char *addonLooksBuf, int buflen);
914 
922 
930 int PFC_FBFaceCount(PFCPROFILE pImageProfile);
931 
939 int PFC_FAEFaceCount(PFCIMAGEPROFILE *pImageProfile);
963 bool PFC_GetFaceInfo(PFCIMAGEPROFILE *pImageProfile, PFCFBFACEINFO *pFace, int index);
964 
983 
992 bool PFC_IsNoiseDetected(PFCIMAGEPROFILE *pImageProfile, int iNoisePreset);
993 
1004 bool PFC_AbnormalTintDetected(PFCIMAGEPROFILE *pImageProfile, TINTCORRECTION eTintMethod);
1005 
1021 int PFC_AutoCorrectPreset(PFCIMAGE *pImage, PFCIMAGE *pImageds, PFCPRESETID id=PRESET_IAUTO_PEOPLE, int iISO=-1, char *pCameraModel=NULL, BOOL bFastFAE=FALSE, PFC_PROGRESS progfn=NULL, PFCENGINE* pEngineAI=NULL);
1022 
1023 
1032 int PFC_ReadPresetsFromStream(PFCPARAM &param, const char *s);
1033 
1041 void PFC_SetSingleThreadedEngine(PFCENGINE* p, bool bSingleThreaded);
1042 
1048 void PFC_GetVersion(char* buf, int *len, bool bFormatted = false);
1049 
1055 PFCAPPLYSTATUS PFC_Resize(PFCIMAGE *pImageSrc, PFCIMAGE *pImageDst);
1056 
1062 PFCAPPLYSTATUS PFC_TransposeExif(PFCIMAGE *pImageSrc, int iEXIFOrientation);
1063 
1070 void PFC_ApplyStrengthToParam(PFCPARAM &param, int strength);
1071 
1080 int PFC_WasmSetCertificate(PFCENGINE* pEngine, const char *clientAPIKey, const char *certificate);
1081 
1085 void PFC_TrackSave(const char *clientAPIKey);
1086 
1093 
1095 typedef enum {
1100  AI_COLOR = 16
1102 
1111 int PFC_LoadAIEngine(PFCENGINE* pEngineAI, unsigned int aifeatures, const char *binPath);
1112 
1134 int PFC_LoadAIEngineNative(PFCENGINE* pEngineAI, unsigned int aifeatures, const char *modelDynamic, int lenDynamic, const char *modelSD, int lenSD, const char *modelSkintone, int lenSkintone, const char *modelAicolor, int lenAicolor, int bUseAngroidGPU, const char *apikey, const char *certificate, int *statusCertificate);
1135 
1136 
1154 int PFC_LoadScenePresets(PFCENGINE* pEngine, const char *filePath, int modelUuid = 0, int *presetUuid = NULL, int arrProfileUUIDLen = 0);
1155 
1174 int PFC_LoadScenePresetsFromStream(PFCENGINE* pEngine, const char *buf, int lenBuf, int modelUuid = 0, int *presetUuid = NULL, int arrProfileUUIDLen = 0);
1175 
1176 
1185 int PFC_ReadScenePreset(PFCPARAM &param, PFCENGINE *pEngineAI, int scene);
1186 
1194 int PFC_GetScene(PFCPROFILE precalc, int *version);
1195 
1196 
1206 bool PFC_GetSceneDetectionEngineInfo(PFCENGINE* pEngine,int *groupUUID, int *arrProfileUUID, int *arrProfileUUIDLen);
1207 
1210 typedef struct {
1211  char name[250];
1214 
1231 bool PFC_GetSceneDescription(PFCENGINE* pEngine, int index, PFCSCENEDESCRIPTION* sceneDescription);
1232 
1233 
1241 void PFC_GetLastSceneProperties(PFCENGINE* pEngine, int* lastSceneLabel, int* lastSceneConfidence = NULL);
1242 
1249 
1256 const char* PFC_GetAutoSkintoneParameters(int skintoneType, int *strengthLut, int *strengthExposure);
1257 
1265 
1266 #ifdef EYEQINTERNAL
1267 #include "../Header-internal/PerfectlyClearPro-internal.h"
1268 #endif
1269 
1270 #ifdef __cplusplus
1271 }
1272 #endif
1273 #endif //__PERFECTLYCLEARPRO_H__
PFC_WasmSetCertificate
int PFC_WasmSetCertificate(PFCENGINE *pEngine, const char *clientAPIKey, const char *certificate)
Pass certificate to authorize WASM SDK usage Certificate (2048 string) should match clientAPIKey and ...
PFCFaceRect::childLevel
int childLevel
We don't implement this.
Definition: PerfectlyClearPro.h:239
PFCV3PARAM::iFinishSaturation
int iFinishSaturation
Saturation correction amount.
Definition: PerfectlyClearPro.h:609
TINTCORRECT_STRONGEST
@ TINTCORRECT_STRONGEST
Highest sensitivity level of tint detection.
Definition: PerfectlyClearPro.h:270
PFCCOREPARAM::iSkintoneStrengthExposure
int iSkintoneStrengthExposure
Strength of exposure bias -50 .. 50 applied with input skintone correction.
Definition: PerfectlyClearPro.h:479
PFCIMAGEPROFILE::CORE_Status
PFCCORE_STATUS CORE_Status
Status code for CORE pre-calc analysis.
Definition: PerfectlyClearPro.h:662
APPLY_ERROR_PROFILE_MISSING
@ APPLY_ERROR_PROFILE_MISSING
-1 Pointer pProfile is NULL
Definition: PerfectlyClearPro.h:395
PFCFBPARAM::bSlim
BOOL bSlim
Set to TRUE to enable face slimming.
Definition: PerfectlyClearPro.h:505
PFCCOREPARAM::bLightDiffusion
BOOL bLightDiffusion
Set to TRUE to enable light diffusion during DCF correction.
Definition: PerfectlyClearPro.h:468
PFC_GetVersion
void PFC_GetVersion(char *buf, int *len, bool bFormatted=false)
Get info string with version and features.
PFC_HasFaceBeautification
bool PFC_HasFaceBeautification(PFCENGINE *pEngine)
Check if Face Beautification is available.
PFC_CORE_MONOLITHIMAGE
@ PFC_CORE_MONOLITHIMAGE
5 Image skipped due to legacy clipart detection method
Definition: PerfectlyClearPro.h:359
PFC_RE_FULLRES_REQUIRED
@ PFC_RE_FULLRES_REQUIRED
2 Source image (pImage) is missing
Definition: PerfectlyClearPro.h:383
PFCV3PARAM::bPreprocessEV
bool bPreprocessEV
Enable EV correction (Image Ambulance)
Definition: PerfectlyClearPro.h:587
PFC_GetSceneDetectionEngineInfo
bool PFC_GetSceneDetectionEngineInfo(PFCENGINE *pEngine, int *groupUUID, int *arrProfileUUID, int *arrProfileUUIDLen)
Get loaded (with PFC_LoadAIEngine) categorization model info Call first with arrProfileUUID=NULL to g...
PFCV3PARAM
Struct describing V3 parameters.
Definition: PerfectlyClearPro.h:585
PFC_RE_CANCELLED
@ PFC_RE_CANCELLED
7 Process cancelled
Definition: PerfectlyClearPro.h:388
PFCCOREMask
Struct describing mask for grad filter, all coordinates are relative (Y/height, X/width) in final cro...
Definition: PerfectlyClearPro.h:570
PFCV3PARAM::iFinishTemp
int iFinishTemp
Temp correction amount.
Definition: PerfectlyClearPro.h:602
PFCAIFEATURE
PFCAIFEATURE
Flags defining type of model(s) to load with PFC_LoadAIEngine().
Definition: PerfectlyClearPro.h:1095
TINTCORRECT_AGGRESSIVE
@ TINTCORRECT_AGGRESSIVE
Aggressive detection of tint.
Definition: PerfectlyClearPro.h:267
PFCFBPARAM::iBlush
int iBlush
Blush level. Range 0 to 100.
Definition: PerfectlyClearPro.h:526
ENGINESTATUS_FB_LIBRARY_LOAD_FAIL
@ ENGINESTATUS_FB_LIBRARY_LOAD_FAIL
If set, the library is unable to load the SFB library.
Definition: PerfectlyClearPro.h:158
PFCSCENEDESCRIPTION::profileUUID
int profileUUID
utf8-encoded name
Definition: PerfectlyClearPro.h:1212
CALC_FB
@ CALC_FB
Calculates for Face Beautification.
Definition: PerfectlyClearPro.h:166
PFC_GetScene
int PFC_GetScene(PFCPROFILE precalc, int *version)
Get scene detection label from profile obtained with PFC_Calc For this to work you need to pass AI_SC...
HIGH_CONTRAST
@ HIGH_CONTRAST
Optimized to bring higher contrast to the image.
Definition: PerfectlyClearPro.h:276
CALC_SKINTONE
@ CALC_SKINTONE
Calculate Skintone Detection.
Definition: PerfectlyClearPro.h:176
DP2PARAM::iSaturation
int iSaturation
-100 .. 100
Definition: PerfectlyClearPro.h:634
PRESET_INTELLIGENTAUTO
@ PRESET_INTELLIGENTAUTO
Intelligent Auto - this has been superceded by iAuto 2019 and is here for backwards compatability....
Definition: PerfectlyClearPro.h:187
PFC_SetProtectionPath
int PFC_SetProtectionPath(const char *utf8FolderPath, const char *liceseCode=NULL)
Set path to location of SDK License files This enables license protection and allows activation using...
PFCFBPARAM::iSlim
int iSlim
Face slimming level. Range 0 to 100.
Definition: PerfectlyClearPro.h:506
CALC_NOFAE
@ CALC_NOFAE
Skip Face Aware Exposure pre-calculations during Core pre-calculations.
Definition: PerfectlyClearPro.h:170
PFC_NR_ERRSETTINGS
@ PFC_NR_ERRSETTINGS
5 Invalid parameter
Definition: PerfectlyClearPro.h:347
PFC_PixelFormat64bppABGR
@ PFC_PixelFormat64bppABGR
Definition: PerfectlyClearPro.h:152
PFCCOREPARAM::fSharpenScale
float fSharpenScale
Sharpening intensity. This value controls how much sharpening to be applied. Range 0....
Definition: PerfectlyClearPro.h:461
PFCFBPARAM::iTeethLevel
int iTeethLevel
Teeth whitening level. Range 0 to 100.
Definition: PerfectlyClearPro.h:502
AGGRESSIVENESS_AGGRESSIVE
@ AGGRESSIVENESS_AGGRESSIVE
More aggressive in exposure correction.
Definition: PerfectlyClearPro.h:292
DP2PARAM::iContrast
int iContrast
-100 .. 100
Definition: PerfectlyClearPro.h:633
PFCRECT::height
int height
height of this rect.
Definition: PerfectlyClearPro.h:207
PFC_CORE_NOTENABLED
@ PFC_CORE_NOTENABLED
1 Feature not enabled
Definition: PerfectlyClearPro.h:355
PFC_GetFaceInfo
bool PFC_GetFaceInfo(PFCIMAGEPROFILE *pImageProfile, PFCFBFACEINFO *pFace, int index)
Utility function to query geometry of detected faces.
PFCCOREPARAM::iSplitColorCold
int iSplitColorCold
Enhance cold tones.
Definition: PerfectlyClearPro.h:483
APPLY_SUCCESS
@ APPLY_SUCCESS
0 Success.
Definition: PerfectlyClearPro.h:394
PFC_ReleaseAddonPath
void PFC_ReleaseAddonPath()
Releases resources from PFC_SetAddonPath function call.
PFCIMAGEPROFILE::pRedEyeParam
PFCINTERNAL pRedEyeParam
Internal use only.
Definition: PerfectlyClearPro.h:658
PFCCOREPARAM::iContrast
int iContrast
Intensity of contrast or depth. Range 0 to 100.
Definition: PerfectlyClearPro.h:455
PFCV3PARAM::iOutLUTcontrast
int iOutLUTcontrast
lutOutput contrast -100 .. 100
Definition: PerfectlyClearPro.h:622
PFC_FB_SUCCESS
@ PFC_FB_SUCCESS
0 Success
Definition: PerfectlyClearPro.h:366
PFC_GetAutoSkintoneParameters
const char * PFC_GetAutoSkintoneParameters(int skintoneType, int *strengthLut, int *strengthExposure)
Returns auto parameters (lut GUID, core.iSkintoneStrengthLut and core.iSkintoneStrengthExposure) for ...
PFCFBPARAM::eSmoothType
SKINSMOOTHTYPE eSmoothType
See enum definition of SKINSMOOTHTYPE.
Definition: PerfectlyClearPro.h:494
APPLY_BADFORMAT
@ APPLY_BADFORMAT
-5 Pixel format not supported
Definition: PerfectlyClearPro.h:399
PFCCOREMask::transparency
float transparency
overall transparency applied to the whole mask (strength 100 means transparency 0....
Definition: PerfectlyClearPro.h:579
PFCCOREPARAM::bSelectiveColor
BOOL bSelectiveColor
Apply Selective Color HSL correction.
Definition: PerfectlyClearPro.h:484
PFCREPARAM::bEnabled
BOOL bEnabled
Set to TRUE to enable red eye removal.
Definition: PerfectlyClearPro.h:548
LIPSHARPENTYPE_FINE
@ LIPSHARPENTYPE_FINE
Fine touch of sharpening.
Definition: PerfectlyClearPro.h:334
PFCCOREPARAM::bUseFAE
BOOL bUseFAE
Set to TRUE (recommended) to enable Face Aware Exposure selection. Recommended exposure will be calcu...
Definition: PerfectlyClearPro.h:463
PFC_FAEFaceCount
int PFC_FAEFaceCount(PFCIMAGEPROFILE *pImageProfile)
Return number of faces detected during Face Aware Exposure analysis.
PFC_TrackSave
void PFC_TrackSave(const char *clientAPIKey)
Report image save event from WASM SDK.
PFCENGINE::pEngine
PFCINTERNAL pEngine
Pointer to binary definition of the processing engine.
Definition: PerfectlyClearPro.h:252
PFCFaceRect::ptEyeL
PFCPOINT ptEyeL
Specifies the x,y coordinates of the left eye, in fixed-point arithmetics (10 bit precision).
Definition: PerfectlyClearPro.h:233
PFCFBPARAM::iEyeCirc
int iEyeCirc
Eye circle removal level. Range 0 to 100.
Definition: PerfectlyClearPro.h:500
PFCFBPARAM::bEnlarge
BOOL bEnlarge
Set to TRUE to enable eye enlargement.
Definition: PerfectlyClearPro.h:495
PFCRE_STATUS
PFCRE_STATUS
Enumeration defining status of Red Eye pre-calculation.
Definition: PerfectlyClearPro.h:380
PFC_CORE_CANCELLED
@ PFC_CORE_CANCELLED
2 Process cancelled
Definition: PerfectlyClearPro.h:356
PRESET_BEAUTIFYPLUS
@ PRESET_BEAUTIFYPLUS
Beautify Plus provides stronger beautification corrections. This is in the 'Perfectly Clear Essential...
Definition: PerfectlyClearPro.h:184
PRESET_DETAILS
@ PRESET_DETAILS
iAuto Details - legacy preset for backwards compability. This is in the 'Athentech Legacy' group in E...
Definition: PerfectlyClearPro.h:185
PFC_FB_NOT_AVAILABLE
@ PFC_FB_NOT_AVAILABLE
10 Face beautification feature not available
Definition: PerfectlyClearPro.h:376
PFC_LoadAIEngine
int PFC_LoadAIEngine(PFCENGINE *pEngineAI, unsigned int aifeatures, const char *binPath)
Load AI models into engine. Takes time and memory. Use single PFCENGINE with loaded modules,...
PFCFBFACEINFO::rightEye
PFCPOINT rightEye
Point of right eye in detected face.
Definition: PerfectlyClearPro.h:214
PFC_COMPOSITE_FAILED
@ PFC_COMPOSITE_FAILED
detection failed or not available, do not perform composite segmentation
Definition: PerfectlyClearPro.h:421
APPLY_WASM_INVALID_CERTIFICATE
@ APPLY_WASM_INVALID_CERTIFICATE
-9 WASM certificate invalid or not matching APIKEY and domain
Definition: PerfectlyClearPro.h:403
SKINSMOOTHTYPE_SUBTLE
@ SKINSMOOTHTYPE_SUBTLE
The subtle correction removes the wrinkles and spots alone while it keeps the texture of the face unc...
Definition: PerfectlyClearPro.h:316
PFCV3PARAM::iFinishPositiveContrast
int iFinishPositiveContrast
Positive Contrast correction amount.
Definition: PerfectlyClearPro.h:612
PFCIMAGEPROFILE::FB_Status
PFCFB_STATUS FB_Status
Status code for Face Beautification pre-calc analysis.
Definition: PerfectlyClearPro.h:664
PFCFACERECT
struct PFCFaceRect PFCFACERECT
Structure defining face attributes detected by the Face Detection library.
PFC_CORE_INSUFFICIENTMEMORY
@ PFC_CORE_INSUFFICIENTMEMORY
4 Process aborted because of insufficient memory
Definition: PerfectlyClearPro.h:358
PFC_COMPOSITE_TYPE_1
@ PFC_COMPOSITE_TYPE_1
is composite, do segmentation of type 1
Definition: PerfectlyClearPro.h:425
APPLY_WASM_INVALID_APIKEY
@ APPLY_WASM_INVALID_APIKEY
-8 Wrong APIKEY for WASM certificate
Definition: PerfectlyClearPro.h:402
ENGINESTATUS_FB_FUNCTION_NOT_FOUND
@ ENGINESTATUS_FB_FUNCTION_NOT_FOUND
If set, the library is unable to locate SFB functions from the loaded library.
Definition: PerfectlyClearPro.h:159
PFCFaceRect::rcMouth
PFCRECT rcMouth
Specifies the bounding rectangle of the mouth.
Definition: PerfectlyClearPro.h:232
SKINTONINGTYPE_WHITE
@ SKINTONINGTYPE_WHITE
Whitens (bleaches) face. Recommended mainly for darker skin.
Definition: PerfectlyClearPro.h:324
PFCREPARAM
Structure encapsulating Red Eye Correction parameters.
Definition: PerfectlyClearPro.h:547
SKINSMOOTHTYPE_DEFAULT
@ SKINSMOOTHTYPE_DEFAULT
This type of correction provides a more uniform appearance to the complexion. It combines the natural...
Definition: PerfectlyClearPro.h:317
PFC_PixelFormat32bppARGB
@ PFC_PixelFormat32bppARGB
Definition: PerfectlyClearPro.h:124
PFC_FB_NO_CORRECTION
@ PFC_FB_NO_CORRECTION
8 No correction occur during process
Definition: PerfectlyClearPro.h:374
PFC_LoadAIEngineNative
int PFC_LoadAIEngineNative(PFCENGINE *pEngineAI, unsigned int aifeatures, const char *modelDynamic, int lenDynamic, const char *modelSD, int lenSD, const char *modelSkintone, int lenSkintone, const char *modelAicolor, int lenAicolor, int bUseAngroidGPU, const char *apikey, const char *certificate, int *statusCertificate)
Loads/reloads platform-native (CoreML or TFLite) version of AI models into engine....
PFCCOREPARAM
Structure encapsulating the CORE processing parameters.
Definition: PerfectlyClearPro.h:444
PFCFaceRect::widthImage
int widthImage
image width
Definition: PerfectlyClearPro.h:244
PFCPARAM::nr
PFCNRPARAM nr
Noise reduction corrections.
Definition: PerfectlyClearPro.h:644
PFCINTERNAL
#define PFCINTERNAL
Internal used pointer type.
Definition: PerfectlyClearPro.h:32
PFCFaceRect::ptEyeR
PFCPOINT ptEyeR
Specifies the x,y coordinates of the right eye, in fixed-point arithmetics (10 bit precision).
Definition: PerfectlyClearPro.h:234
PFCCOREPARAM::iSkintoneStrengthLut
int iSkintoneStrengthLut
Strength of lut correction 0 .. 100 applied with input skintone correction.
Definition: PerfectlyClearPro.h:478
PFCCOREPARAM::fLightDiffusion
float fLightDiffusion
Scale value to control intensity of light diffusion correction.
Definition: PerfectlyClearPro.h:469
PFC_PROGRESS
BOOL(* PFC_PROGRESS)(int iPercent)
Definition: PerfectlyClearPro.h:37
PFCRECT::width
int width
width of this rect.
Definition: PerfectlyClearPro.h:206
PFCFBPARAM
Structure encapsulating Face Beautification parameters.
Definition: PerfectlyClearPro.h:489
PFCPARAM
Struct PFCPARAM the master structure of all processing parameters.
Definition: PerfectlyClearPro.h:641
PFC_RE_INVALID_PARAMETER
@ PFC_RE_INVALID_PARAMETER
5 Invalid parameter
Definition: PerfectlyClearPro.h:386
PFC_SetSingleThreadedEngine
void PFC_SetSingleThreadedEngine(PFCENGINE *p, bool bSingleThreaded)
Force processing to be single threaded.
PFCPARAM::fb
PFCFBPARAM fb
Face Beautification corrections.
Definition: PerfectlyClearPro.h:643
PFC_RE_NOT_FOUND
@ PFC_RE_NOT_FOUND
3 Red eye not found
Definition: PerfectlyClearPro.h:384
PFCPARAM::re
PFCREPARAM re
Red Eye Removal.
Definition: PerfectlyClearPro.h:645
PFCRECT::top
int top
y in point corrdinate of this rect.
Definition: PerfectlyClearPro.h:205
AI_CORRECTIONS
@ AI_CORRECTIONS
Loads AI-based corrections model, requiring the file dynamic.pnn
Definition: PerfectlyClearPro.h:1097
CALC_AICOLOR
@ CALC_AICOLOR
Calculate Auto WB params.
Definition: PerfectlyClearPro.h:177
PFCFBFACEINFO::face
PFCRECT face
Bounding rectangle of detected face.
Definition: PerfectlyClearPro.h:215
PFCNRPARAM::bEnabled
BOOL bEnabled
Set to TRUE to enable noise removal.
Definition: PerfectlyClearPro.h:533
PFC_COMPOSITE_PHOTO
@ PFC_COMPOSITE_PHOTO
is photo, do not perform composite segmentation
Definition: PerfectlyClearPro.h:423
PFCCORE_STATUS
PFCCORE_STATUS
Enumeration defining status of Core pre-calculation.
Definition: PerfectlyClearPro.h:353
MASK_ROUNDRECT
@ MASK_ROUNDRECT
rounded rect
Definition: PerfectlyClearPro.h:565
SKINSMOOTHTYPE
SKINSMOOTHTYPE
Enumeration defining types of Skin Smoothing correction.
Definition: PerfectlyClearPro.h:315
BIASMODE
BIASMODE
Enumeration defining BIAS analysis mode.
Definition: PerfectlyClearPro.h:297
PFCIMAGE::height
int height
Pixel height of image.
Definition: PerfectlyClearPro.h:259
PFCCOREPARAM::fDCF
float fDCF
Scale value to control intensity of Digital Color Fidelity correction. Range 0.0 to 1....
Definition: PerfectlyClearPro.h:473
PRESET_IAUTO_21_ASIA
@ PRESET_IAUTO_21_ASIA
Based on iAuto 21, but with brighter Skin & Depth Bias for truer skin tone.
Definition: PerfectlyClearPro.h:191
PFCCOREMask::centerX
float centerX
X of center.
Definition: PerfectlyClearPro.h:572
SKINMODE_BODY
@ SKINMODE_BODY
Apply correction on most skin regions regardless they are linked with a face or not.
Definition: PerfectlyClearPro.h:310
CALC_ALL
@ CALC_ALL
Calculates for all classic features, all of the above.
Definition: PerfectlyClearPro.h:168
PFCV3PARAM::iColorVibrancy
int iColorVibrancy
Color Vibrancy amount.
Definition: PerfectlyClearPro.h:592
PRESET_IAUTO_PEOPLE
@ PRESET_IAUTO_PEOPLE
New default preset for 2023 - same corrections as iAuto People from the Universal AI Preset Selection...
Definition: PerfectlyClearPro.h:192
PFCV3PARAM::bDynamic
BOOL bDynamic
Enable Dynamic correction.
Definition: PerfectlyClearPro.h:618
PFCFBFACEINFO::leftEye
PFCPOINT leftEye
Point of left eye in detected face.
Definition: PerfectlyClearPro.h:213
DP2PARAM::iDeltaB
int iDeltaB
-100 .. 100
Definition: PerfectlyClearPro.h:631
PFCCOREMask::centerY
float centerY
Y of center.
Definition: PerfectlyClearPro.h:573
PFC_SetAddonPath
void PFC_SetAddonPath(const char *utf8AddonPath)
Set path to directory containing runtime add-ons such as .looks file(s) This enables searching for ad...
PFCIMAGEPROFILE::pPfcParam
PFCINTERNAL pPfcParam
Internal use only.
Definition: PerfectlyClearPro.h:656
PFCPRESETID
PFCPRESETID
ENUM for presets support by this SDK.
Definition: PerfectlyClearPro.h:181
PFCV3PARAM::iFinishHighlights
int iFinishHighlights
Highlights correction amount.
Definition: PerfectlyClearPro.h:607
SELECTIVECOLOR
Structure holding selective color correction params.
Definition: PerfectlyClearPro.h:433
PFC_AutoCorrectPreset
int PFC_AutoCorrectPreset(PFCIMAGE *pImage, PFCIMAGE *pImageds, PFCPRESETID id=PRESET_IAUTO_PEOPLE, int iISO=-1, char *pCameraModel=NULL, BOOL bFastFAE=FALSE, PFC_PROGRESS progfn=NULL, PFCENGINE *pEngineAI=NULL)
Single function to perform Perfectly Clear corrections.
PFCV3PARAM::lutOutput
PFC3DLutInfo lutOutput
LUT data to apply.
Definition: PerfectlyClearPro.h:599
PFCCOREPARAM::eTintMode
TINTCORRECTION eTintMode
ENUM value defined in TINTCORRECTION. It sets the aggressiveness of Tint Removal.
Definition: PerfectlyClearPro.h:447
CALC_RE
@ CALC_RE
Calculates for Red Eye Removal.
Definition: PerfectlyClearPro.h:167
APPLY_WASM_CERTIFICATE_WRONG_VERSION
@ APPLY_WASM_CERTIFICATE_WRONG_VERSION
-11 Wrong format version of WASM certificate
Definition: PerfectlyClearPro.h:405
PFC_NR_CANCELLED
@ PFC_NR_CANCELLED
3 Process cancelled
Definition: PerfectlyClearPro.h:345
PFCIMAGE::stride
int stride
Byte width of each scanline.
Definition: PerfectlyClearPro.h:260
PFCV3PARAM::iDeltaB
int iDeltaB
Delta B correction amount.
Definition: PerfectlyClearPro.h:616
MASK_BOTTOM
@ MASK_BOTTOM
linear from 1.0 on bottom
Definition: PerfectlyClearPro.h:564
PFCPARAM::v3
PFCV3PARAM v3
V3 Corrections.
Definition: PerfectlyClearPro.h:647
PFCV3PARAM::iFinishTint
int iFinishTint
Tint correction amount.
Definition: PerfectlyClearPro.h:603
PFCPARAM::core
PFCCOREPARAM core
Core corrections to apply.
Definition: PerfectlyClearPro.h:642
PFCFBPARAM::bLipSharpen
BOOL bLipSharpen
Set to TRUE to enable lip sharpening.
Definition: PerfectlyClearPro.h:522
PFCV3PARAM::iFinishContrast
int iFinishContrast
Contrast correction amount.
Definition: PerfectlyClearPro.h:611
PFC_NR_FULLRES_REQUIRED
@ PFC_NR_FULLRES_REQUIRED
2 Source image (pImage) is missing
Definition: PerfectlyClearPro.h:344
PFCCOREPARAM::iVibrancy
int iVibrancy
Degree of color vibrancy. This value will only be use when bVibrancy is TRUE. Very large values can p...
Definition: PerfectlyClearPro.h:451
PFCAPPLYSTATUS
PFCAPPLYSTATUS
Enumeration defining return code from the Apply() function.
Definition: PerfectlyClearPro.h:393
PFCCOREMask::width
float width
radial/rounded: w of bounding rect, linear: ignored
Definition: PerfectlyClearPro.h:574
PFCFaceRect::blinkLevelR
int blinkLevelR
Right eye Blink level.
Definition: PerfectlyClearPro.h:238
PFCCORE_MASK_TYPE
PFCCORE_MASK_TYPE
Enumeration describing mapping of PFCMask and PFC_MASK_TYPE with 'PFC' -> 'PFCCORE'.
Definition: PerfectlyClearPro.h:559
PFC_CORE_NOSOURCEIMAGE
@ PFC_CORE_NOSOURCEIMAGE
3 Source image (pImage) is missing
Definition: PerfectlyClearPro.h:357
PFCIMAGEPROFILE
Struct defining an image profile as calculated from PFC_Calc() function.
Definition: PerfectlyClearPro.h:655
PFCFaceRect::angle
int angle
Roll angle of the face, from -179 to 180 degrees. 0 degrees means the face it oriented "normally",...
Definition: PerfectlyClearPro.h:235
PFCCOREMask::feather
float feather
relative length of gradient, from where it starts (1.0) to where it is 0.0,
Definition: PerfectlyClearPro.h:577
PFC_RE_NOTENABLED
@ PFC_RE_NOTENABLED
1 Feature not enabled
Definition: PerfectlyClearPro.h:382
PFCRECT
Struct defining a rectangle.
Definition: PerfectlyClearPro.h:203
DP2PARAM::iDeltaR
int iDeltaR
-100 .. 100
Definition: PerfectlyClearPro.h:629
PFC_NR_SUCCESS
@ PFC_NR_SUCCESS
0 Success
Definition: PerfectlyClearPro.h:342
PFCFaceRect::blinkLevel
int blinkLevel
Indicates the presence of a blink.
Definition: PerfectlyClearPro.h:236
PFCNRPARAM::iPreset
int iPreset
Definition: PerfectlyClearPro.h:534
PFC_REJECT_MONOLITH
@ PFC_REJECT_MONOLITH
Reject simple images that don't benefit from correction, like solid colors. This was the default befo...
Definition: PerfectlyClearPro.h:414
PFCV3PARAM::lutInputFoliageGreen
PFC3DLutInfo lutInputFoliageGreen
LUT data to apply.
Definition: PerfectlyClearPro.h:596
PFC_PixelFormat24bppRGB
@ PFC_PixelFormat24bppRGB
Definition: PerfectlyClearPro.h:53
PRESET_IAUTO_2019
@ PRESET_IAUTO_2019
iAuto for even better image corrections
Definition: PerfectlyClearPro.h:188
PFCCOREPARAM::bSkintoneAuto
BOOL bSkintoneAuto
if TRUE iSkintoneType is detected, StrengthLut|StrengthExposure are obtained from PFC_GetAutoSkintone...
Definition: PerfectlyClearPro.h:480
APPLY_CANCELLED
@ APPLY_CANCELLED
-3 Operation cancelled
Definition: PerfectlyClearPro.h:397
PFCIMAGEPROFILE::pSFBParam
PFCINTERNAL pSFBParam
Internal use only.
Definition: PerfectlyClearPro.h:659
LIPSHARPENTYPE_COARSE
@ LIPSHARPENTYPE_COARSE
Lip details are coarsely pronounced.
Definition: PerfectlyClearPro.h:336
PFCFBPARAM::iBlemish
int iBlemish
Blemish removal level. Range 0 to 100.
Definition: PerfectlyClearPro.h:504
CALC_COMPOSITE
@ CALC_COMPOSITE
Calculate Composite Detection.
Definition: PerfectlyClearPro.h:175
PFCFBPARAM::bBlemish
BOOL bBlemish
Set to TRUE to enable blemish removal.
Definition: PerfectlyClearPro.h:503
PFCFBPARAM::iDeFlash
int iDeFlash
Deflash level. Range 0 to 100.
Definition: PerfectlyClearPro.h:508
PFCPROFILE
#define PFCPROFILE
Define.
Definition: PerfectlyClearPro.h:676
PFCIMAGEPROFILE::Status
int Status
Definition: PerfectlyClearPro.h:667
PFC_LoadScenePresetsFromStream
int PFC_LoadScenePresetsFromStream(PFCENGINE *pEngine, const char *buf, int lenBuf, int modelUuid=0, int *presetUuid=NULL, int arrProfileUUIDLen=0)
Loads AI Scene Detection group presets from buffer, and optionally re-loading different Scene Detecti...
LIPSHARPENTYPE
LIPSHARPENTYPE
Enumeration defining Lip Sharpening mode.
Definition: PerfectlyClearPro.h:333
PFCCOREPARAM::bDynamicRange
BOOL bDynamicRange
Set to TRUE to enable dynamic range correction.
Definition: PerfectlyClearPro.h:470
PFC3DLutInfo
Struct.
Definition: PerfectlyClearPro.h:553
PFCIMAGE::width
int width
Pixel width of image.
Definition: PerfectlyClearPro.h:258
PFC_EnumFAEFaceRect
LPPFCFACERECT PFC_EnumFAEFaceRect(PFCIMAGEPROFILE *pImageProfile, LPPFCFACERECT p)
Utility function to enumerate faces detected during Face Aware Exposure analysis.
PFC_CORE_SUCCESS
@ PFC_CORE_SUCCESS
0 Success
Definition: PerfectlyClearPro.h:354
PFC_NR_NOTFOUND
@ PFC_NR_NOTFOUND
7 Noise not found
Definition: PerfectlyClearPro.h:349
PFCCOREMask
struct PFCCOREMask PFCCOREMask
Struct describing mask for grad filter, all coordinates are relative (Y/height, X/width) in final cro...
PFCFaceRect::rcEyeR
PFCRECT rcEyeR
Specifies the bounding rectangle of the right eye.
Definition: PerfectlyClearPro.h:231
PFCIMAGE::data
unsigned char * data
Pointer pointing to the first byte of image data buffer.
Definition: PerfectlyClearPro.h:262
PFCRECT::left
int left
x in point coordinate of this rect.
Definition: PerfectlyClearPro.h:204
PFCCOREPARAM::bUseAutomaticStrengthSelection
BOOL bUseAutomaticStrengthSelection
Set to TRUE (recommended default) to enable Automatic Strength Selection. Perfectly Clear will determ...
Definition: PerfectlyClearPro.h:462
MASK_RADIAL
@ MASK_RADIAL
ellipse
Definition: PerfectlyClearPro.h:562
PFCFBPARAM::iCatchLightMode
int iCatchLightMode
Definition: PerfectlyClearPro.h:511
PFC_COMPOSITE_V2_2
@ PFC_COMPOSITE_V2_2
v2 label 2. If all segmented rects are 2, process full page as photo, if mix of 2 and non-2 labels,...
Definition: PerfectlyClearPro.h:428
PFCFBPARAM::bBlush
BOOL bBlush
Set to TRUE to add blush.
Definition: PerfectlyClearPro.h:525
PFCNRPARAM
Structure encapsulating Noise Removal parameters.
Definition: PerfectlyClearPro.h:532
PFCFaceRect::blinkLevelL
int blinkLevelL
Left eye Blink level.
Definition: PerfectlyClearPro.h:237
PFCCOREPARAM::iLocalContrast
int iLocalContrast
Amount of Local Contrast to apply. Range 0 to 100.
Definition: PerfectlyClearPro.h:474
SKINTONINGTYPE
SKINTONINGTYPE
Enumeration defining type of Skin Toning correction.
Definition: PerfectlyClearPro.h:323
PFCSCENEDESCRIPTION
Scene description.
Definition: PerfectlyClearPro.h:1210
PFCFBPARAM::eSkinToningType
SKINTONINGTYPE eSkinToningType
See enum definition of SKINTONINGTYPE.
Definition: PerfectlyClearPro.h:521
PFC_FBFaceCount
int PFC_FBFaceCount(PFCPROFILE pImageProfile)
Return number of faces detected.
PFCFaceRect::yawAngle
int yawAngle
The Yaw or profile angle, from -90 (left profile) to 90 (right profile)
Definition: PerfectlyClearPro.h:242
PFC_FillAiAutoValues
PFCAPPLYSTATUS PFC_FillAiAutoValues(PFCPARAM &param, PFCIMAGEPROFILE *profile)
Fills PFCPARAM with final values depending on detection results contained in PFCIMAGEPROFILE,...
PFC_PixelFormat24bppBGR
@ PFC_PixelFormat24bppBGR
Definition: PerfectlyClearPro.h:66
PFCV3PARAM::iDeltaR
int iDeltaR
Delta R correction amount.
Definition: PerfectlyClearPro.h:614
AI_SKINTONE
@ AI_SKINTONE
Loads skintone detection model. This is enabled automatically when using AI_SCENE_DETECTION.
Definition: PerfectlyClearPro.h:1099
PFCIMAGE
Struct defining an image to be used in PFC library.
Definition: PerfectlyClearPro.h:257
PFCFBPARAM::iSkinToning
int iSkinToning
Skin Toning level. Range 0 to 100.
Definition: PerfectlyClearPro.h:519
PFCCOREMask::radius
float radius
only for MASK_ROUNDRECT - corner radius, relative to image w.
Definition: PerfectlyClearPro.h:576
PFCCOREPARAM::iBlackEnhancement
int iBlackEnhancement
Set luminance threshold for Noise Management. Range 0 to 25.
Definition: PerfectlyClearPro.h:449
BIAS_BRIGHTER_PREFERENCE
@ BIAS_BRIGHTER_PREFERENCE
Average usage with brighter tone, corresponds to "Bright" in PfC Products.
Definition: PerfectlyClearPro.h:301
PFCV3PARAM::iFinishBlacks
int iFinishBlacks
Blacks correction amount.
Definition: PerfectlyClearPro.h:605
PFCIMAGEPROFILE::RE_Status
PFCRE_STATUS RE_Status
Status code for Red Eye pre-calc analysis.
Definition: PerfectlyClearPro.h:665
PFCCOREPARAM::bVibrancy
BOOL bVibrancy
Set to true (recommended default) to enable Color Vibrancy in the library.
Definition: PerfectlyClearPro.h:450
PFC_NR_ERRBITMAP
@ PFC_NR_ERRBITMAP
4 Error reading image data
Definition: PerfectlyClearPro.h:346
PFCFBPARAM::iEnhanceLevel
int iEnhanceLevel
Eye enhancement level. Range 0 to 100.
Definition: PerfectlyClearPro.h:498
ENGINESTATUS_OK
@ ENGINESTATUS_OK
Engine created successfully.
Definition: PerfectlyClearPro.h:157
PFCCOREPARAM::fTintScale
float fTintScale
Scalar value of how much tint correction should be applied. Range 0.0 to 1.0.
Definition: PerfectlyClearPro.h:448
PFC_SetParam
void PFC_SetParam(PFCPARAM &param, PFCPRESETID id=PRESET_IAUTO_PEOPLE)
Initialize a PFCPARAM structure.
PFCV3PARAM::lutInputFoliageBrown
PFC3DLutInfo lutInputFoliageBrown
LUT data to apply.
Definition: PerfectlyClearPro.h:597
PFCENGINE
Struct defining an PFC engine instance.
Definition: PerfectlyClearPro.h:251
PFC_COMPOSITE_V2_1
@ PFC_COMPOSITE_V2_1
v2 label 1. Process this rect
Definition: PerfectlyClearPro.h:427
PFCFaceRect::confidence
int confidence
A numerical parameter describing the confidence attributed by the detection algorithm to each face.
Definition: PerfectlyClearPro.h:240
PFCFaceRect::rect
PFCRECT rect
Specifies the bounding rectangle of a face.
Definition: PerfectlyClearPro.h:229
DP2PARAM::fGamma
float fGamma
0.3 .. 4.0
Definition: PerfectlyClearPro.h:632
PFCCOREPARAM::eBiasMode
BIASMODE eBiasMode
Skin and depth bias control. Recommended value is BIAS_AVERAGE_PREFERENCE, unless you are printing to...
Definition: PerfectlyClearPro.h:456
PFC_LoadScenePresets
int PFC_LoadScenePresets(PFCENGINE *pEngine, const char *filePath, int modelUuid=0, int *presetUuid=NULL, int arrProfileUUIDLen=0)
Loads AI Scene Detection group presets from presets file, and optionally re-loading different Scene D...
PFC_DestroyEngine
void PFC_DestroyEngine(PFCENGINE *p)
Destroy PFCENGINE instance and release associated resources.
DP2PARAM::iDeltaG
int iDeltaG
-100 .. 100
Definition: PerfectlyClearPro.h:630
SKINMODE_FACE
@ SKINMODE_FACE
Apply correction ONLY on skin regions included in faces.
Definition: PerfectlyClearPro.h:309
PFC_ReadScenePreset
int PFC_ReadScenePreset(PFCPARAM &param, PFCENGINE *pEngineAI, int scene)
Fill param for the scene from the engine with previously loaded scene presets with PFC_LoadScenePrese...
PFCCOREPARAM::iHighlightPreservation
int iHighlightPreservation
Amount of Highlight Preservation to apply. Range 0 to 100.
Definition: PerfectlyClearPro.h:458
PFCV3PARAM::iNeutralDensity
int iNeutralDensity
Neutral density filter amout.
Definition: PerfectlyClearPro.h:591
PFC_AutoCorrect
int PFC_AutoCorrect(PFCIMAGE *pImage, PFCIMAGE *pImageds, PFCPARAM &param, int iISO=-1, char *pCameraModel=NULL, BOOL bFastFAE=FALSE, PFC_PROGRESS progfn=NULL, PFCENGINE *pEngineAI=NULL, BOOL bUseAutoSDPreset=FALSE)
Single function to perform Perfectly Clear correction.
BIAS_NONE
@ BIAS_NONE
Turn off bias correction.
Definition: PerfectlyClearPro.h:298
PFCCOREPARAM::bLocalContrast
BOOL bLocalContrast
Set to true to enable Local Contrast.
Definition: PerfectlyClearPro.h:475
TINTCORRECT_DEFAULT
@ TINTCORRECT_DEFAULT
Moderate level of tint detection.
Definition: PerfectlyClearPro.h:268
PFCCOREPARAM::bHighlightPreservation
BOOL bHighlightPreservation
Set to true to enable Highlight Preservation.
Definition: PerfectlyClearPro.h:459
PFC_COMPOSITE_SKIP
@ PFC_COMPOSITE_SKIP
is unsupported composite, skip processing
Definition: PerfectlyClearPro.h:422
DCF_STANDARD
@ DCF_STANDARD
For normal photo.
Definition: PerfectlyClearPro.h:283
PFCV3PARAM::iDynamicWB
int iDynamicWB
Strength of color component of Dynamic correction 0 .. 100.
Definition: PerfectlyClearPro.h:620
SKINSMOOTHTYPE_SUPERSMOOTH
@ SKINSMOOTHTYPE_SUPERSMOOTH
This is a more aggressive and effective correction where the appearance of the entire skin (including...
Definition: PerfectlyClearPro.h:318
PFC_ReleaseProfile
void PFC_ReleaseProfile(PFCPROFILE pProfile)
Release PFCPROFILE instance.
PFC_FB_FULLRES_REQUIRED
@ PFC_FB_FULLRES_REQUIRED
3 Source image (pImage) is missing
Definition: PerfectlyClearPro.h:369
PFC_REJECT_CLIPART
@ PFC_REJECT_CLIPART
Reject images classified as clipart, used by default.
Definition: PerfectlyClearPro.h:415
AGGRESSIVENESS
AGGRESSIVENESS
Enumeration defining Auto Exposure calculation modes.
Definition: PerfectlyClearPro.h:289
AGGRESSIVENESS_MODERATE
@ AGGRESSIVENESS_MODERATE
Moderate level of exposure correction.
Definition: PerfectlyClearPro.h:291
PFCCOREPARAM::bAbnormalTintRemoval
BOOL bAbnormalTintRemoval
Set to true to enable Abnormal Tint Removal. Recommended default is FALSE.
Definition: PerfectlyClearPro.h:446
PFCFBPARAM::bEyeCirc
BOOL bEyeCirc
Set to TRUE to enable eye circle removal.
Definition: PerfectlyClearPro.h:499
PFC_Apply
PFCAPPLYSTATUS PFC_Apply(PFCIMAGE *pImage, PFCENGINE *pEngine, PFCPROFILE pImageProfile, PFCPARAM &param, PFC_PROGRESS progfn=NULL, int iOpacity=100, void *pBGProfile=NULL)
Correct image with parameters.
AI_SCENE_DETECTION
@ AI_SCENE_DETECTION
Loads scene detection model, requiring one or two pnn files with filenames like pro_and_universal_202...
Definition: PerfectlyClearPro.h:1096
PFC_PixelFormat48bppRGB
@ PFC_PixelFormat48bppRGB
Definition: PerfectlyClearPro.h:94
CALC_CORE
@ CALC_CORE
Calculates for Perfectly Clear Core correction.
Definition: PerfectlyClearPro.h:164
PFCV3PARAM::iDeltaG
int iDeltaG
Delta G correction amount.
Definition: PerfectlyClearPro.h:615
PFC_PixelFormat48bppBGR
@ PFC_PixelFormat48bppBGR
Definition: PerfectlyClearPro.h:137
APPLY_ERROR_AI_CORRECTION_MISSING
@ APPLY_ERROR_AI_CORRECTION_MISSING
-13 Tried to apply AI-based correction but is not available
Definition: PerfectlyClearPro.h:407
PFCPOINT::x
int x
x coordinate of this point.
Definition: PerfectlyClearPro.h:197
PFCPOINT
Struct defining a point.
Definition: PerfectlyClearPro.h:196
PFC_GetSceneDescription
bool PFC_GetSceneDescription(PFCENGINE *pEngine, int index, PFCSCENEDESCRIPTION *sceneDescription)
Get the scene description for the given index number.
PFCFaceRect::FAE
int FAE[3]
Internal data for Face Aware Exposure.
Definition: PerfectlyClearPro.h:243
TINTCORRECTION
TINTCORRECTION
Enumeration defining different abnormal tint analysis mode.
Definition: PerfectlyClearPro.h:266
PFC_DetectCompositeImage
int PFC_DetectCompositeImage(PFCIMAGE *pImage, PFCENGINE *pEngine)
Run detection of composite image.
PFC_CreateEngine
PFCENGINE * PFC_CreateEngine()
Create PFCENGINE instance.
SKINTONINGTYPE_FOUNDATION
@ SKINTONINGTYPE_FOUNDATION
Adjust skin to user defined foundation color.
Definition: PerfectlyClearPro.h:328
SKINTONINGTYPE_TAN
@ SKINTONINGTYPE_TAN
Darkens skin, makes it look naturally tanned.
Definition: PerfectlyClearPro.h:327
SKINTONINGTYPE_WARM
@ SKINTONINGTYPE_WARM
Warms skin tone.
Definition: PerfectlyClearPro.h:326
CALC_FAEHISPEED
@ CALC_FAEHISPEED
Use Fast mode of Face Aware Exposure pre-calculations.
Definition: PerfectlyClearPro.h:171
HIGH_DEFINITION
@ HIGH_DEFINITION
Optimized to bring out more details in the shadows, more details in the highlights,...
Definition: PerfectlyClearPro.h:277
PFC_LoadAddonLooks
void PFC_LoadAddonLooks(PFCENGINE *pEngine, const char *addonLooksBuf, int buflen)
Load addon looks from contents of .looks file(s) Allows to use addon looks when filesystem is not ava...
PFCIMAGE::format
PFCPIXELFORMAT format
Defines byte order of input buffer.
Definition: PerfectlyClearPro.h:261
PFC_PixelFormat64bppARGB
@ PFC_PixelFormat64bppARGB
Definition: PerfectlyClearPro.h:109
PFC_AbnormalTintDetected
bool PFC_AbnormalTintDetected(PFCIMAGEPROFILE *pImageProfile, TINTCORRECTION eTintMethod)
Query if abnormal tint is detected.
PFC_GetLastSceneProperties
void PFC_GetLastSceneProperties(PFCENGINE *pEngine, int *lastSceneLabel, int *lastSceneConfidence=NULL)
Get last detected scene properties.
PFCV3PARAM::iFinishWhites
int iFinishWhites
Whites correction amount.
Definition: PerfectlyClearPro.h:608
PFCV3PARAM::lutInputCorrective
PFC3DLutInfo lutInputCorrective
LUT data to apply.
Definition: PerfectlyClearPro.h:594
MASK_TOP
@ MASK_TOP
linear from 1.0 on top
Definition: PerfectlyClearPro.h:563
AGGRESSIVENESS_CONSERVATIVE
@ AGGRESSIVENESS_CONSERVATIVE
Less aggressive in exposure correction.
Definition: PerfectlyClearPro.h:290
PFCCOREPARAM::bEnabled
BOOL bEnabled
Set to true to enable the entire Core correction.
Definition: PerfectlyClearPro.h:445
PFC_FB_NOTENABLED
@ PFC_FB_NOTENABLED
1 Feature not enabled
Definition: PerfectlyClearPro.h:367
PFCFBPARAM::colorBlush
unsigned int colorBlush
Blush color AARRGGBB default 0xFFFD7171 ({253, 113, 113})
Definition: PerfectlyClearPro.h:528
SKINTONINGTYPE_PALE
@ SKINTONINGTYPE_PALE
Makes skin look lighter and more pale.
Definition: PerfectlyClearPro.h:325
PFCFBPARAM::iCatchLight
int iCatchLight
Catchlight level. Range 0 to 100.
Definition: PerfectlyClearPro.h:510
SKINMODE
SKINMODE
Enumeration defining modes in Perfect Smooth analysis.
Definition: PerfectlyClearPro.h:308
PFCCOREPARAM::fBiasScale
float fBiasScale
Scalar value of how much BIAS correction should be applied. Range 0.0 to 1.0.
Definition: PerfectlyClearPro.h:457
BIAS_AVERAGE_PREFERENCE
@ BIAS_AVERAGE_PREFERENCE
For average usage, corresponds to "Normal" in PfC Products.
Definition: PerfectlyClearPro.h:300
PFC_Resize
PFCAPPLYSTATUS PFC_Resize(PFCIMAGE *pImageSrc, PFCIMAGE *pImageDst)
Resizes the input image to the dimensions specificed in by the output image. The output image must be...
PFCFEATURE
PFCFEATURE
ENUM controlling types of calculations at the pre-calculation stage.
Definition: PerfectlyClearPro.h:163
PFCCOREMask::height
float height
radial/rounded: h of bounding rect, linear: dist from centerY where grad becomes 1....
Definition: PerfectlyClearPro.h:575
PFCFBPARAM::bEnhance
BOOL bEnhance
Set to TRUE to enable eye enhancement.
Definition: PerfectlyClearPro.h:497
PFC_COMPOSITE_V2_0
@ PFC_COMPOSITE_V2_0
v2 label 0. Skip processing this segmented rect
Definition: PerfectlyClearPro.h:426
PFCV3PARAM::iFinishExposure
int iFinishExposure
Exposure correction amount.
Definition: PerfectlyClearPro.h:604
PFC_NR_MISC_ERROR
@ PFC_NR_MISC_ERROR
6 General error
Definition: PerfectlyClearPro.h:348
PFCFaceRect::smileLevel
int smileLevel
Indicates the presence of a smile.
Definition: PerfectlyClearPro.h:241
APPLY_INVALIDLICENSE
@ APPLY_INVALIDLICENSE
-6 Invalid License or validation failed
Definition: PerfectlyClearPro.h:400
PRESET_IAUTO_21
@ PRESET_IAUTO_21
The iAuto you love plus newly (2021) tuned settings for sharper images, accurate skin correction,...
Definition: PerfectlyClearPro.h:190
PFCIMAGEPROFILE::NR_Status
PFCNR_STATUS NR_Status
Status code for Noise Removal pre-calc analysis.
Definition: PerfectlyClearPro.h:663
PFCFBPARAM::iSmoothLevel
int iSmoothLevel
Face smoothing level. Range 0 to 100.
Definition: PerfectlyClearPro.h:492
PFC_ReadPresetsFromStream
int PFC_ReadPresetsFromStream(PFCPARAM &param, const char *s)
Load image processing settings from a char buffer.
PFCENGINESTATUS
PFCENGINESTATUS
ENUM for engine initialization status.
Definition: PerfectlyClearPro.h:156
PFCNR_STATUS
PFCNR_STATUS
Enumeration defining status of Noise Removal pre-calculation.
Definition: PerfectlyClearPro.h:341
PRESET_IAUTO_2019_RE
@ PRESET_IAUTO_2019_RE
iAuto 2019 with Red Eye correciton enabled
Definition: PerfectlyClearPro.h:189
MASK_ALL
@ MASK_ALL
1.0 everywhere (background)
Definition: PerfectlyClearPro.h:561
BGMASKPARAM
Struct defining parameters for building BG mask.
Definition: PerfectlyClearPro.h:682
PFCV3PARAM::iPreprocessEV
int iPreprocessEV
EV correction amount (Image Ambulace)
Definition: PerfectlyClearPro.h:588
PFCFBPARAM::bEnabled
BOOL bEnabled
Set to TRUE to enable entire face beautification.
Definition: PerfectlyClearPro.h:490
DP2PARAM::bEnable
BOOL bEnable
enables overall correction
Definition: PerfectlyClearPro.h:637
PFC_FB_NOT_EXECUTED
@ PFC_FB_NOT_EXECUTED
9 Not executed
Definition: PerfectlyClearPro.h:375
PFCCOMPOSITE
PFCCOMPOSITE
Enumeration defining results of PFC_DetectCompositeImage.
Definition: PerfectlyClearPro.h:420
PFC_RE_GEN_ERROR
@ PFC_RE_GEN_ERROR
4 General error
Definition: PerfectlyClearPro.h:385
APPLY_WASM_INVALID_DOMAIN
@ APPLY_WASM_INVALID_DOMAIN
-7 Wrong domain for WASM certificate
Definition: PerfectlyClearPro.h:401
PFCCOREMask::invert
bool invert
invert mask (x = 1.0 - x). NOTE: UI meaning of invert is: if one mask layer set invert = true
Definition: PerfectlyClearPro.h:580
PFCCOREPARAM::eDCFMode
DCFMODE eDCFMode
Select different class of DCF.
Definition: PerfectlyClearPro.h:472
PFC_COMPOSITE_TYPE_0
@ PFC_COMPOSITE_TYPE_0
is composite, do segmentation of type 0
Definition: PerfectlyClearPro.h:424
PFCFBPARAM::eSkinToningMode
SKINMODE eSkinToningMode
Use SKINMODE_FACE to apply correction ONLY on skin regions included in faces. Use SKINMODE_BODY to ap...
Definition: PerfectlyClearPro.h:520
CONTRASTMODE
CONTRASTMODE
Enumeration defining contrast mode.
Definition: PerfectlyClearPro.h:275
CALC_SCENE_DETECTION
@ CALC_SCENE_DETECTION
Calculate Scene Detection.
Definition: PerfectlyClearPro.h:174
PFCFaceRect::heightImage
int heightImage
image height
Definition: PerfectlyClearPro.h:245
PFCIMAGEPROFILE::pInternal
PFCINTERNAL pInternal
Internal use only.
Definition: PerfectlyClearPro.h:660
DP2PARAM::bAuto
BOOL bAuto
if true use ai-detected params instead
Definition: PerfectlyClearPro.h:636
PFC_Calc
PFCPROFILE PFC_Calc(PFCIMAGE *pImage, PFCIMAGE *pImageds, PFCENGINE *pEngine, unsigned int feature=CALC_ALL, int iISO=-1, char *pCameraModel=NULL, PFCPROFILE pImageProfile=NULL, PFC_PROGRESS progfn=NULL, int iRejectOption=PFC_REJECT_CLIPART, PFCENGINE *pEngineAI=NULL)
Perform initial analysis on images.
PFCFaceRect::rcEyeL
PFCRECT rcEyeL
Specifies the bounding rectangle of the left eye.
Definition: PerfectlyClearPro.h:230
PFC_ReleaseProtectionPath
void PFC_ReleaseProtectionPath()
Releases resources from PFC_SetProtectionPath function call.
PFCV3PARAM::iOutLUTsaturation
int iOutLUTsaturation
lutOutput saturation -100 .. 100
Definition: PerfectlyClearPro.h:623
PFCREJECTOPTION
PFCREJECTOPTION
Enumeration defining rejection flags.
Definition: PerfectlyClearPro.h:412
DCFMODE
DCFMODE
Enumeration defining DCF analysis mode.
Definition: PerfectlyClearPro.h:282
PFCFaceRect
Structure defining face attributes detected by the Face Detection library.
Definition: PerfectlyClearPro.h:228
PFC_IsNoiseDetected
bool PFC_IsNoiseDetected(PFCIMAGEPROFILE *pImageProfile, int iNoisePreset)
Query if noise is detected.
LIPSHARPENTYPE_MEDIUM
@ LIPSHARPENTYPE_MEDIUM
Stronger sharpening. Details are more pronounced.
Definition: PerfectlyClearPro.h:335
CALC_NR
@ CALC_NR
Calculates for Perfectly Clear Noise Removal.
Definition: PerfectlyClearPro.h:165
PFC_CORE_CLIPARTIMAGE
@ PFC_CORE_CLIPARTIMAGE
7 Image skipped due AI Clipart detection
Definition: PerfectlyClearPro.h:361
PFC_FB_CANCELLED
@ PFC_FB_CANCELLED
4 Process cancelled
Definition: PerfectlyClearPro.h:370
BIAS_AUTO
@ BIAS_AUTO
Apply auto calculated bias mode and strength.
Definition: PerfectlyClearPro.h:303
PFCENGINE::status
PFCENGINESTATUS status
Status of engine defined in PFCENGINESTATUS. For NO-SFB version the status will always be ENGINESTATU...
Definition: PerfectlyClearPro.h:253
DP2PARAM::iDensity
int iDensity
-100 .. 100 // Same meaning as DP2 Adjust params
Definition: PerfectlyClearPro.h:628
APPLY_LOOKS_MISSING
@ APPLY_LOOKS_MISSING
-12 tried to apply a LUT but the LUTs file was not found
Definition: PerfectlyClearPro.h:406
DCF_VIVID
@ DCF_VIVID
For more color vibrancy.
Definition: PerfectlyClearPro.h:284
PRESET_BEAUTIFY
@ PRESET_BEAUTIFY
Beautify - provides a good default set of corrections for portratis and other photos of people....
Definition: PerfectlyClearPro.h:183
DP2PARAM
Struct describing parameters used via AI White Balance.
Definition: PerfectlyClearPro.h:627
PFCCOREPARAM::iMinStrength
int iMinStrength
Min exposure that will be remommended by Auto Exposure.
Definition: PerfectlyClearPro.h:476
PFCV3PARAM::lutInputSky
PFC3DLutInfo lutInputSky
LUT data to apply.
Definition: PerfectlyClearPro.h:595
PFCCOREPARAM::eAggressiveness
AGGRESSIVENESS eAggressiveness
The desired level of lighting for Automatic Strength Selection to target at the Exposure Correction.
Definition: PerfectlyClearPro.h:464
BIAS_DONT_BOTHER
@ BIAS_DONT_BOTHER
Reserved, never use.
Definition: PerfectlyClearPro.h:302
PFCPIXELFORMAT
PFCPIXELFORMAT
defines the format of the image data
Definition: PerfectlyClearPro.h:40
PFCV3PARAM::iDynamic
int iDynamic
Dynamic correction strength 0 .. 100.
Definition: PerfectlyClearPro.h:619
PFC_FB_WARNING
@ PFC_FB_WARNING
2 Warning: face not detected
Definition: PerfectlyClearPro.h:368
PFCCOREPARAM::bContrast
BOOL bContrast
Set to TRUE to also apply Athentech's patented Medical Imaging contrast technology.
Definition: PerfectlyClearPro.h:453
PFC_RE_SUCCESS
@ PFC_RE_SUCCESS
0 Success
Definition: PerfectlyClearPro.h:381
PFC_PixelFormat32bppABGR
@ PFC_PixelFormat32bppABGR
Definition: PerfectlyClearPro.h:81
PFCPOINT::y
int y
y coordinate of this point.
Definition: PerfectlyClearPro.h:198
PFCCOREPARAM::iSplitColorWarm
int iSplitColorWarm
Enhance warm tones.
Definition: PerfectlyClearPro.h:482
PFCFBPARAM::bCatchLight
BOOL bCatchLight
Set to TRUE to enable catchlight removal.
Definition: PerfectlyClearPro.h:509
PFCFBPARAM::bTeeth
BOOL bTeeth
Set to TRUE to enable teeth whitening.
Definition: PerfectlyClearPro.h:501
PFCFBPARAM::bSmooth
BOOL bSmooth
Set to TRUE to enable face smoothing.
Definition: PerfectlyClearPro.h:491
PFC_NR_NOTENABLED
@ PFC_NR_NOTENABLED
1 Feature not enabled
Definition: PerfectlyClearPro.h:343
PFCV3PARAM::iFinishShadows
int iFinishShadows
Shadows correction amount.
Definition: PerfectlyClearPro.h:606
PRESET_VIVID
@ PRESET_VIVID
Vivid - good for landscapes and other general photography. This is in the 'Perfectly Clear Essentials...
Definition: PerfectlyClearPro.h:186
PFCFBPARAM::bDeFlash
BOOL bDeFlash
Set to TRUE to enable deflash.
Definition: PerfectlyClearPro.h:507
PFCCOREPARAM::iMaxStrength
int iMaxStrength
Use this value to limit the maximum Exposure to be applied on the Automatic Exposure Strength Selecti...
Definition: PerfectlyClearPro.h:465
PFCFB_STATUS
PFCFB_STATUS
Enumeration defining status of Face Beautification pre-calculation.
Definition: PerfectlyClearPro.h:365
MASK_NONE
@ MASK_NONE
0.0 everywhere, don't apply
Definition: PerfectlyClearPro.h:560
PFCCOREPARAM::iSkintoneAutoStrength
int iSkintoneAutoStrength
If bSkintonAuto is TRUE defines percents of iSkintoneStrengthLut iSkintoneStrengthExposure to apply,...
Definition: PerfectlyClearPro.h:481
PFCFBPARAM::iEnlargeLevel
int iEnlargeLevel
Eye enlargement level. Range 0 to 100.
Definition: PerfectlyClearPro.h:496
PFCIMAGEPROFILE::pNoiseParam
PFCINTERNAL pNoiseParam
Internal use only.
Definition: PerfectlyClearPro.h:657
PFCCOREPARAM::bDCF
BOOL bDCF
Set to TRUE to enable Digital Color Fidelity. Recommended value is FALSE.
Definition: PerfectlyClearPro.h:471
PFC_FB_ANALYSIS_FAILED
@ PFC_FB_ANALYSIS_FAILED
7 The face analysis did not complete successfully
Definition: PerfectlyClearPro.h:373
PFCCOREPARAM::bSharpen
BOOL bSharpen
Set to TRUE to enable sharpening.
Definition: PerfectlyClearPro.h:460
PFCV3PARAM::iDarkSkin
int iDarkSkin
Dark Skin output LUT amount.
Definition: PerfectlyClearPro.h:593
APPLY_WASM_EXPIRED_CERTIFICATE
@ APPLY_WASM_EXPIRED_CERTIFICATE
-10 WASM certificate has expired
Definition: PerfectlyClearPro.h:404
PFCCOREPARAM::fInfrared
float fInfrared
Scale value to control intensity of infrared correction. Range 0.0 to 1.0.
Definition: PerfectlyClearPro.h:467
PFC_REJECT_NONE
@ PFC_REJECT_NONE
Disable image rejection.
Definition: PerfectlyClearPro.h:413
PFC_ApplyStrengthToParam
void PFC_ApplyStrengthToParam(PFCPARAM &param, int strength)
Apply overall strength to parameters, same as Strength in Perfecly Clear products Reads the correctio...
PFC_ReadPresets
int PFC_ReadPresets(PFCPARAM &param, char *filename)
Load image processing settings from a .preset file. Use this function to load image processing settin...
PFC_FB_CREATE_ENGINE_FAILED
@ PFC_FB_CREATE_ENGINE_FAILED
6 Unable to create SFB Engine object for processing
Definition: PerfectlyClearPro.h:372
PRESET_NONE
@ PRESET_NONE
All off.
Definition: PerfectlyClearPro.h:182
PFC_GetRecommendedParam
void PFC_GetRecommendedParam(PFCIMAGEPROFILE *profile, PFCCOREPARAM *dst, PFCCOREPARAM *src)
Get recommended values of auto params using result of precalc.
PFC_RE_NO_MEMORY
@ PFC_RE_NO_MEMORY
6 Insufficient memory
Definition: PerfectlyClearPro.h:387
PFCFBPARAM::eSmoothMode
SKINMODE eSmoothMode
Use SKINMODE_FACE to apply correction ONLY on skin regions included in faces. Use SKINMODE_BODY to ap...
Definition: PerfectlyClearPro.h:493
PFCV3PARAM::iFinishVibrancy
int iFinishVibrancy
Vibrancy correction amount.
Definition: PerfectlyClearPro.h:610
PFCCOREPARAM::iSkintoneType
int iSkintoneType
Skintone type, pale to dark, 1 .. 10 defines type of input skintone correction.
Definition: PerfectlyClearPro.h:477
APPLY_NOSOURCE
@ APPLY_NOSOURCE
-4 Pointer pImage is NULL, source image missing
Definition: PerfectlyClearPro.h:398
AI_COMPOSITE
@ AI_COMPOSITE
Loads composite detection model, requiring the file composite.pnn
Definition: PerfectlyClearPro.h:1098
DP2PARAM::mode
int mode
reserved unused
Definition: PerfectlyClearPro.h:635
PFCCOREPARAM::iStrength
int iStrength
Set the strength of exposure correction. If Automatic Strength Selection is enabled,...
Definition: PerfectlyClearPro.h:452
PFCNRPARAM::iDetailOffset
int iDetailOffset
Offset to recommended level of preservation of details. Range -30 to 30.
Definition: PerfectlyClearPro.h:543
PFCFBFACEINFO
Structure defining face area detected from the SFB library.
Definition: PerfectlyClearPro.h:212
PFCFBPARAM::eLipSharpenType
LIPSHARPENTYPE eLipSharpenType
See definition of LIPSHARPENTYPE.
Definition: PerfectlyClearPro.h:524
TINTCORRECT_CONSERVATIVE
@ TINTCORRECT_CONSERVATIVE
Priority on minimum false positive detection.
Definition: PerfectlyClearPro.h:269
BIAS_ASIAN_PREFERENCE
@ BIAS_ASIAN_PREFERENCE
Fine tuned for Asian skin tone.
Definition: PerfectlyClearPro.h:299
CALC_CARTOON_DETECTOR
@ CALC_CARTOON_DETECTOR
Calculate legacy cartoon detector.
Definition: PerfectlyClearPro.h:172
PFCCOREPARAM::bInfrared
BOOL bInfrared
Set to TRUE (recommended default) to enable infrared correction. It's a good idea to turn Infrared Co...
Definition: PerfectlyClearPro.h:466
PFCCOREPARAM::eContrastMode
CONTRASTMODE eContrastMode
Select contrast mode.
Definition: PerfectlyClearPro.h:454
AI_COLOR
@ AI_COLOR
Loads AI White Balance color corrections model, requiring the file aicolor.pnn
Definition: PerfectlyClearPro.h:1100
PFC_TransposeExif
PFCAPPLYSTATUS PFC_TransposeExif(PFCIMAGE *pImageSrc, int iEXIFOrientation)
Transpose image upright from/to EXIF Orientation.
APPLY_ERROR_ENGINE_MISSING
@ APPLY_ERROR_ENGINE_MISSING
-2 Pointer pEngine is NULL
Definition: PerfectlyClearPro.h:396
PFC_FB_FUNCTION_ERROR
@ PFC_FB_FUNCTION_ERROR
5 Unable to locate function in the SFBEngine library
Definition: PerfectlyClearPro.h:371
CALC_NOTINTCALC
@ CALC_NOTINTCALC
Skip pre-calculations on Abnormal Tint Correction during Core pre-calculations.
Definition: PerfectlyClearPro.h:169
PFC_CORE_BELOWMINSIZE
@ PFC_CORE_BELOWMINSIZE
6 Image skipped, too small ( < 32 pixels )
Definition: PerfectlyClearPro.h:360
PFC_RE_NOT_SUPPORTED
@ PFC_RE_NOT_SUPPORTED
8 Not supported
Definition: PerfectlyClearPro.h:389
PFCFBPARAM::iLipSharpen
int iLipSharpen
Lip sharpening level. Range 0 to 100.
Definition: PerfectlyClearPro.h:523
PFCCOREMask::angle
float angle
CW.
Definition: PerfectlyClearPro.h:578
PFCFBPARAM::colorSkinToning
unsigned int colorSkinToning
Skin Toning color AARRGGBB default 0xFFF5BCA9 ({245, 188, 169})
Definition: PerfectlyClearPro.h:527