Package apple.vision

Class VNDetectTrajectoriesRequest

  • All Implemented Interfaces:
    NSCopying, NSObject

    public class VNDetectTrajectoriesRequest
    extends VNStatefulRequest
    A request that detects trajectories of shapes (even small ones) that follow a parabolic path in a sequence of images. This request detects objects moving and (once their path follows the constraint of a parabola), a VNTrajectoryObservation will be returned with the detected points and the equation describing the parabola. API-Since: 14.0
    • Constructor Detail

      • VNDetectTrajectoriesRequest

        protected VNDetectTrajectoriesRequest​(org.moe.natj.general.Pointer peer)
    • Method Detail

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • automaticallyNotifiesObserversForKey

        public static boolean automaticallyNotifiesObserversForKey​(@NotNull
                                                                   @NotNull java.lang.String key)
      • cancelPreviousPerformRequestsWithTarget

        public static void cancelPreviousPerformRequestsWithTarget​(@NotNull
                                                                   @NotNull java.lang.Object aTarget)
      • cancelPreviousPerformRequestsWithTargetSelectorObject

        public static void cancelPreviousPerformRequestsWithTargetSelectorObject​(@NotNull
                                                                                 @NotNull java.lang.Object aTarget,
                                                                                 @NotNull
                                                                                 @NotNull org.moe.natj.objc.SEL aSelector,
                                                                                 @Nullable
                                                                                 @Nullable java.lang.Object anArgument)
      • classFallbacksForKeyedArchiver

        @NotNull
        public static @NotNull NSArray<java.lang.String> classFallbacksForKeyedArchiver()
      • classForKeyedUnarchiver

        @NotNull
        public static @NotNull org.moe.natj.objc.Class classForKeyedUnarchiver()
      • currentRevision

        public static long currentRevision()
      • debugDescription_static

        public static java.lang.String debugDescription_static()
      • defaultRevision

        public static long defaultRevision()
      • description_static

        public static java.lang.String description_static()
      • hash_static

        public static long hash_static()
      • initWithFrameAnalysisSpacingCompletionHandler

        public VNDetectTrajectoriesRequest initWithFrameAnalysisSpacingCompletionHandler​(CMTime frameAnalysisSpacing,
                                                                                         @Nullable
                                                                                         VNStatefulRequest.Block_initWithFrameAnalysisSpacingCompletionHandler completionHandler)
        Description copied from class: VNStatefulRequest
        Create a new video-based stateful request.
        Overrides:
        initWithFrameAnalysisSpacingCompletionHandler in class VNStatefulRequest
        Parameters:
        frameAnalysisSpacing - The reciprocal of maximum rate at which buffers will be processed. The request will not process buffers that fall within the frameAnalysisSpacing after it has performed the analysis. The analysis is not done by wall time but by analysis of of the time stamps of the samplebuffers being processed.
        completionHandler - The block to be invoked after the request has completed its processing. The completion handler gets executed on the same dispatch queue as the request being executed.
      • initWithFrameAnalysisSpacingTrajectoryLengthCompletionHandler

        public VNDetectTrajectoriesRequest initWithFrameAnalysisSpacingTrajectoryLengthCompletionHandler​(CMTime frameAnalysisSpacing,
                                                                                                         long trajectoryLength,
                                                                                                         @Nullable
                                                                                                         @Nullable VNDetectTrajectoriesRequest.Block_initWithFrameAnalysisSpacingTrajectoryLengthCompletionHandler completionHandler)
        Create a new request that will detect the trajectory of a shape in motion.
        Parameters:
        frameAnalysisSpacing - The reciprocal of the maximum rate at which buffers will be processed. The request will not process buffers that fall within the frameAnalysisSpacing after it has performed the analysis. The analysis is not done by wall time but by analysis of the time stamps of the samplebuffers being processed. This property is for instance useful to throttle the processing on slower devices. If this is set to kCMTimeZero then no frames get skipped in the analysis.
        trajectoryLength - The number of points required to analyze a parabola that indicates a trajectory. Must be at least 5.
        completionHandler - The block to be invoked after the request has completed its processing. The completion handler gets executed on the same dispatch queue as the request being executed.
      • instanceMethodSignatureForSelector

        public static NSMethodSignature instanceMethodSignatureForSelector​(org.moe.natj.objc.SEL aSelector)
      • instancesRespondToSelector

        public static boolean instancesRespondToSelector​(org.moe.natj.objc.SEL aSelector)
      • isSubclassOfClass

        public static boolean isSubclassOfClass​(org.moe.natj.objc.Class aClass)
      • keyPathsForValuesAffectingValueForKey

        @NotNull
        public static @NotNull NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(@NotNull
                                                                                             @NotNull java.lang.String key)
      • maximumObjectSize

        @Deprecated
        public float maximumObjectSize()
        Deprecated.
        API-Since: 14.0 Deprecated-Since: 14.0
      • minimumObjectSize

        @Deprecated
        public float minimumObjectSize()
        Deprecated.
        API-Since: 14.0 Deprecated-Since: 14.0
      • objectMaximumNormalizedRadius

        public float objectMaximumNormalizedRadius()
        Specifies the maximum radius of the bounding circle of the object to be tracked. This can be used to filter out unwanted trajectories from larger objects moving through the scene. The default is 1.0, which means no filtering is applied. Changing the maximum from frame to frame can produce eratic trajectories as objects will either disappear or be added to the tracking base on this filtering. The size is specified in normalized coordinates.
      • objectMinimumNormalizedRadius

        public float objectMinimumNormalizedRadius()
        Specifies the minimum radius of the bounding circle of the object to be tracked. This can be used to filter out noise and small objects. The default is 0.0, which means no filtering is applied. Changing the property from frame to frame can produce eratic trajectories as objects will either disappear or be added to the tracking base on this filtering. The value is specified in normalized coordinates.
      • resolveClassMethod

        public static boolean resolveClassMethod​(org.moe.natj.objc.SEL sel)
      • resolveInstanceMethod

        public static boolean resolveInstanceMethod​(org.moe.natj.objc.SEL sel)
      • setMaximumObjectSize

        @Deprecated
        public void setMaximumObjectSize​(float value)
        Deprecated.
        API-Since: 14.0 Deprecated-Since: 14.0
      • setMinimumObjectSize

        @Deprecated
        public void setMinimumObjectSize​(float value)
        Deprecated.
        API-Since: 14.0 Deprecated-Since: 14.0
      • setObjectMaximumNormalizedRadius

        public void setObjectMaximumNormalizedRadius​(float value)
        Specifies the maximum radius of the bounding circle of the object to be tracked. This can be used to filter out unwanted trajectories from larger objects moving through the scene. The default is 1.0, which means no filtering is applied. Changing the maximum from frame to frame can produce eratic trajectories as objects will either disappear or be added to the tracking base on this filtering. The size is specified in normalized coordinates.
      • setObjectMinimumNormalizedRadius

        public void setObjectMinimumNormalizedRadius​(float value)
        Specifies the minimum radius of the bounding circle of the object to be tracked. This can be used to filter out noise and small objects. The default is 0.0, which means no filtering is applied. Changing the property from frame to frame can produce eratic trajectories as objects will either disappear or be added to the tracking base on this filtering. The value is specified in normalized coordinates.
      • setVersion_static

        public static void setVersion_static​(long aVersion)
      • superclass_static

        public static org.moe.natj.objc.Class superclass_static()
      • supportedRevisions

        @NotNull
        public static @NotNull NSIndexSet supportedRevisions()
      • trajectoryLength

        public long trajectoryLength()
        The number of points required to analyze a parabola that indicates a trajectory.
      • version_static

        public static long version_static()
      • setTargetFrameTime

        public void setTargetFrameTime​(CMTime value)
        Specifies the desired target frame time for processing trajectory detection. This can be used for real-time processing of frames, which requires execution with a specific amount of time. The target frame time is evaluated from frame-to-frame. If processing takes longer than this target frame time for the currect frame, it will attempt to reduce the amount of time taken by reducing the accuracy (down to a set minimum) for the next frame. If a frame takes less time than this target, then accuracy of the next frame will be increased (up to a set maximum). The default value is kCMTimeIndefinite, meaning accuracy stays at the predefined maximum. API-Since: 15.0
      • targetFrameTime

        public CMTime targetFrameTime()
        Specifies the desired target frame time for processing trajectory detection. This can be used for real-time processing of frames, which requires execution with a specific amount of time. The target frame time is evaluated from frame-to-frame. If processing takes longer than this target frame time for the currect frame, it will attempt to reduce the amount of time taken by reducing the accuracy (down to a set minimum) for the next frame. If a frame takes less time than this target, then accuracy of the next frame will be increased (up to a set maximum). The default value is kCMTimeIndefinite, meaning accuracy stays at the predefined maximum. API-Since: 15.0
      • useStoredAccessor

        @Deprecated
        public static boolean useStoredAccessor()
        Deprecated.