@class VNFaceRegionMap, NSNumber, VNFaceprint, NSDictionary, VNFaceTorsoprint, VNFaceLandmarks2D, VNFaceSegments, VNTorsoprint, VNFaceLegacyFaceCore, VNFaceAttributes, VNFaceLandmarks3D, NSArray, NSData, VNRequestSpecifier, VNFaceGaze, VNFaceScreenGaze; @interface VNFaceObservation : VNDetectedObjectObservation { VNFaceLandmarks2D *_cachedLandmarks; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _cachedLandmarksLock; VNFaceLandmarks2D *_cachedLandmarks65; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _cachedLandmarks65Lock; VNFaceLandmarks3D *_cachedLandmarks3d; struct os_unfair_lock_s { unsigned int _os_unfair_lock_opaque; } _cachedLandmarks3dLock; VNFaceprint *_faceprint; VNTorsoprint *_torsoprint; VNFaceTorsoprint *_faceTorsoprint; float _landmarkScore; BOOL _isBlinking; float _blinkScore; NSDictionary *_expressionsAndScores; float _faceJunkinessIndex; float _faceOrientationIndex; NSNumber *_faceCaptureQuality; } @property (retain, nonatomic) VNFaceLandmarks2D *landmarks; @property (nonatomic) struct _Geometry2D_rect2D_ { struct _Geometry2D_point2D_ { float x; float y; } origin; struct _Geometry2D_size2D_ { float height; float width; } size; } alignedBoundingBox; @property (nonatomic) float alignedRotationAngle; @property (readonly, nonatomic) NSData *landmarkPoints; @property (readonly, nonatomic) NSData *landmarkPoints65; @property (nonatomic) unsigned long long landmarksConstellation; @property (retain, nonatomic) NSArray *landmarkPrecisionEstimatesPerPoint; @property (readonly, nonatomic) NSData *landmarkPoints3d; @property (readonly, nonatomic) NSData *poseData; @property (nonatomic) float faceIdConfidence; @property (retain, nonatomic) NSData *alignedMeanShape; @property (retain, nonatomic) NSNumber *roll; @property (retain, nonatomic) NSNumber *yaw; @property (retain, nonatomic) NSNumber *pitch; @property (readonly, nonatomic) VNRequestSpecifier *landmarksOriginatingRequestSpecifier; @property (readonly, nonatomic) VNRequestSpecifier *landmarks3DOriginatingRequestSpecifier; @property (readonly, nonatomic) struct CGRect { struct CGPoint { double x; double y; } origin; struct CGSize { double width; double height; } size; } unalignedBoundingBox; @property (readonly, nonatomic) VNFaceLandmarks3D *landmarks3d; @property (readonly, nonatomic) VNFaceLandmarks2D *landmarks65; @property (readonly, nonatomic) VNFaceRegionMap *faceRegionMap; @property (readonly, nonatomic) VNFaceAttributes *faceAttributes; @property (readonly, copy, nonatomic) NSDictionary *expressionsAndConfidence; @property (readonly, nonatomic) VNFaceLegacyFaceCore *legacyFaceCore; @property (readonly, nonatomic) struct { void /* unknown type, empty encoding */ x0[4]; } pose; @property (readonly, nonatomic) VNRequestSpecifier *poseOriginatingRequestSpecifier; @property (readonly, nonatomic) struct { } poseQuaternion; @property (readonly, nonatomic) float nameConfidence; @property (nonatomic) unsigned long long faceId; @property (readonly, nonatomic) VNFaceSegments *faceSegments; @property (readonly, nonatomic) VNRequestSpecifier *faceCaptureQualityOriginatingRequestSpecifier; @property (readonly) float blinkScore; @property (readonly, nonatomic, getter=faceJunkinessIndex) float faceJunkinessIndex; @property (readonly, nonatomic, getter=faceOrientationIndex) float faceOrientationIndex; @property (readonly, nonatomic) VNFaceGaze *gaze; @property (readonly, nonatomic) VNFaceScreenGaze *faceScreenGaze; @property (readonly, nonatomic, getter=isBoundingBoxAligned) BOOL boundingBoxAligned; @property (readonly, nonatomic) NSNumber *faceCaptureQuality; + (BOOL)supportsSecureCoding; + (id)defaultOriginatingRequestClassNameForRequestRevision:(unsigned long long)a0; + (id)faceObservationWithRequestRevision:(unsigned long long)a0 boundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 roll:(id)a2 yaw:(id)a3 pitch:(id)a4; + (id)faceObservationWithRequestRevision:(unsigned long long)a0 boundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 alignedBoundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2 roll:(id)a3 yaw:(id)a4; + (id)faceObservationWithRequestRevision:(unsigned long long)a0 boundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 alignedBoundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2 roll:(id)a3 yaw:(id)a4 pitch:(id)a5; + (id)observationWithRequestRevision:(unsigned long long)a0 boundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1; + (id)faceObservationWithRequestRevision:(unsigned long long)a0 boundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 faceprint:(id)a2; + (id)faceObservationWithRequestRevision:(unsigned long long)a0 boundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 andAlignedBoundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2; + (BOOL)_exifOrientationFromFaceRollAngle:(float)a0 exifOrientation:(int *)a1 error:(id *)a2; + (id)faceObservationWithRequestRevision:(unsigned long long)a0 boundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 roll:(id)a2 yaw:(id)a3; + (id)faceObservationWithRequestRevision:(unsigned long long)a0 unalignedBoundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a1 alignedBoundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a2; + (BOOL)computeYawPitchRollFromPoseMatrix:(struct { void /* unknown type, empty encoding */ x0[4]; })a0 outputYaw:(float *)a1 outputPitch:(float *)a2 outputRoll:(float *)a3; - (id)debugQuickLookObject; - (unsigned long long)hash; - (void)encodeWithCoder:(id)a0; - (void)_initLocks; - (id)description; - (void).cxx_destruct; - (BOOL)isEqual:(id)a0; - (id)initWithCoder:(id)a0; - (BOOL)isBlinking; - (void)setGaze:(id)a0; - (id)faceprint; - (void)setFaceprint:(id)a0; - (BOOL)getComputedRectifyingTransform:(struct CGAffineTransform { double x0; double x1; double x2; double x3; double x4; double x5; } *)a0; - (id)VNEntityIdentificationModelPrintWithOriginatingRequestSpecifier:(id)a0 error:(id *)a1; - (id)VNPersonsModelFaceprintWithRequestRevision:(unsigned long long)a0 error:(id *)a1; - (void)_addPointsOfNamedRegion:(id)a0 inLandmarks:(id)a1 toPath:(struct CGPath { } *)a2 applyingAffineTransform:(struct CGAffineTransform { double x0; double x1; double x2; double x3; double x4; double x5; })a3; - (struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })alignedBoundingBoxAsCGRect; - (id)expressionsAndDetections; - (id)expressionsAndScores; - (id)faceTorsoprint; - (BOOL)getFaceEXIFOrientation:(int *)a0 error:(id *)a1; - (id)initWithRequestRevision:(unsigned long long)a0; - (BOOL)isRevision1DetectedRectanglesCompatible; - (float)landmarkScore; - (void)setBlinkScore:(float)a0; - (void)setBoundingBoxAligned:(BOOL)a0; - (void)setExpressionsAndScores:(id)a0; - (void)setFaceAttributes:(id)a0; - (void)setFaceCaptureQuality:(float)a0 originatingRequestSpecifier:(id)a1; - (void)setFaceJunkinessIndex:(float)a0; - (void)setFaceOrientationIndex:(float)a0; - (void)setFaceRegionMap:(id)a0; - (void)setFaceScreenGaze:(id)a0; - (void)setFaceSegments:(id)a0; - (void)setFaceTorsoprint:(id)a0; - (void)setIsBlinking:(BOOL)a0; - (void)setLandmark3DPointsData:(id)a0 originatingRequestSpecifier:(id)a1; - (void)setLandmarkPoints65Data:(id)a0 originatingRequestSpecifier:(id)a1; - (void)setLandmarkPointsData:(id)a0 originatingRequestSpecifier:(id)a1; - (void)setLandmarkScore:(float)a0; - (void)setLegacyFaceCore:(id)a0; - (void)setPoseData:(id)a0 originatingRequestSpecifier:(id)a1; - (void)setTorsoprint:(id)a0; - (void)setUnalignedBoundingBox:(struct CGRect { struct CGPoint { double x0; double x1; } x0; struct CGSize { double x0; double x1; } x1; })a0; - (id)torsoprint; - (void)updateFaceCaptureQuality:(id)a0; - (id)vn_cloneObject; @end