最近开始整理一下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操作。这个是我跑通了的。如果有问题请留言

tensorflow实战系列(一)的更多相关文章

  1. Tensorflow实战系列之五:

    打算写实例分割的实战,类似mask-rcnn. Tensorflow实战先写五个系列吧,后面新的技术再添加~~

  2. Tensorflow实战系列之四:

    这个是第四篇,打算写一些语义分割的内容实战.

  3. Tensorflow实战系列之一:《Tensorflow实现自己的图像分类》

    最近做GAN的实验,刚好有一批二分类的数据集,心血来潮想着也来试一下Tensorflow的实验.并且会尝试些不同网络的效果,重点在于动手尝试,加油~~ 首先介绍下我的数据集,简单的男性和女性,分别存在 ...

  4. tensorflow实战系列(四)基于TensorFlow构建AlexNet代码解析

    整体流程介绍: 我们从main函数走,在train函数中,首先new了一个network;然后初始化后开始训练,训练时设定设备和迭代的次数,训练完后关闭流程图. 下面看network这个类,这个类有许 ...

  5. tensorflow实战系列(三)一个完整的例子

    #!/usr/bin/env python2# -*- coding: utf-8 -*-"""Created on Wed Jan 18 08:42:55 2017 @ ...

  6. tensorflow实战系列(二)TFRecordReader

    前面写了TFRecordWriter的生成.这次写TFRecordReader. 代码附上: def read_and_decode(filename):    #根据文件名生成一个队列    fil ...

  7. Tensorflow实战系列之三:

    博主也是初学,能力有限,这个完全没想好..

  8. Tensorflow实战系列之二:

    还没想好,可能是人脸检测或者物体检测,或者加上动态检测~~

  9. GitHub实战系列汇总篇

    基础: 1.GitHub实战系列~1.环境部署+创建第一个文件 2015-12-9 http://www.cnblogs.com/dunitian/p/5034624.html 2.GitHub实战系 ...

随机推荐

  1. C++进阶--静态多态

    //############################################################################ /* * 多态 */ // 常见的动态多态 ...

  2. host文件的用处

    做Flash开发的人员免不了接触host文件. 1:首先你注册Flash软件.FlashBuilder都需要先修改host,然后再安装的.(具体的修改时在etc包里找到host文件,把一堆adobe的 ...

  3. vc++post方式登录网站

    以http://www.idc3389.com为例: 效果图: 使用Fiddler工具进行抓包,截图: 可以发现: 1.并没有使用cookie并没有用作用户身份识别,因为登录前后的cookie并没有发 ...

  4. vue-router总结

    之前写过一篇关于vue-router的文章,主要是介绍怎么结合cli2在项目中使用vue-router,比较的简单,今天想结合cli3来总结一下vue-router的具体用法. cli3 在介绍vue ...

  5. mysql查询中取差集的问题

    有个场景 现在有个打卡的记录表(daka),记录了用户每天的打卡信息,同时还有个运动打卡表(sport_daka),如果用户有运动打卡则在运动打卡表里面记录. 现在要统计用户的每天的打开信息,包括运动 ...

  6. JavaScript中的类(class)、构造函数(constructor)、原型(prototype)

    类 Class 类的概念应该是面向对象语言的一个特色,但是JavaScript并不像Java,C++等高级语言那样拥有正式的类,而是多数通过构造器以及原型方式来仿造实现.在讨论构造器和原型方法前,我可 ...

  7. [UE4]迁移小地图到其他工程

    一.创建一个新工程,类型不限,本次测试场创建的是赛车类工程. 二.为了方便管理,最好在All文件文件夹下新建一个名为MiniMap的目录,并把所有小地图相关的都放进来. 三.在小地图工程中,右键Rou ...

  8. [UE4]修改射击方向

  9. Devlopment Env Setup install ubuntu16.04

    http://blog.csdn.net/ljheee/article/details/52966048 1.add chinese language support settings -> i ...

  10. (转)先装VS后装IIS产生问题的解决办法

    原文地址:http://www.cnblogs.com/mytechblog/articles/1897682.html 基于.net的web程序设计asp.net,我们就必须安装VS和IIS,但这二 ...