使用 CreateML 训练图像分类器的最佳图像分辨率是多少?
Posted
技术标签:
【中文标题】使用 CreateML 训练图像分类器的最佳图像分辨率是多少?【英文标题】:What is the optimal image resolution to train an image classifier with CreateML? 【发布时间】:2020-10-28 03:08:40 【问题描述】:我想使用 CreateML 创建一个图像分类器模型。我有非常高分辨率的图像,但这会以数据流量和处理时间为代价,所以我更喜欢使用尽可能小的图像。
docs 这么说:
图像 (...) 不必是特定大小,也不必彼此大小相同。不过,最好使用至少 299 x 299 像素的图片。
我用各种尺寸 > 299x299px 的图像训练了一个测试模型,Xcode 中的模型参数显示尺寸为 299x299px,我理解为 标准化 图像尺寸:
这个维度似乎是由 CreateML Image Classifier 算法决定的,不可配置。
-
用大于 299x299 像素的图像训练模型是否有意义?
如果图像尺寸不是正方形(与宽度相同的高度),在归一化过程中训练图像是否会被中心裁剪为 299x299px,或者图像在正方形之外的部分是否会影响模型?李>
【问题讨论】:
【参考方案1】:根据阅读和训练图像分类模型的经验(但没有直接了解 Apple 内部知识),似乎 Create ML 会缩放传入的图像以适合 299 x 299 的方形图像。提供更大的图像会浪费磁盘空间和预处理时间. 我能找到的最佳文档是查看 CreateML 为图像分类器模板创建的 mlmodel 文件。输入被明确定义为彩色图像 299 x 299。在独立应用程序中没有更改该设置的选项。 以下是一些文档(适用于默认使用 ScenePrint 的 Classifer 模板):
https://developer.apple.com/documentation/createml/mlimageclassifier/featureextractortype/sceneprint_revision
Playground 工作区中可能有一个 Center/Crop 选项,但我从未在 Create ML 的独立应用版本中找到它。
【讨论】:
这基本上是我的猜测,我正在寻找一种方法来通过参考来验证这一点。以上是关于使用 CreateML 训练图像分类器的最佳图像分辨率是多少?的主要内容,如果未能解决你的问题,请参考以下文章
CreateML 结果在应用程序中很糟糕,而在操场上却很完美