继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

猫也能明白系列

慕村4449338
关注TA
已关注
手记 3
粉丝 0
获赞 1

猫也能明白系列

深度学习之计算机视觉入门

第2天 部署一个训练好的深度神经网络

目标:能够在自己代码里面使用现有的神经网络模型

代码

import caffe ## 用于使用深度神经网络
import matplotlib.pyplot as plt ## matplotlib.pyplot 用于输出可视化图像
import cv2 ## 用于图像编辑

## 设置工作目录
MODEL_JOB_DIR = '模型目录'  ## 该目录是用于存放已经训练好的深度神经网络
ARCH = MODEL_JOB_DIR + '/' + 'deploy.prototxt'    ##深度神经网络结构
WEIGHTS = MODEL_JOB_DIR + '/' + 'snapshot.caffemodel' ##深度神经网络权重
DATA_JOB = '数据目录'  ## 设置需要识别的图像目录

## 初始化已经学习好的深度神经网络
caffe.set_mode_gpu() ## 设置GPU
##  使用已经训练好的网络初始化Caffe模型
net = caffe.Classifier(ARCHITECTURE, WEIGHTS,  
                       channel_swap =(2, 1, 0), ## 3基色,红绿蓝
                       raw_scale=255) ## 每个像素的值是0到255
                       ## 每张图片每种基色 256 x 256 数值

## 加载需要识别的图像
input_image= caffe.io.load_image('需要识别的图像') ##加载需要识别的图像
plt.imshow(input_image) ##准备输入的图像
plt.show()              ##显示输入的图像,查看原始图像是否符合需求

## 更改图像以使其符合已经设置好的Caffe模型
input_image=cv2.resize(input_image, (256, 256), 0,0) ## 更改图像尺寸
plt.imshow(input_image)   
plt.show()
## 加载均值图像
mean_image = caffe.io.load_image(DATA_JOB + '/mean.jpg')
ready_image = input_image-mean_image
## 对图像进行识别
prediction = net.predict([ready_image])
## 输出结果
print("Output:")
if prediction.argmax()==0:
    print "这是猫"
else:
    print "这是狗!"

小结

使用图像识别模型分为以下几个步骤:
1,初始化:将已经训练好的深度神经网络(这里使用的是Alex网络)导入模型(这里使用的是Caffe)
2,预处理需要识别的图像:对图像尺寸,图像颜色处理。需要减除均值图像(相当于去除背景颜色)
3,识别图像


如有问题,欢迎关注被联系作者!

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP