问题标签 [apple-vision]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
6320 浏览

barcode - 适用于 iOS 11 的 Vision Framework 条码检测

我一直在对 Apple 在 WWDC2017 中引入的新 Vision 框架进行测试。我正在专门研究条形码检测 - 在从相机/画廊扫描图像后,我已经能够得到它是否是条形码图像。但是,在查看barcodeDescriptor 时,我看不到实际的条形码值或有效负载数据。https://developer.apple.com/documentation/coreimage/cibarcodedescriptor页面上似乎没有任何内容可以识别任何属性。

我收到这些错误:

  • 无法连接到远程服务:错误域 = NSCocoaErrorDomain 代码 = 4097“连接到名为
    com.apple.BarcodeSupport.BarcodeNotificationService 的服务”
  • libMobileGestalt MobileGestalt.c:555:无法访问 InverseDeviceID(参见问题/11744455>)
  • 连接到名为 com.apple.BarcodeSupport.BarcodeNotificationService 的服务错误
    域 = NSCocoaErrorDomain 代码 = 4097

有没有办法从 VNBarcodeObservation 访问条形码值?任何帮助将不胜感激。谢谢!这是我正在使用的代码:

0 投票
1 回答
2157 浏览

ios - 使用 Vision 框架跟踪本地视频中的人脸

我正在尝试使用 Vision 框架检测本地录制视频中的人脸。提供的大多数示例都是在 Live cam 视频中检测人脸。

  • 如何在本地视频中进行人脸检测并在运行时使用 Vision/CoreML 框架在检测到的人脸中放置一个矩形?
0 投票
1 回答
1516 浏览

ios - 新的 Apple Vision API VNTranslationalImageRegistrationRequest

我正在尝试使用新 Vision API 的图像对齐分析部分,但我正在努力初始化 VNTranslationalImageRegistrationRequest。我的代码如下:

但是在上面的标记线上,我不断收到以下错误,并且不确定如何修复它。Instance member 'sourceImage' cannot be used on type 'ImageTranslation'

谁能指出我正确的方向?谢谢

0 投票
1 回答
2099 浏览

swift - 使用 iOS11 的 Vision Framework 时的 Barcode 字符串值

以下 Swift 代码使用新的 iOS11 Vision 框架来分析图像并在其中查找 QR 码。

但是,问题在于desc.errorCorrectedPayload返回原始编码数据,因为它已从 QR 码中读取。
为了从描述符中获得可打印的内容字符串,必须解码此原始数据(例如,从前 4 位确定模式)。

它变得更加有趣,因为 Apple 已经在 AVFoundation 中提供了用于解码原始数据的代码。该类AVMetadataMachineReadableCodeObject已经具有.stringValue返回解码字符串的字段。

是否可以访问此解码代码并在 Vision 框架中使用它?

0 投票
1 回答
2632 浏览

swift - 在不使用 cocoapods 或其他外部 API 的情况下读取条形码图像

我正在尝试使用新的 Apple Vision API 从图像中检测条形码并返回其详细信息。我已成功检测到 QR 码并使用CIDetector. 但是,我无法使这项工作适用于一维条码。下面是一个示例结果:

如何将图像转换为AVMetadataObject然后从那里读取?还是有更好的方法?

0 投票
1 回答
964 浏览

swift - 使用 CGAffineTransform 组合两个图像

我正在使用新的 Apple Vision API 的 VNImageTranslationAlignmentObservation 来获取返回的 CGAffineTransform。这个想法是,您将两个可以合并在一起的图像传递给它,然后它返回 CGAffineTransform 以便您可以这样做。我已经设法让代码正常工作,以便我返回一个 CGAffineTransform,但经过大量阅读后,我不知如何将两个图像与信息合并。

我的代码在这里:

我得到的打印变换是这样的CGAffineTransform(a: 1.0, b: 0.0, c: 0.0, d: 1.0, tx: 672.0, ty: 894.0)

我如何应用这两个传入的两个图像?

0 投票
2 回答
2163 浏览

ios - VNFaceObservation BoundingBox 在纵向模式下不缩放

作为参考,这源于Vision API中的一个问题。我正在努力使用Vision通过 a 检测图像中的人脸VNDetectFaceRectanglesRequest,这在确定图像中正确的人脸数量并boundingBox为每个人脸提供方面成功地发挥了作用。

我的麻烦是,由于我的UIImageView(有UIImage问题的)正在使用.scaleAspectFit内容模式,我在以纵向模式正确绘制边界框时遇到了巨大的困难(在横向模式下效果很好)。

这是我的代码;


这是我所看到的最终结果,请注意,框在X位置是正确的,但在纵向时,它们的Y位置在很大程度上是不准确的。

**纵向放置不正确** 纵向放置不正确

** 在风景中正确放置** 景观中的正确放置

0 投票
3 回答
2314 浏览

ios - Get the cvPixelBuffer used in a VNImageRequestHandler on the VNDetectTextRectanglesRequest completion handler

I am creating my request with the following code:

And inside my AVCaptureVideoDataOutputSampleBufferDelegate I am creating a VNImageRequestHandler and performing it:

This gives me the results of the detection inside the handler that has the following signature:

My question is, how can i get the "cvPixelBuffer" that this request used for further processing? Am I supposed to store a temporal version of it?

0 投票
3 回答
707 浏览

ios - 带有 VNDetectBarcodeRequest 的 QR 阅读器

我已经设置了AVCaptureSession一个视频数据输出,并尝试使用 iOS 11 的 Vision 框架来读取 QR 码。相机的设置基本上与任何设置一样AVCaptureSession。我将缩写并仅显示设置输出。

所以相机像往常一样启动并运行。这是我用来执行VNImageRequestHandler二维码的代码。

我正在使用编码http://www.google.com为测试的 QR 码。该debugPrint行打印出:

AVGG\u{03}¢ò÷wwrævöövÆRæ6öÐì\u{11}ì

我已经使用AVCaptureMetadataOutput已经存在一段时间的相同的 QR 码进行了测试,并且该方法可以正确解码 QR 码。所以我的问题是,为了得到我得到的输出,我错过了什么?

(显然我可以将其AVCaptureMetadataOutput用作解决方案,因为我可以看到它有效。但这并不能帮助我学习如何使用 Vision 框架。)

0 投票
0 回答
1060 浏览

ios - CoreMLTools 转换的 Keras 模型在 VNCoreMLTransform 失败

因为我正在学习 Apple 的 Vision 和 CoreML 框架,但被困在如何使用我自己重新训练的模型上。我尝试根据本教程使用 Keras 训练 VG16 模型。除了一些 Keras 版本警告外,一切看起来都不错。然后我尝试使用以下代码使用 CoreMLTools 转换结果模型

在转换过程中,它给了我一些版本兼容的警告,但否则它是成功的:

所以我将此模型加载到 Apple 的 Vision+ML 示例代码中,但每次我尝试对图像进行分类时都会失败并出现错误

我猜这是因为预训练的 VGG16 模型已经有 1000 个类别,所以我尝试了 1000 个类别和 1000 + 2 个(猫和狗)类别,但仍然遇到同样的问题。

我错过了什么吗?我将不胜感激任何线索和帮助。