10-3验证码识别+10.4测试

  1. 将下载下来的models-master\research\slim\nets放入到当前执行的文件夹中。

C:\Users\Josie\AppData\Local\Programs\Python\Python35\Scripts\TensorFlow\models-master\research\slim\nets

  1. 对alexnet.py文件进行修改:主要是修改最后输出层,为了实现多路学习

 

  1. 调用nets_factory.py文件中的get_network_fn函数

注意:在查看模型中的py文件中的函数时,很可能不知道具体每个参数的真实含义及应有的数值,此时有两种方法:一是去TensorFlow的官网查找;二是将该函数代码块copy到jupyter notebook当中,利用“shift+tab”查看函数具体信息;三是找源代码。

例如:要查找slim包中nets文件夹中alexnet.py文件中某个函数conv2:

 

(1)先到这个路径找tensorflow-master\tensorflow\contrib\slim\  发现这个文件夹中并没有对于卷积的相关文件。

(2)此时发现,实质是在tensorflow-master\tensorflow\contrib\layers\python\layers \layers.py文件中,搜索conv2d的定义:conv2d = convolution2d;继续查找convolution2d = convolution,再查convolution函数的定义,对照参数列表,并结合本py文件中的注释信息帮助理解。

这里可以对比看出,上一张图中的conv2的参数列表并没有传入全部的参数,其余没有赋值的参数将采用默认值

 

同理,也能查到池化层max_pool2d的定义。

补充:看字典/列表中元素的维度:sess.run(tf.shape( ))

运行10-3(实验室没有条件运行)代码将在\captcha\models文件夹中得到四个文件:

checkpoint

crack_captcha.model-6000.data-000…

crack_captcha.model-6000.index

crack_captcha.model-6000.meta

运行10-4程序来调用该生成的模型,进行测试。

猜你喜欢

转载自www.cnblogs.com/Josie-chen/p/9080997.html