用途:为 Apple Vision 框架的计算机视觉能力提供 API 参考,涵盖主体分割、手部/人体姿态检测、人物检测、人脸分析、文字识别(OCR)、条码检测与文档扫描,并说明如何组合多个 Vision API 解决复杂视觉问题。
主要能力:
- 请求处理器:VNImageRequestHandler 处理单张图像(CGImage、CIImage、CVPixelBuffer、Data 或 URL),一个处理器对应一张图;VNSequenceRequestHandler 处理视频/相机帧序列,维护帧间状态以平滑姿态与分割结果。
- 主体分割:VNGenerateForegroundInstanceMaskRequest(iOS 17+)生成前景实例掩码,VNInstanceMaskObservation 提供 allInstances、instanceMask、instanceAtPoint(_:)、createScaledMask(for:croppedToInstancesContent:)。VisionKit 提供 ImageAnalysisInteraction(iOS 16+)、ImageAnalysisOverlayView(macOS 13+)与 ImageAnalyzer 编程访问。
- 人物分割:VNGeneratePersonSegmentationRequest(iOS 15+)返回单人掩码;VNGeneratePersonInstanceMaskRequest(iOS 17+)最多区分 4 人。
- 手部姿态:VNDetectHumanHandPoseRequest(iOS 14+)检测每只手 21 个关键点,maximumHandCount 影响延迟,支持 chirality 判断左右手。
- 人体姿态:VNDetectHumanBodyPoseRequest(iOS 14+)18 个 2D 关键点;VNDetectHumanBodyPose3DRequest(iOS 17+)17 个 3D 关节,单位为米,支持深度数据与 LiDAR。
- 人脸与人物检测:VNDetectFaceRectanglesRequest、VNDetectFaceLandmarksRequest(含瞳孔,Revision 3+)、VNDetectHumanRectanglesRequest(iOS 13+)。
使用方式:创建请求、用图像创建处理器、执行 perform、从 results 读取观测。坐标系统为左下原点、归一化 0.0–1.0。计算密集,应在后台队列运行。
限制:人物实例分割最多 4 人,超过可能漏检或合并;VisionKit 分析为进程外执行,图像尺寸受限;3D 姿态无深度数据时使用参考身高 1.8 米。相关技能:axiom-vision 提供决策树与模式,axiom-vision-diag 提供故障排查。