Vision 命名空间
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
视觉命名空间提供高级图像识别和注册设施。
类
接口
IVNFaceObservationAccepting |
VNImageBasedRequest可能检测人脸 (的对象的接口, VNDetectFaceLandmarksRequest 例如) 。 |
IVNRequestRevisionProviding |
视觉命名空间提供高级图像识别和注册设施。 |
枚举
委托
VNRequestCompletionHandler |
为 中检测到的每个功能调用一次的 VNRequest委托。 |
注解
iOS 11 中引入的 Vision 命名空间为高级图像识别、分段和机器学习任务提供了一个通用接口。
Vision 命名空间提供了许多内置的图像处理函数:
除了内置函数外,Vision 还支持对对象进行灵活的基于图像的 CoreMLMLModel 查询。 与 CoreML 的精确输入要求相比, T:Vision.IVNTargetedImageRequest 的实施者可以接受各种图像格式: CIImage、 CGImage和 CVPixelBuffer 对象。 系统缩放图像并将其转换为 所需的 MLModel输入格式。
在所有情况下,视觉请求和图像将传递到 , VNImageRequestHandler其 M:VNImageRequestHandler.Perform* 方法执行回调,传递一个或多个 VNObservation 适合请求类型的对象。 例如:
var rectangleRequest = new VNDetectRectanglesRequest(HandleRectangles);
var handler = new VNImageRequestHandler(img, orientation, new VNImageOptions());
DispatchQueue.DefaultGlobalQueue.DispatchAsync(()=>{
NSError error;
handler.Perform(new VNRequest[] {rectangleRequest}, out error);
if (error != null)
{
ErrorOccurred(error);
}
});
void HandleRectangles(VNRequest request, NSError error){
VNRectangleObservation[] observations = request.GetResults<VNRectangleObservation>();
// ... etc ...