我的数据集中有大约30万张格式为.jpg的图像。但是图像的尺寸不同。我想将所有图像的rgb通道转换为.csv文件,但是我应该写什么到空单元格?可以将其放置为“ N”字符,但我想使用numpy和DataFrame来组织.csv文件。任何想法? (数据集用于创建深度学习模型)
答案 0 :(得分:0)
这开始只是评论,但时间太长。我认为答案足够取决于缺少值时您希望代码执行的操作。
例如,如果像素为空,则对于深度学习模型而言,设置白色(255,255,255)或黑色(0,0,0)可能是侵入性最小的(您需要研究这种方式作品)。我发现拉伸/缩放图像实际上是最好的方法。
仅可以在csv中写空记录(空字符串或逗号之间的空格),请参见this答案。如果您使用numpy.genfromtxt
读取数据,则可以根据需要设置missing_values
和filling_values
。您还可以补充一个精确的值,对于99999
或DEADBEEF
这样的空记录,自然不会出现,以识别这些值并根据需要编写代码进行解析。
一个考虑因素是,读取后需要将数据重塑为相同的图像尺寸,因此请确保选择的任何格式保持相同的行数。
此外,您是否需要一个大CSV文件或许多小文件?如果存储大量文件,则可以考虑添加标头数据以指定数据的实际大小,因此只需要存储图像,然后将genfromtxt中的skip_header
并根据需要填充。
最后,最好使用二进制文件,因为您有很多数据,请考虑使用this,因为它将占用更少的空间并且读取/写入速度更快。