Skip to content

Vision macOS xcode14.0 beta1

Manuel de la Pena edited this page Jul 18, 2022 · 3 revisions

#Vision.framework https://github.com/xamarin/xamarin-macios/pull/15538

diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectBarcodesRequest.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectBarcodesRequest.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectBarcodesRequest.h	2022-02-23 10:57:47.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectBarcodesRequest.h	2022-05-31 15:03:53.000000000 -0400
@@ -58,10 +58,16 @@
 static const NSUInteger VNDetectBarcodesRequestRevision1 = 1;
 
 /*
-    @brief expands the set of detected symbologies and uses updated detection methods in comparisong revision 1
+    @brief expands the set of detected symbologies and uses updated detection methods in comparison to revision 1
  */
 API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0))
 static const NSUInteger VNDetectBarcodesRequestRevision2 = 2;
 
+/*
+    @brief uses updated detection methods in comparison to revision 1 and 2
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0))
+static const NSUInteger VNDetectBarcodesRequestRevision3 = 3;
+
 
 NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectContoursRequest.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectContoursRequest.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectContoursRequest.h	2022-02-23 10:57:46.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectContoursRequest.h	2022-05-31 15:03:52.000000000 -0400
@@ -13,7 +13,7 @@
 
 
 /*!
- @brief A request that will detect the countours for the edges in an image.
+ @brief A request that will detect the contours for the edges in an image.
 
  @discussion This request will produce a VNContoursObservation which describes the contours.
  */
@@ -23,7 +23,7 @@
 /*!
  @brief The amount to adjust the image's contrast by.
         A value of +1.0 means that the contrast is not adjusted. The default value is +2.0.
- @discussion Countour detection works best with high contrast images. The default value of 2 doubles the image's contrast to aid in detection. If the image already has a high contrast then this value should be set to 1.
+ @discussion Contour detection works best with high contrast images. The default value of 2 doubles the image's contrast to aid in detection. If the image already has a high contrast then this value should be set to 1.
 */
 @property (readwrite, nonatomic) float contrastAdjustment;
 
@@ -31,7 +31,7 @@
  @brief The pixel value to use as a pivot for the contrast. Valid values are from [0.0 ... +1.0], or nil to auto-detect based on image intensity.
         The default value is +0.5 (i.e. pixel center).
 */
-@property (readwrite, nonatomic, nullable) NSNumber * contrastPivot API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0)); 
+@property (readwrite, nonatomic, strong, nullable) NSNumber * contrastPivot API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0));
 
 /*!
  @brief Identifies to the request if detecting a dark object on a light background, or vice versa, to aid in detection. The default value is YES.
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectFaceLandmarksRequest.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectFaceLandmarksRequest.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectFaceLandmarksRequest.h	2022-02-23 10:57:45.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectFaceLandmarksRequest.h	2022-05-31 15:03:51.000000000 -0400
@@ -48,7 +48,7 @@
 @end
 
 
-API_AVAILABLE(macos(10.14), ios(12.0), tvos(12.0))
+API_DEPRECATED_WITH_REPLACEMENT("VNDetectFaceLandmarksRequestRevision2", macos(10.14, 13.0), ios(12.0, 16.0), tvos(12.0, 16.0))
 static const NSUInteger VNDetectFaceLandmarksRequestRevision1 = 1;
 
 API_AVAILABLE(macos(10.14), ios(12.0), tvos(12.0))
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectFaceRectanglesRequest.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectFaceRectanglesRequest.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectFaceRectanglesRequest.h	2022-02-23 10:57:45.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNDetectFaceRectanglesRequest.h	2022-05-31 15:03:51.000000000 -0400
@@ -28,7 +28,7 @@
 @end
 
 
-API_AVAILABLE(macos(10.14), ios(12.0), tvos(12.0))
+API_DEPRECATED_WITH_REPLACEMENT("VNDetectFaceRectanglesRequestRevision2", macos(10.14, 13.0), ios(12.0, 16.0), tvos(12.0, 16.0))
 static const NSUInteger VNDetectFaceRectanglesRequestRevision1 = 1;
 
 /*!
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNError.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNError.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNError.h	2022-02-23 10:57:46.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNError.h	2022-05-31 15:03:52.000000000 -0400
@@ -13,6 +13,7 @@
 
 typedef NS_ENUM(NSInteger, VNErrorCode)
 {
+    VNErrorTuriCoreErrorCode = -1,
     VNErrorOK = 0,
     VNErrorRequestCancelled,
     VNErrorInvalidFormat,
@@ -32,5 +33,6 @@
     VNErrorUnsupportedRevision API_AVAILABLE(macos(10.14), ios(12.0), tvos(12.0)),
     VNErrorDataUnavailable  API_AVAILABLE(macos(10.15), ios(13.0), tvos(13.0)),
     VNErrorTimeStampNotFound  API_AVAILABLE(macos(11.0), ios(14.0), tvos(14.0)),
-    VNErrorUnsupportedRequest  API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0))
+    VNErrorUnsupportedRequest  API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0)),
+    VNErrorTimeout  API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0))
 };
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNFaceLandmarks.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNFaceLandmarks.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNFaceLandmarks.h	2022-02-23 10:57:45.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNFaceLandmarks.h	2022-06-03 18:09:37.000000000 -0400
@@ -78,6 +78,12 @@
 @property (readonly, nullable) NSArray<NSNumber*>* precisionEstimatesPerPoint API_AVAILABLE(macos(10.15), ios(13.0), tvos(13.0));
 
 
+/*!
+	@brief Describes how to interpret the points provided by the region.
+*/
+@property (readonly, nonatomic) VNPointsClassification pointsClassification API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0));
+
+
 @end
 
 
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGenerateOpticalFlowRequest.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGenerateOpticalFlowRequest.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGenerateOpticalFlowRequest.h	2022-02-23 10:57:46.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGenerateOpticalFlowRequest.h	2022-05-31 15:03:52.000000000 -0400
@@ -14,6 +14,7 @@
 
 /*!
  @brief The level of optical flow computational accuracy.
+ @details Computational accuracy settings are only available for VNGenerateOpticalFlowRequestRevision1.
  */
 API_AVAILABLE(macos(11.0), ios(14.0), tvos(14.0))
 typedef NS_ENUM(NSUInteger, VNGenerateOpticalFlowRequestComputationAccuracy)
