繁体   English   中英

如何使用Firebase-CloudVision(ML)获取图像的特定信息

[英]How to get specific information of image using Firebase-CloudVision(ML)

我正在使用Firebase cloudVision(ML)API来读取图像。 我能够获取图像的信息,但它不具体。

示例:当我拍摄并上传MacBook的图片时,它输出为“notebook,Loptop,electronic device..etc”。

但我希望得到像Apple MacBook这样的品牌名称,我看到很少有应用程序这样做。 我找不到任何关于此的信息,所以我在这里发帖。 如果有人遇到这个,请建议或指导

我的代码:

    func pickedImage(image: UIImage) {
    imageView.image = image
    imageView.contentMode = .scaleAspectFit
    guard let image = imageView.image else { return }
    // let onCloudLabeler = 
        Vision.vision().cloudImageLabeler(options: options)

    let onCloudLabeler = Vision.vision().cloudImageLabeler()


    // Define the metadata for the image.
    let imageMetadata = VisionImageMetadata()


    imageMetadata.orientation = .topLeft

    // Initialize a VisionImage object with the given UIImage.
    let visionImage = VisionImage(image: image)
    visionImage.metadata = imageMetadata

    onCloudLabeler.process(visionImage) { labels, error in
        guard error == nil, let labels = labels, !labels.isEmpty 
   else {
            // [START_EXCLUDE]
            let errorString = error?.localizedDescription ?? "No results returned."
            print("Label detection failed with error: \(errorString)")
            //self.showResults()
            // [END_EXCLUDE]
            return
        }

        // [START_EXCLUDE]
        var results = [String]()
        let resultsText = labels.map { label -> String in
            results.append(label.text)
            return "Label: \(label.text), " +
                "Confidence: \(label.confidence ?? 0), " +
            "EntityID: \(label.entityID ?? "")"
            }.joined(separator: "\n")
        //self.showResults()
        // [END_EXCLUDE]
        print(results.count)
        print(resultsText)

        self.labelTxt.text = results.joined(separator: ",")
        results.removeAll()

    }


}

如果您已经看到其他应用正在执行您的应用未执行的操作,则其他应用可能使用与您正在使用的ML模型不同的ML模型。

如果您想使用ML Kit for Firebase完成相同的操作,您可以使用自己训练或从其他来源获得的自定义模型

正如Puf所说,您看到的应用程序可能正在使用他们自己的自定义ML模型。 ML Kit现在支持从您自己的训练数据创建自定义图像分类模型。 在此处查看AutoML Vision Edge功能: https ://firebase.google.com/docs/ml-kit/automl-vision-edge

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM