• TensorFlow(十四):谷歌图像识别网络inception-v3下载与查看结构


    上代码:

    import tensorflow as tf
    import os
    import tarfile
    import requests
    
    #inception模型下载地址
    inception_pretrain_model_url = 'http://download.tensorflow.org/models/image/imagenet/inception-2015-12-05.tgz'
    # inception_pretrain_model_url = 'http://download.tensorflow.org/models/inception_v4_2016_09_09.tar.gz'
    
    #模型存放地址
    inception_pretrain_model_dir = "inception_model"
    if not os.path.exists(inception_pretrain_model_dir):
        os.makedirs(inception_pretrain_model_dir)
        
    #获取文件名,以及文件路径
    filename = inception_pretrain_model_url.split('/')[-1]
    filepath = os.path.join(inception_pretrain_model_dir, filename)
    
    #下载模型
    if not os.path.exists(filepath):
        print("download: ", filename)
        r = requests.get(inception_pretrain_model_url, stream=True)
        with open(filepath, 'wb') as f:
            for chunk in r.iter_content(chunk_size=1024):
                if chunk:
                    f.write(chunk)
    print("finish: ", filename)
    #解压文件
    tarfile.open(filepath, 'r:gz').extractall(inception_pretrain_model_dir)
     
    #模型结构存放文件
    log_dir = 'inception_log'
    if not os.path.exists(log_dir):
        os.makedirs(log_dir)
    
    #classify_image_graph_def.pb为google训练好的模型
    inception_graph_def_file = os.path.join(inception_pretrain_model_dir, 'classify_image_graph_def.pb')
    # inception_graph_def_file = os.path.join(inception_pretrain_model_dir, 'inception_v4.ckpt')
    with tf.Session() as sess:
        #创建一个图来存放google训练好的模型
        with tf.gfile.FastGFile(inception_graph_def_file, 'rb') as f:
            graph_def = tf.GraphDef()
            graph_def.ParseFromString(f.read())
            tf.import_graph_def(graph_def, name='')
        #保存图的结构
        writer = tf.summary.FileWriter(log_dir, sess.graph)
        writer.close()

    结构:

    打开cmd,进入inception_log目录:执行:tensorboard --logdir='C:UsersFELIXDesktop ensor学习inception_log'查看结构。

  • 相关阅读:
    Outdated Kotlin Runtime
    安装 intelliJ idea 。 快速学会kotlin
    配置lambda
    kotlin 安装 使用
    android stuidio 导入项目问题。
    下载 ....aar jitpack.io 打不开。
    android studio 汉化包 美化包
    安卓架构 视频
    剑指offer-把二叉树打印成多行
    剑指offer-整数中1出现的次数(从1到n整数中1出现的次数)
  • 原文地址:https://www.cnblogs.com/felixwang2/p/9190731.html
Copyright © 2020-2023  润新知