我正在为我的深度学习项目制作一个图像迭代器。在这个项目中,我需要应用噪声生成(用于减少过度拟合)。
我尝试了下面的代码,但一张图像需要 0.005 秒,是的,它很快,但我正在处理超过一百万张图像,所以要做到这一点需要很多时间。
def noise_generator(img, n=0.15):
return img + np.random.normal(0.0, n, img.shape)
如果我能在 0.001 秒内完成一张图像,那就太好了。有什么建议么?
我正在为我的深度学习项目制作一个图像迭代器。在这个项目中,我需要应用噪声生成(用于减少过度拟合)。
我尝试了下面的代码,但一张图像需要 0.005 秒,是的,它很快,但我正在处理超过一百万张图像,所以要做到这一点需要很多时间。
def noise_generator(img, n=0.15):
return img + np.random.normal(0.0, n, img.shape)
如果我能在 0.001 秒内完成一张图像,那就太好了。有什么建议么?
在 keras 框架中,您可以在模型中添加一个层来执行高斯噪声keras.layers.GaussianNoise(stddev)
。所以是这样的:
from keras.models import Sequential
from keras.layers import Dense, GaussianNoise, Input
model = Sequential()
model.add(GaussianNoise(0.5, input_shape=(784,)))
model.add(Dense(512))
model.add(Dense(10))
model.summary()