从图像检测 Aztec 代码在 swift 中不起作用
Aztec code detecting from image not working in swift
我在检测图像上的 Aztec 代码时遇到问题。首先,我尝试使用 QR 码,它没有问题,我将 UIImage 转换为 CIImage,然后检测功能。使用 QR 码它检测一切正常,但是使用 Aztec 代码,它根本不起作用,在苹果文档中,它说它应该读取所有二维条码。
这是我的代码:
func detectData(ciImage: CIImage) -> String {
let detector: CIDetector=CIDetector(ofType: CIDetectorTypeQRCode, context: nil, options: [CIDetectorAccuracy: CIDetectorAccuracyHigh])!
var qrCodeLink=""
let features=detector.features(in: ciImage)
for feature in features as! [CIQRCodeFeature] {
qrCodeLink += feature.messageString!
}
if qrCodeLink=="" {
return "nothing"
} else {
return "message: \(qrCodeLink)"
}
}
我会说,使用内置软件框架无法检测 aztec 代码。在链接的文档中它说“QR 码是使用 ISO/IEC 18004:2006 标准的二维条形码。”,但是维基百科指出“阿兹台克代码也发布为 ISO/IEC 24778:2008 标准”。所以我猜它只是不受支持(还)。
我在检测图像上的 Aztec 代码时遇到问题。首先,我尝试使用 QR 码,它没有问题,我将 UIImage 转换为 CIImage,然后检测功能。使用 QR 码它检测一切正常,但是使用 Aztec 代码,它根本不起作用,在苹果文档中,它说它应该读取所有二维条码。
这是我的代码:
func detectData(ciImage: CIImage) -> String {
let detector: CIDetector=CIDetector(ofType: CIDetectorTypeQRCode, context: nil, options: [CIDetectorAccuracy: CIDetectorAccuracyHigh])!
var qrCodeLink=""
let features=detector.features(in: ciImage)
for feature in features as! [CIQRCodeFeature] {
qrCodeLink += feature.messageString!
}
if qrCodeLink=="" {
return "nothing"
} else {
return "message: \(qrCodeLink)"
}
}
我会说,使用内置软件框架无法检测 aztec 代码。在链接的文档中它说“QR 码是使用 ISO/IEC 18004:2006 标准的二维条形码。”,但是维基百科指出“阿兹台克代码也发布为 ISO/IEC 24778:2008 标准”。所以我猜它只是不受支持(还)。