作者:书友73892718 | 来源:互联网 | 2023-09-07 14:32
支持原创,更多内容欢迎关注作者博客:
http://www.china10s.com/blog/?p=490
机器学习这种计算方式,于上世纪就已经被世人所知,但是受限制于计算机的计算能力和网络速度等原因,没有得到发展。在摩尔效应下,现在的计算机性能大幅提升,即便是手上的iPhone,都会比当时美国登月所使用的机器要强。于是,在这个背景下,机器学习开始飞速发展,各大公司都已经在这方面投入资源,希望能够分一杯羹。
Google 一直是以技术作为导向的公司,现在他们也开源了一套计算机引擎–TensorFlow。他支持PC和移动版本,并且学习资源充足。它具有:高度的灵活性、可移植性、自动求微分、多语言支持、性能最优化等特点。可以说是缩短了科研与产品之间的距离,省去了大量重复代码的编写时间。
TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或GPU),服务器,移动设备等等。TensorFlow 最初由Google大脑小组(隶属于Google机器智能研究机构)的研究员和工程师们开发出来,用于机器学习和深度神经网络方面的研究,但这个系统的通用性使其也可广泛用于其他计算领域。
现在,我们可以很快速的将 TensorFlow 部署到移动平台上去,包括 iOS 和 Android 平台。以 iOS 为例,介绍一下如何部署:
第一步,下载 TensorFlow 文件
由于 TensoreFlow 已经在 Github 开源,可以直接下载:
Github 主页地址
V1.1.0 下载地址
第二步,下载 Model 文件
有了工具,还得有训练出来的模型,这里不需要我们再训练(也没有样本数据)。
下载现成的训练模型:
Inception v1
下载完成之后,在 camera 工程目录下新建 data 文件夹。将下载下来的如下文件拷入:
imagenet_comp_graph_label_strings.txt
tensorflow_inception_graph.pb
第三步,相关工具
在缺少 libtool 的情况下,是无成功进行编译的,安装的方式如下:
sudo apt-get install libtool
第四步,编译库文件
在如下目录执行脚本:
sudo ./tensorflow-master/tensorflow/contrib/makefile/build_all_ios.sh
这个编译过程大约要花费1个小时左右的时间(和机器性能有关)。
编译完成之后,生成 libtensorflow-core.a,将生成结果拷贝到 camera 工程目录下
第五步,识别结果如图所示
杯子
iPhone
鼠标
笔记本