-1

画像分類問題の CNN(Convolution Neural Network) に取り組んでいます。1000 枚の画像のデータ セットがありますが、この画像は設計したモデルに適合するには不十分であり、CNN をトレーニングする前に画像の数を増やしたいと考えています。Python を使用してデータ セットを拡張する方法。

4

2 に答える 2

1

keras のImageDataGeneratorクラスを使用できます。このクラスには、拡張画像データセットを生成するための多くの興味深い機能があります。このクラスを使用して、フォルダーからのデータセットを拡張することもできます。
例えば

generator = ImageDataGenerator(
    rotation_range=20,
    width_shift_range=0.2,
    height_shift_range=0.2,
    horizontal_flip=True)

ImageDataGeneratorクラスの詳細については、こちらを参照してください

これで、このジェネレーターを keras モデルで次のように使用できます。

model.fit_generator(generator.flow(x_train, y_train, batch_size= ... ),
                    steps_per_epoch= .... , epochs= ... )

フォルダーから拡張データセットを生成するflow_from_directoryには、クラスのメソッドを使用します。

model.fit_generator(generator.flow_from_directory(directory, target_size=(64, 64), batch_size= ...),steps_per_epoch= .... , epochs= ... )

于 2019-05-10T11:09:39.720 に答える