前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >iOS11真机运行CoreML图像识别demo(Object C 版)

iOS11真机运行CoreML图像识别demo(Object C 版)

作者头像
AiTechYun
发布2018-03-02 15:52:48
2K0
发布2018-03-02 15:52:48
举报
文章被收录于专栏:ATYUN订阅号ATYUN订阅号

前几天做了一版CoreML在模拟器上进行识别图片的demo,是使用官方推荐的swift语言编写的,今天抽空把CoreML在Object C上再基于上一版完善一些功能,实现拍照识别,相册识别。话不多说,先进行一下准备操作。

  • 开发环境集成和机器学习框架下载等准备工作,在上一篇文章内有详细说明,传送门:http://www.atyun.com/1083_十分钟使用苹果机器学习框架coreml进行图片识别(swift版.html
  • 今天要做的是一个在真机上运行的demo,而CoreML的运行环境要求是iOS 11,所以,我们要有一台能安装iOS 11的设备,推荐iPhone6s以上机型。

iOS 11怎么升级,虽然目前苹果仅放出了iOS11开发者预览版,但如果你有备用机,或者想先试试升级,在这里我们教你快速升级到iOS 11开发者预览版(需要注意的是,目前iOS11还处于开发者测试阶段,可能存在一些不稳定或bug,在此要提醒大家,如果你手中没有备用机,请不要随便升级,如果你真想提前体验iOS11,也请在升级前做好重要文件备份工作。) 1、在设备safari中打开以下链接https://pan.baidu.com/s/1eRE1TdC

2、下载iOS 11描述文件

3、下载完以后会提示您安装此描述文件

4、点击需要安装的设备,然后按照流程确认安装 我本机已经升级到iOS 11就不往下一步进行了,安装完描述文件会提示您重启,重启后再设置-通用-软件更新里面就能看到iOS 11 Developer beta版升级提示了,点击下载并安装就可以和正常iOS升级操作一样升级到iOS11 beta,本人测试(iPhone 6s Plus)升级过程持续20分钟。

升级成功~enjoy,支持3D-Touch的控制中心~赞 所有准备工作完成后开始coding。

  • 编码

1、在xcode中创建一个新的OC工程,导入下载的机器学习模型,项目结构如图。

2、上一篇swift版我们是直接使用机器学习模型中提供的方法来处理图片进行识别的,今天我们借助系统Vision库中的VNCoreMLModel,VNCoreMLRequest,VNImageRequestHandler来完成我们今天的功能,关键开始识别方法[vnImageRequestHandler performRequests:@[vnCoreMlRequest] error:&error];识别完成会回调vnCoreMlRequest 的completionHandler,其返回的结果是一个VNClassificationObservation数组,每一个VNClassificationObservation都是一个识别的结果,我们要从里面选出匹配率最高的一个结果出来。具体的Vision库使用可以看看官方文档https://developer.apple.com/documentation/vision 主要程序实现代码如下

VNClassificationObservation对象有两个参数 1.confidence 识别率,值越高应该是越接近的 2.identifier  识别结果 最后来看看CoreML识别结果:

看到什么拍什么,识别率还不错….have fun 最后,拿来主义:http://pan.baidu.com/s/1mhPKWnI [download id='1']

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-07-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ATYUN订阅号 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档