@@ -22,7 +23,6 @@
     VNGenerateOpticalFlowRequestComputationAccuracyMedium,
     VNGenerateOpticalFlowRequestComputationAccuracyHigh,
     VNGenerateOpticalFlowRequestComputationAccuracyVeryHigh
-
 } NS_SWIFT_NAME(VNGenerateOpticalFlowRequest.ComputationAccuracy);
 
 
@@ -57,15 +57,22 @@
 /*!
  @brief The level of accuracy used to compute the optical flow. Default is VNGenerateOpticalFlowRequestComputationAccuracyMedium.
  @discussion The computational time typically trends with the accuracy level.  This parameter allows for selective tuning by the client application.
+             Computational accuracy settings are only available for VNGenerateOpticalFlowRequestRevision1.
+             VNGenerateOpticalFlowRequestRevision2 uses a neural network to generate the optical flow.
  */
-@property (readwrite, nonatomic) VNGenerateOpticalFlowRequestComputationAccuracy computationAccuracy;
+@property (readwrite, nonatomic, assign) VNGenerateOpticalFlowRequestComputationAccuracy computationAccuracy;
 
 /*!
  @brief Pixel format type of the output buffer. Valid values are kCVPixelFormatType_TwoComponent32Float and kCVPixelFormatType_TwoComponent16Half.
         Default is kCVPixelFormatType_TwoComponent32Float.
  */
-@property (readwrite, nonatomic) OSType outputPixelFormat;
+@property (readwrite, nonatomic, assign) OSType outputPixelFormat;
 
+/*!
+ @brief Setting this to YES will keep the raw pixel buffer coming the the ML network. The default is NO.
+ @discussion When set to YES, the outputPixelFormat is ignored. Setting this for revision 1 is a no-op as it is not ML-based.
+ */
+@property (readwrite, nonatomic, assign) BOOL keepNetworkOutput API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0));
 
 /*!
 	@discussion VNPixelBufferObservation results.
@@ -78,5 +85,8 @@
 API_AVAILABLE(macos(11.0), ios(14.0), tvos(14.0))
 static const NSUInteger VNGenerateOpticalFlowRequestRevision1 = 1;
 
+API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0))
+static const NSUInteger VNGenerateOpticalFlowRequestRevision2 = 2;
+
 
 NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGeneratePersonSegmentationRequest.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGeneratePersonSegmentationRequest.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGeneratePersonSegmentationRequest.h	2022-02-23 10:57:47.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGeneratePersonSegmentationRequest.h	2022-05-31 15:03:53.000000000 -0400
@@ -28,7 +28,7 @@
 }  NS_SWIFT_NAME(VNGeneratePersonSegmentationRequest.QualityLevel);
 
 /*!
- @brief Performs person segmentationin an image.
+ @brief Performs person segmentation on an image generating a mask.
  */
 API_AVAILABLE(macos(12.0), ios(15.0), tvos(15.0))
 @interface VNGeneratePersonSegmentationRequest : VNStatefulRequest
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGeometry.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGeometry.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGeometry.h	2022-02-23 10:57:46.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNGeometry.h	2022-05-31 14:52:28.000000000 -0400
@@ -250,7 +250,7 @@
 
 /*!
  @brief The total number of child contours in the target contour.
- @discussion The use of this property is prefered over childContours.count due to the cost of building the child objects.
+ @discussion The use of this property is preferred over childContours.count due to the cost of building the child objects.
  */
 @property (readonly) NSInteger childContourCount;
 
