【问题标题】:Images not created according to range defined using imagedatagenerator and flow未根据使用 imagedatagenerator 和 flow 定义的范围创建的图像
【发布时间】:2019-12-26 15:38:30
【问题描述】:

我编写了用于数据增强和仅保存图像的代码。尚未创建模型。我计划先创建增强图像,然后再训练我的模型。问题是并非所有图像都被用于增强和保存。 我有 275 张图像,范围为 50,这意味着应该创建总共 13750 张图像,但是我只从增强中获得了大约 7500 张图像。我尝试调试并发现在读取图像以及增强图像方面没有问题,而是在.跟随方法不保存图像。当save_format 参数被选为 jpeg 时,情况会变得更糟。我想知道为什么会发生这种情况,更重要的是是否有解决方案或解决这个问题。(注意:-我只是这个领域的初学者)。

import cv2
import glob
import keras
import numpy as np
import matplotlib.pyplot as plt
from keras.preprocessing.image import ImageDataGenerator


types=('*.png','*.jpg','*.jpeg','*.jfif','*.bmp')
path2="C:\\Users\\Cato\\Desktop\\BE project\\Augmented data\\hugging"
#path2="C:\\Users\\Cato\\Desktop\\output"
datagen=ImageDataGenerator(rotation_range=40,width_shift_range=0.27,height_shift_range=0.27,zoom_range=[0.9,1.5],brightness_range=[0.3,1.0],horizontal_flip=True,vertical_flip=False)
i=0;
for files in types:
    path1="C:\\Users\\Cato\\Desktop\\BE project\\Augmented data\\grayscale\\hugging\\"+str(files)
    #path1="C:\\Users\\Cato\\Desktop\\input\\"+str(files)
    i=i+1;
    for file in glob.glob(path1):
        i=i+1;
        image = np.expand_dims(cv2.imread(file), 0)
        datagen.fit(image)
        for x,val in zip(datagen.flow(image,save_to_dir=path2),range(50)):
            pass


print("Augmentation completed")

【问题讨论】:

  • 我想你想使用flow_from_directory,不是吗?顺便说一句,您不需要保存增强。您应该直接在 model.fit_generator(datagen.flow_from_directory(...), ...) 上使用它们
  • 我尝试使用 flow_from_directory 技术仍然显示相同的问题,因为它生成的图像更少。另外我知道我们可以在运行时使用增强,但我希望首先单独使用图像。
  • 我已经解决了这个问题。您使用 flow_from_directory 是对的。非常感谢!
  • 我该如何结束这个问题??

标签: opencv tensorflow machine-learning keras computer-vision


【解决方案1】:

有 2 个问题导致了此问题。首先是使用 flow_from_directory,其次我不知道为什么,但是以 jpeg 格式保存图像解决了这个问题。我猜测代码背后的保存机制对于 png 格式不太适用,原因不明。尽管应该指出它在很大程度上解决了问题,但并非完全解决了问题。这意味着如果我想从数据生成器生成 15000 张图像,它现在会生成 13500 张图像。如果图像以 png 格式保存,则此图像计数将减少到 7-8k 图像。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多