五行代码实现图像识别(深入版)

2 篇文章 0 订阅
1 篇文章 0 订阅

    网上一篇五行代码实现图像识别的博文(先顶一下,但是坑很多):https://blog.csdn.net/yidunmarket/article/details/84946784

    新手参照上一篇博文用imageai来实现图像识别的话一次性的成功率非常低,需要踩的坑非常多,本篇文章主要教大家如何搭建imageai的训练环境,基本可以一次性通过,至于五行代码实现图像识别就是噱头,当然文章最后还是用了文章的五行代码^_^!

工具介绍:

一、python3.7.6

    1.下载地址:https://www.python.org/downloads/

    2.下拉到最下面看到Files,图下图点击下载即可

3.安装python3.7.6,设置环境变量,如下图红色框内设置python的环境变量

二、安装imageai工具依赖包可参见官网,如下图

    链接:https://imageai-cn.readthedocs.io/zh_CN/latest/ImageAI.html#

    

    1.用pip工具安装依赖之前,国内的用户最好使用国内镜像

    参考链接如下:https://blog.csdn.net/cumtwys/article/details/104204102

    2.安装tensorflow,这个地方有个坑,官网也没有地方讲用tensorflow什么版本的,只是说1.4以后,结果装了2.0版本以后发现用不了,最后在github上看到了目前imageai还不支持tensorflow2,这里通过pip指定tensorflow版本是1.15.2

pip install tensorflow==1.15.2 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

    如果你的测试电脑的显卡比较好,我的是GTX1070TI,则可以下载tensorflow-gpu版本,这样训练的速度至少提高好几倍(貌似都不止),后面需要将安装显卡驱动,需要下载cuda toolkit还有cunnsdk等,在下面有讲到。

pip install tensorflow-gpu==1.15.2 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

    3.安装numpy

pip install numpy -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

    4.安装Scipy

pip install scipy -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

    5.安装opencv-python

pip install opencv-python -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

    6.安装pillow(python下的图形库,用途很广泛)

pip install pillow -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

    7.安装matplotlib

pip install matplotlib -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

    8.安装h5py

pip install h5py -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

    9.安装keras

pip install keras -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

    10.最后安装imageai

    github地址:https://github.com/OlafenwaMoses/ImageAI

    点击release,如下图

   使用pip3安装imageai,命令如下:

pip3 install https://github.com/OlafenwaMoses/ImageAI/releases/download/2.1.0/imageai-2.1.0-py3-none-any.whl -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

三、安装tensorflow的依赖

    1.如果参照文章开头的博文你会发现很多坑,根本无法正常运行五行代码,缺少很多dll库等,这里给个链接,可以参考文章进行安装:https://github.com/tensorflow/tensorflow/issues/36111

    2.tensorflow官网的gpu相关说明链接:https://www.tensorflow.org/install/gpu

    3.如果前两步不想看英文可以直接参照下图下载相关软件即可,红框内TensorRT可选的我没有安装:

    4.更新驱动、安装cuda toolkit之后需要重启电脑(这个地方也是个坑,否则训练过程中老是死掉),切记!!!

    5.传送门,已经下载好的cuda toolkit好几个版本:

      链接:https://pan.baidu.com/s/1kDL7Xz2XS3Hy5xJHZ5dpkg 
      提取码:hs93

四、下载训练数据集

    1.点击github链接内的release进行下载

    链接:https://github.com/OlafenwaMoses/IdenProf

    2.下载完解压后文件目录如下图:

五、上五行代码

    1.在解压后的训练集目录内新建一个py文件,代码如下:

from imageai.Prediction.Custom import ModelTraining
model_trainer = ModelTraining()
model_trainer.setModelTypeAsResNet()
model_trainer.setDataDirectory("idenprof")
model_trainer.trainModel(num_objects=10, num_experiments=200, enhance_data=True, batch_size=32, show_network_summary=True)

    2.在终端运行py文件,如下图:

正在训练了。。。

六、训练完成后,使用训练结果来进行测试

    1.训练完成在models目录下:(model_ex-XXX_acc-YYY,XXX是训练批次,YYY是本批次的测试准确率)

    2.从百度随便下载图片来进行测试,我下载了“医生”,如下图中红色框框框住的卡通医生,来试试准确率

    3.上代码进行测试(准备一个空的python文件,将从百度下载的测试图片放到该文件的同级目录下,也可以随便放但是python需要能找到该文件),用编辑器把如下代码写入python文件内,注意里面涉及到的目录都是使用相对路径

    第六行代码:使用models目录内准确率最高的h5文件

    第七行代码:json文件为训练的职业类型,这个在第五大步中会自动创建

    第九行代码:加载下载的图片,我下载的图片命名为“dt.jpg”

from imageai.Prediction.Custom import CustomImagePrediction
import os
 
execution_path = os.getcwd()
 
prediction = CustomImagePrediction()
prediction.setModelTypeAsResNet()
prediction.setModelPath("./idenprof/models/model_ex-148_acc-0.858871.h5")
prediction.setJsonPath("./idenprof/json/model_class.json")
prediction.loadModel(num_objects=10)
 
predictions, probabilities = prediction.predictImage("./dt.jpg", result_count=3)
 
for eachPrediction, eachProbability in zip(predictions, probabilities):
    print(eachPrediction , " : " , eachProbability)

    4.在终端运行python文件

python confirm.py

    验证的结果如下:doctor为100%,准确率还是蛮高的O(∩_∩)O哈哈~!!!

七、如有疑问请指正!!!

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值