如何从UIImage中提取AVMetadataObject



我想使用iOS 7的新条形码扫描UIImage功能,而不是从设备的摄像头之一进行实时捕获。我已经有了检测功能,可以使用AVCaptureDeviceInput.

我认为这样做的最好方法是创建一个具体的AVCaptureInput子类,该子类从UIImageAVCaptureSession提供媒体数据。但是,我找不到任何关于如何子类化AVCaptureInput的文档或示例,所以我不知所措。

另一种方法是覆盖现有AVCaptureDeviceInput的媒体流,但由于这些 API 是私有的,并且我想在 App Store 上发布我的应用程序,这并不理想。

最终,我最终可能会使用像ZXing或ZBar这样的第三方条形码库来做到这一点,但是在这里无法使用Apple的内置功能似乎是一种浪费。

生活很容易。您可以改用 CIDetector。将图像转换为CIImage,由CIDetector解码。