zoukankan      html  css  js  c++  java
  • tensorflow实战系列(一)

        最近开始整理一下tensorflow,准备出一个tensorflow实战系列,以飨读者。

        学习一个深度学习框架,一般遵循这样的思路:数据如何读取,如如何从图片和标签数据中读出成tensorflow可以使用的数据,其次是如何搭建网络,然后就是如何训练模型,保存模型,使用模型。最后就是可视化了。

        tensorflow上开发了很多有用的包:如tensorlayers,tflearns,slim等,这些包可以让你很方便的构建网络模型。

        入门系列你可以直接按照tensorflow的官方文档来跑就可以了。咱就不赘叙了。

        实战第一步,我们开始构建tensorflow的数据集。

        tensorflow可以读取很多种数据,1直接从磁盘上读取jpg文件,这个比较费时间。2读取csv格式的数据。这个我没有深挖。3读取bin格式的数据,它的例子中就有是读取已经保存的bin文件的,在models/image文件夹下的一个例子。4tfrecords方法。这个方法比较方便,也是tensorflow的默认文件格式。

        就用这个第四种方法了。

        直接上存的代码:

        def createtraindata():
        cwd='/home/xxx/data/imagedata/'
        classes={'bird','dog','person'}
        writer = tf.python_io.TFRecordWriter("train.tfrecords")//保存的tfrecord的文件名是train.tfrecords
        for index, name in enumerate(classes):
            class_path = cwd + name + "/"
            for img_name in os.listdir(class_path):
                img_path = class_path + img_name
                img = Image.open(img_path)
                img = img.resize((224, 224))
                img_raw = img.tobytes()              #将图片转化为原生bytes
                example = tf.train.Example(features=tf.train.Features(feature={
                    "label": tf.train.Feature(int64_list=tf.train.Int64List(value=[index])),
                    'img_raw': tf.train.Feature(bytes_list=tf.train.BytesList(value=[img_raw]))
                }))
                writer.write(example.SerializeToString())  #序列化为字符串
        writer.close()

    代码不难,就是一些平常的python操作。这个是我跑通了的。如果有问题请留言

  • 相关阅读:
    【现代程序设计】【Homework01】
    Apache 关于 mod_rewrite 遇到 %2F或%5C (正反斜杠)等特殊符号导致URL重写失效出现404的问题
    PHP 使用CURL库IP欺骗,隐藏真实客户端IP
    php客服聊天回话系统,长连接加ajax轮询实现
    Which PHP version do I choose
    批量操作,向后台传数组
    angularjs的directive详解
    table中表头不动,表体产生滚动条
    3263232
    forEach、for+i、map的用法及区别
  • 原文地址:https://www.cnblogs.com/whu-zeng/p/6282639.html
Copyright © 2011-2022 走看看