今天遍历数据集的时候为了能按顺序保存处理后的图片,读数据的时候采用了sorted()方法,然而发现保存的顺序并不是自己想要的,仔细检查后发现sorted遍历文件名的时候如果文件名不是等长度,那么会根据文件名的出现大小进行排序。比如文件名是0.png-4640.png的话。
实际上我们想要的是0.png, 10.png, 20.png这样的排序,解决方案是格式化输入,在前面补零:
'{:04d}.png'.format(int(frame_id))
今天遍历数据集的时候为了能按顺序保存处理后的图片,读数据的时候采用了sorted()方法,然而发现保存的顺序并不是自己想要的,仔细检查后发现sorted遍历文件名的时候如果文件名不是等长度,那么会根据文件名的出现大小进行排序。比如文件名是0.png-4640.png的话。
实际上我们想要的是0.png, 10.png, 20.png这样的排序,解决方案是格式化输入,在前面补零:
'{:04d}.png'.format(int(frame_id))