1

因此,我目前正在开展一个项目,其中包括使用 CreateML、CoreML 和 Vision 进行图像识别。我仍在尝试数据集并使用 CreateML 改进模型,但如果我从一个模型更改为另一个模型,我必须在将文件导入项目let model = example()时手动更改 Xcode 为我创建的变量。.mlmodel所以我想用这些模型文件的名称做一个tableView,所以如果我点击其中一个,它会带我到“RecognitionVC”,将名称作为变量传递,这样我就可以用arawValue(string)和然后访问我无法实现的“模型变量”。

这是枚举的样子:

enum MLModels: String {
    case example
    case letters
    case ab
    case numbers
    case asl
}

这就是我想要实现的目标:

   func getModel() -> AnyClass {
        switch self {
        case .example:
            return example()
...
        }
    }

    var model: MLModel {
        switch self {
        case .example:
            return example()
...
        }
    }

我是这些机器学习内置框架的新手,如果有人能让我知道我做错了什么或者我该如何实现这一点,我将非常感激。谢谢,我包括一些截图。如果您想测试任何内容,包括指向苹果公共模型的链接:

关联

文件夹 示例1 示例2

4

1 回答 1

1

当您编写example()它时,它会创建一个包装类的实例。这不是一个MLModel. 但是,它确实具有MLModelas 属性,因此您可以编写return example().model以执行您想要的操作。

于 2020-04-16T09:10:56.170 回答