使用视觉框架从图像中检测目标

Posted

技术标签:

【中文标题】使用视觉框架从图像中检测目标【英文标题】:Object detection from image using vision framework 【发布时间】:2018-02-27 19:19:01 【问题描述】:

我正在尝试从给定图像中检测对象。通过研究,我发现我们可以使用以下过程检测和跟踪视频的对象:

private lazy var cameraLayer: AVCaptureVideoPreviewLayer = AVCaptureVideoPreviewLayer(session: self.captureSession)

private func tapGestureAction(recognizer: UITapGestureRecognizer) 
 
   highlightView.frame.size = CGSize(width: 200, height: 200)
   highlightView.center = recognizer.location(in: view)

   let originalRect = highlightView.frame
   var convertedRect = cameraLayer.metadataOutputRectConverted(fromLayerRect: originalRect)
   convertedRect.origin.y = 1 - convertedRect.origin.y

   previousObservation = VNDetectedObjectObservation(boundingBox: convertedRect)
 

我们可以为 imageView 提供类似metadataOutputRectConverted 的方法吗?每当用户点击该对象时,我都会尝试检测对象 rect。这如何实现?

【问题讨论】:

【参考方案1】:

此方法将相机输出矩形(topleft(0,0) 到 bottomright(0,1))转换为 UI 矩形。所以,我认为你不需要转换它

【讨论】:

阐述你的答案,添加一些代码来演示它。

以上是关于使用视觉框架从图像中检测目标的主要内容,如果未能解决你的问题,请参考以下文章

目标检测:YOLO和SSD 简介

如何在swift中使用视觉框架从其特征点中提取外唇

教程 | 使用Tensorflow从视频中揪出皮卡丘!

一文读懂深度学习框架下的目标检测(附数据集)

使用 Vision 和 AVFoundation 框架从实时摄像头(而非静态图像)进行实时人脸检测

计算机视觉框架OpenMMLab开源学习:目标检测基础