gpt4 book ai didi

ios - 当 CoreML sqeezeNet 模型的 request.results 被转换为 [VNRectangleObservation] 时,应用程序崩溃

转载 作者:行者123 更新时间:2023-11-28 12:15:16 25 4
gpt4 key购买 nike

我正在使用 CoreML SqueezeNet 模型从图像中检测纸张或矩形。

我已经根据苹果文档创建了模型和请求。

guard let model = try? VNCoreMLModel(for: squeezeNetModel.model)else {fatalError()}
let request = VNCoreMLRequest(model: model) { (request, error) in
guard let rectangles = request.results as? [VNClassificationObservation] else{ fatalError()}
}

以上代码运行良好。但我想检测纸张,因此使用 [VNRectangleObservation] 而不是 [VNClassificationObservation]。这会导致我的应用程序崩溃。我在任何地方都找不到解决这个问题的方法。我想使用 [VNRecatangleObservation] 的主要原因是捕获检测到的图像并在检测到的图像上绘制红色叠加层。

最佳答案

您的应用程序崩溃的原因是 request.results 是一个 VNClassificationObservation 对象数组。您不能将其转换为 VNRectangleObservation 对象数组,因为那是完全不同的东西。这就像从商店买了一瓶牛奶,然后在瓶子上贴上可口可乐的标签,试图把它变成可乐。它不起作用。

如果您想检测对象出现在图像中的位置,您需要使用不同的模型,例如 squeezeDet(带 D)或 YOLO。

关于ios - 当 CoreML sqeezeNet 模型的 request.results 被转换为 [VNRectangleObservation] 时,应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46842873/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com