TensorFlow2.X使用图片制作简单的数据集训练模型


Posted in Python onApril 08, 2020

Tensorflow内置了许多数据集,但是实际自己应用的时候还是需要使用自己的数据集,这里TensorFlow 官网也给介绍文档,官方文档。这里对整个流程做一个总结(以手势识别的数据集为例)。

1、 收集手势图片

方法多种多样了。我通过摄像头自己采集了一些手势图片。保存成如下形式,

TensorFlow2.X使用图片制作简单的数据集训练模型

以同样的形式在建立一个测试集,当然也可以不弄,在程序里处理。

2、构建数据集

导入相关的包

import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import datasets, layers, optimizers, Sequential, metrics
from tensorflow.python.framework.convert_to_constants import convert_variables_to_constants_v2
import os
import pathlib
import random
import matplotlib.pyplot as plt

读取文件

data_root = pathlib.Path('D:\code\PYTHON\gesture_recognition\Dataset')
print(data_root)
for item in data_root.iterdir():
 print(item)

TensorFlow2.X使用图片制作简单的数据集训练模型

读取图片路径到list中

all_image_paths = list(data_root.glob('*/*'))
all_image_paths = [str(path) for path in all_image_paths]
random.shuffle(all_image_paths)
image_count = len(all_image_paths)
print(image_count) ##统计共有多少图片
for i in range(10):
 print(all_image_paths[i])

TensorFlow2.X使用图片制作简单的数据集训练模型

label_names = sorted(item.name for item in data_root.glob('*/') if item.is_dir())
print(label_names) #其实就是文件夹的名字
label_to_index = dict((name, index) for index, name in enumerate(label_names))
print(label_to_index)
all_image_labels = [label_to_index[pathlib.Path(path).parent.name]
     for path in all_image_paths]

print("First 10 labels indices: ", all_image_labels[:10])

TensorFlow2.X使用图片制作简单的数据集训练模型

预处理

def preprocess_image(image):
 image = tf.image.decode_jpeg(image, channels=3)
 image = tf.image.resize(image, [100, 100])
 image /= 255.0 # normalize to [0,1] range
 # image = tf.reshape(image,[100*100*3])
 return image

def load_and_preprocess_image(path,label):
 image = tf.io.read_file(path)
 return preprocess_image(image),label

构建一个 tf.data.Dataset

ds = tf.data.Dataset.from_tensor_slices((all_image_paths, all_image_labels))
train_data = ds.map(load_and_preprocess_image).batch(16)

同样的方式在制作一个测试集,就可以用于模型训练和测试了。

总结

到此这篇关于TensorFlow2.X使用图片制作简单的数据集训练模型的文章就介绍到这了,更多相关TensorFlow数据集训练模型内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
django实现分页的方法
May 26 Python
Python 文件操作的详解及实例
Sep 18 Python
Django REST为文件属性输出完整URL的方法
Dec 18 Python
CentOS7.3编译安装Python3.6.2的方法
Jan 22 Python
TensorFlow数据输入的方法示例
Jun 19 Python
详解Django中间件执行顺序
Jul 16 Python
浅谈Python的list中的选取范围
Nov 12 Python
Python实现DDos攻击实例详解
Feb 02 Python
如何使用Python脚本实现文件拷贝
Nov 20 Python
np.random.seed() 的使用详解
Jan 14 Python
Python面向对象特殊属性及方法解析
Sep 16 Python
Kmeans均值聚类算法原理以及Python如何实现
Sep 26 Python
解决python ThreadPoolExecutor 线程池中的异常捕获问题
Apr 08 #Python
使用Python将Exception异常错误堆栈信息写入日志文件
Apr 08 #Python
TensorFlow2.X结合OpenCV 实现手势识别功能
Apr 08 #Python
python 安装库几种方法之cmd,anaconda,pycharm详解
Apr 08 #Python
TensorFlow2.1.0最新版本安装详细教程
Apr 08 #Python
解决python多线程报错:AttributeError: Can't pickle local object问题
Apr 08 #Python
解决Python 异常TypeError: cannot concatenate 'str' and 'int' objects
Apr 08 #Python
You might like
PHP编码规范的深入探讨
2013/06/06 PHP
免费的ip数据库淘宝IP地址库简介和PHP调用实例
2014/04/08 PHP
ThinkPHP模板判断输出Present标签用法详解
2014/06/30 PHP
yii实现使用CUploadedFile上传文件的方法
2015/12/28 PHP
php使用Jpgraph创建3D饼形图效果示例
2017/02/15 PHP
PHP 年月日的三级联动实例代码
2017/05/24 PHP
实例讲解PHP表单处理
2019/02/15 PHP
浅析$.getJSON异步请求和同步请求
2016/06/06 Javascript
浅谈jquery上下滑动的注意事项
2016/10/13 Javascript
修改ligerui 默认确认按钮的方法
2016/12/27 Javascript
详解如何在Angular中快速定位DOM元素
2017/05/17 Javascript
vue.js实现数据动态响应 Vue.set的简单应用
2017/06/15 Javascript
详解Angular.js中$http拦截器的介绍及使用
2017/07/04 Javascript
JS基于递归实现网页版计算器的方法分析
2017/12/20 Javascript
用Vue编写抽象组件的方法
2019/05/06 Javascript
Linux下为不同版本python安装第三方库
2016/08/31 Python
python3 模拟登录v2ex实例讲解
2017/07/13 Python
PyQt5+requests实现车票查询工具
2019/01/21 Python
python批量爬取下载抖音视频
2019/06/17 Python
python多进程并行代码实例
2019/09/30 Python
python3 pillow模块实现简单验证码
2019/10/31 Python
信号生成及DFT的python实现方式
2020/02/25 Python
Python中if有多个条件处理方法
2020/02/26 Python
五分钟带你搞懂python 迭代器与生成器
2020/08/30 Python
涂鸦板简单实现 Html5编写属于自己的画画板
2016/07/05 HTML / CSS
意大利宠物用品购物网站:Bauzaar
2018/09/15 全球购物
自我评价正确写法范文
2013/12/10 职场文书
美德好少年主要事迹
2014/01/29 职场文书
音乐教学随笔感言
2014/02/19 职场文书
酒店总经理岗位职责范本
2014/08/08 职场文书
含预算的公司户外活动方案
2014/08/16 职场文书
2014县政府领导班子三严三实对照检查材料思想汇报
2014/09/26 职场文书
北京天坛导游词
2015/02/12 职场文书
2015年街道办事处工作总结
2015/05/22 职场文书
五年级数学教学反思
2016/02/16 职场文书
2016年“5.12”国际护士节活动总结
2016/04/06 职场文书