@@ -265,7 +265,7 @@
  @brief Returns a VNContour object that is a child of this VNContour at the specified index.
  @param childContourIndex The index into the childContours array.
  @param error The error returned if the child contour cannot be provided.
- @return The VNContour object at the spefiied index path, or nil of a failure occurs.
+ @return The VNContour object at the specified index path, or nil of a failure occurs.
  */
 - (nullable VNContour *) childContourAtIndex:(NSUInteger)childContourIndex error:(NSError **)error;
 
@@ -287,7 +287,7 @@
 @property (readonly) CGPathRef normalizedPath NS_RETURNS_INNER_POINTER;
 
 /*!
- @brief The aspect ratio of the contour from the original image aspect ration expressed as width/height
+ @brief The aspect ratio of the contour from the original image aspect ratio expressed as width/height
  */
 @property (readonly) float aspectRatio;
 
@@ -295,7 +295,7 @@
 /*!
  @brief Simplifies the contour's collection of points into a polygon using the Ramer Douglas Peucker Algorithm.
  @discussion See <https://en.wikipedia.org/wiki/Ramer–Douglas–Peucker_algorithm>
- @param epsilon Points that have a perpendicular distance to the line segment they are on that greather than epsilon are kept, others are eliminated.
+ @param epsilon Points that have a perpendicular distance to the line segment they are on which are greater than epsilon are kept, others are eliminated.
  @param error The error returned if a simplified contour cannot be created.
  @return A new VNContour object with a simplified polygon consisting of a subset of the points that defined the original VNContour.
  */
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNObservation.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNObservation.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNObservation.h	2022-02-23 07:13:22.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNObservation.h	2022-05-31 14:49:57.000000000 -0400
@@ -409,9 +409,22 @@
 API_AVAILABLE(macos(10.13), ios(11.0), tvos(11.0))
 @interface VNHorizonObservation : VNObservation
 
+/*!
+ @brief Transform applied to the detected horizon in image coordinates.
+ @discussion This is the transform in image coordinates and not a normalized transform.
+ */
 @property (readonly, nonatomic, assign) CGAffineTransform transform;
+
+/*!
+ @brief Angle of the observed horizon.
+ */
 @property (readonly, nonatomic, assign) CGFloat angle;
 
+/*!
+ @brief Creates a transform for the specified width and height.
+ */
+- (CGAffineTransform) transformForImageWidth:(size_t)width height:(size_t)height API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0));
+
 @end
 
 
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNRecognizeTextRequest.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNRecognizeTextRequest.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNRecognizeTextRequest.h	2022-02-23 07:13:22.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNRecognizeTextRequest.h	2022-05-31 14:52:28.000000000 -0400
@@ -68,6 +68,11 @@
  */
 @property (readwrite, nonatomic, assign) BOOL usesLanguageCorrection;
 
+/*!
+ @brief Language detection will try to automatically identify the script/langauge during the detection and use the appropiate model for recognition and language correction. This can be particularly helpful, if the nature of the content is unkown and with this flag being set it will for instance determine if text is latin vs chinese so you don't have to pick the language model in the first case. But as the language correction cannot always guarantee the correct detection, it is advisable to set the languages, if you have domain knowledge of what language to expect. The default value is NO. Also note that this feature is only available since VNRecognizeTextRequestRevision3 and is a no-op before that.
+ */
+@property (readwrite, nonatomic, assign) BOOL automaticallyDetectsLanguage API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0));
+
 /*
  @brief Minimum height of the text expected to be recognized, relative to the image height (e.g. for half of the image height, use 0.5). Increasing the size will reduce the memory consumption and speed up the recognition with the trade-off that text smaller than the minimum height may not be recognized properly. If the minimum height is set to 0.0 the image gets processed at the highest possible resolution with no downscaling. With that the processing time will be the longest and the memory usage the highest but the smallest technically readable text will be recognized. The default value for this is 0.0.
  */
