- TensorFlow深度学习从入门到进阶
- 张德丰编著
- 389字
- 2021-03-23 18:05:58
2.7 从磁盘读取信息
TensorFlow可以读取许多常用的标准格式,包括大家耳熟的列表格式(CSV)、图像文件(JPG和PNG格式)和标准TensorFlow格式。
2.7.1 列表格式
为了读取列表格式(CSV),TensorFlow构建了自己的方法。与其他库(如pandas)相比,读取一个简单的CSV文件的过程有点复杂。
读取CSV文件需要几个准备步骤。首先,必须创建一个文件名队列对象和将使用的文件列表,然后创建一个TextLineReader。剩余的操作将是解码CSV列,并将其保存于张量。如果想将同质数据混合在一起,可以使用pack方法。
【例2-24】 利用pack方法实现列表格式读取信息。
![](https://epubservercos.yuewen.com/C16494/19573973401151406/epubprivate/OEBPS/Images/978-7-111-65263-2_62_01.jpg?sign=1739125705-nJvGUcQB3LAWF62jURDNeuU2XAIeMbWk-0-5fee88c12cbe2eff6680f15dfecaf174)
![](https://epubservercos.yuewen.com/C16494/19573973401151406/epubprivate/OEBPS/Images/978-7-111-65263-2_63_01.jpg?sign=1739125705-I4MmEeXLMsOGMQ0UqcFCxojAVjN14GPj-0-f007b90f9054f7b08b1ec287853d1bfd)
2.7.2 读取图像数据
TensorFlow能够以图像格式导入数据,这对于面向图像的模型非常有用,因为这些模型的输入往往是图像。TensorFlow支持的图像格式是JPG和PNG,程序内部以uint8张量表示,每个图像通道一个二维张量,如图2-2所示。
![](https://epubservercos.yuewen.com/C16494/19573973401151406/epubprivate/OEBPS/Images/978-7-111-65263-2_63_02.jpg?sign=1739125705-97CZX7InW8HeOLZsZQDvep4xCQUDEmtH-0-e7794298562f65dd0fd0f1145fbb3476)
图2-2 原始图像
【例2-25】 加载一个原始图像,并对其进行一些处理,最后保存。
![](https://epubservercos.yuewen.com/C16494/19573973401151406/epubprivate/OEBPS/Images/978-7-111-65263-2_63_03.jpg?sign=1739125705-cd3KkCRfU6A3H0r9lVT0QBjnrw6iEo1I-0-1adf6f39049592e763c4f9884930dd40)
![](https://epubservercos.yuewen.com/C16494/19573973401151406/epubprivate/OEBPS/Images/978-7-111-65263-2_64_01.jpg?sign=1739125705-QSZISCmO6ugcEY50kzi486gWeYH9fXYB-0-a377b216e5e7ae19e69edc0ab185a39b)
运行程序,效果如图2-3所示。
![](https://epubservercos.yuewen.com/C16494/19573973401151406/epubprivate/OEBPS/Images/978-7-111-65263-2_64_02.jpg?sign=1739125705-Xwq3PkwDlhDosSW3mYu8lqnWLiBJ62AT-0-b5921ad2ad294e673e56f1558478d4e6)
图2-3 原始图像与转变后的图像对比(向上翻转与向左翻转)