热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CoreMLiOS11无法正确识别图像

如何解决《CoreMLiOS11无法正确识别图像》经验,为你挑选了1个好方法。

我尝试了最近在iOS中引入的Core ML来识别和分类图像.问题是,它没有为发送的图像提供正确的结果.

如果我发送一个地球图像(Globe)它会给我作为泡泡的课程.以下是我使用的代码,

            let model = Resnet50()

            let pixelBuffer: CVPixelBuffer =  (modelImg.pixelBuffer())!

            if let prediction = try? model.prediction(image: pixelBuffer) {
                print( "Found it!! It is a/an \(prediction.classLabel)")
            }

是否可以在现有Core ML模型的基础上使用自定义用例训练模型?(例如Resnet50)



1> Brad Larson..:

为了扩展Matusalem的答案,当使用图像分类网络时,您只能在其中一个训练过的类中获得结果.在这种情况下,您似乎正在使用Apple 提供的预先训练的ResNet50 Core ML模型.

与您在那里找到的许多其他网络一样,该图像分类网络已经在ImageNet大规模视觉识别挑战2012数据集上进行了培训,通常称为ImageNet或ILSVRC2012.该数据集成为2012年竞赛后卷积神经网络设计的基准,因此您将找到许多使用它的预训练网络.它有1000种可以在图像中识别的东西,这里有完整的标签列表.您会注意到"globe"不在其中,因此网络将提供与其训练过的最接近的匹配类别.

如果您以前从未见过地球仪,或者甚至没有看到过"地球仪"这个词,那么您能识别一个吗?这些网络可以以令人惊讶的方式进行推广,但如果它们甚至没有您想要分类的类别,那么它们将无法提供您想要的结果.

ImageNet数据集是一个有趣的起点,但可能不是最适合实际使用的.它有一个奇怪的类分布,类似于200种犬种,但没有人类.它可以是预训练网络的一个很好的起点,然后使用传输学习将该网络优化为您的特定数据集,但您很可能希望训练自己的特定于应用程序的网络.那是另一个话题.


推荐阅读
author-avatar
jiazi---
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有