@@ -94,5 +99,11 @@
 API_AVAILABLE(macos(11.0), ios(14.0), tvos(14.0))
 static const NSUInteger VNRecognizeTextRequestRevision2 = 2;
 
+/*
+ @brief VNRecognizeTextRequestRevision3 supports all languages from previous revisions plus some new languages in the accurate recognition level. It also improves recognition capbilities for rotation and handwriting as well as support for the automatic language detection property. Best practice is to use supportedRecognitionLanguagesForTextRecognitionLevel to check for supported languages. As the underlying engine has changed from previous revsions, results can differ but are generally more accurate.
+ */
+API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0))
+static const NSUInteger VNRecognizeTextRequestRevision3 = 3;
+
 
 NS_ASSUME_NONNULL_END
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNRequest.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNRequest.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNRequest.h	2022-02-23 07:10:24.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNRequest.h	2022-05-31 14:49:58.000000000 -0400
@@ -22,6 +22,7 @@
 
 /*!
  @abstract A block that is executed at the completion of a request.
+ @discussion The completion handler is called for each request when it is finished processing, before the performRequests call returns. When an array of multiple requests is executed with one performRequests call, each request's completion handler is invoked when that request has finished its processing. This invocation may therefore occur while other requests in the array are either still executing or waiting for execution. This allows, for example, UI to be updated while the first tasks are complete instead of having to wait that all requests have to finish. Note, however, that performRequests is not an asynchronous method, for which completion handlers are most typically used
  @param request The VNRequest that has been completed. The results of the request if no error was encountered are populated in the results array of the request.
  @param	error The error that caused the request to fail, or nil if completed successfully.
  */
@@ -93,7 +94,7 @@
 /*! @abstract Provides the revision of the request that was latest for the particular SDK that was linked with the client application. */
 @property (class, readonly, nonatomic, assign) NSUInteger defaultRevision API_AVAILABLE(macos(10.14), ios(12.0), tvos(12.0));
 
-/*! @abstract Provides the current revison supported by the request. */
+/*! @abstract Provides the current revision supported by the request. */
 @property (class, readonly, nonatomic, assign) NSUInteger currentRevision API_AVAILABLE(macos(10.14), ios(12.0), tvos(12.0));
 
 /*!
diff -ruN /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNTypes.h /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNTypes.h
--- /Applications/Xcode_13.3.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNTypes.h	2022-02-23 07:59:53.000000000 -0500
+++ /Applications/Xcode_14.0.0-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/Vision.framework/Headers/VNTypes.h	2022-06-03 18:09:38.000000000 -0400
@@ -19,8 +19,10 @@
 typedef NS_ENUM(NSUInteger, VNImageCropAndScaleOption)
 {
     VNImageCropAndScaleOptionCenterCrop = 0,  // scale image maintaining aspect ratio to fit on the short side and crop centered on the long side
-    VNImageCropAndScaleOptionScaleFit = 1,    // scale to size required by algorithm
-    VNImageCropAndScaleOptionScaleFill = 2
+    VNImageCropAndScaleOptionScaleFit = 1,    // scale to size required by algorithm while maintaining the original aspect ratio
+    VNImageCropAndScaleOptionScaleFill = 2,
+    VNImageCropAndScaleOptionScaleFitRotate90CCW = 0x100 + VNImageCropAndScaleOptionScaleFit, // scale image maintaining aspect ratio to fit on the long side but also rotate by 90 degrees counter clockwise to optimize portrait images to fit into landscape buffers for algorithms that are rotation agnostic
+    VNImageCropAndScaleOptionScaleFillRotate90CCW = 0x100 + VNImageCropAndScaleOptionScaleFill, // scale image and rotate by 90 degrees counter clockwise to optimize portrait images to fill into landscape buffers for algorithms that are rotation agnostic
 };
 
 /*!
@@ -79,3 +81,13 @@
     VNChiralityLeft = -1,
     VNChiralityRight = 1
 };
+
+
+
+API_AVAILABLE(macos(13.0), ios(16.0), tvos(16.0))
+typedef NS_CLOSED_ENUM(NSInteger, VNPointsClassification)
+{
+	VNPointsClassificationDisconnected = 0,
+	VNPointsClassificationOpenPath,
+	VNPointsClassificationClosedPath
+};
Clone this wiki locally