Kerasメモ(Style Transfer)その1
「Style Transfer」を試していて、結果がイメージどおりにならかったのでメモしておく。
Input画像 / Style画像
最初に試したときの出力結果(イメージとは違った)
keras/neural_style_transfer.py at master · keras-team/keras · GitHub
Iteration: 10
パラメータを変えてみる。
変更前
content_weight = 0.025 # alpha style_weight = 1.0 # beta total_variation_weight = 1.0 layer_features = outputs_dict['block5_conv2'] feature_layers = ['block1_conv1', 'block2_conv1', 'block3_conv1', 'block4_conv1', 'block5_conv1']
以下のとおり変更(結果は下図左)
layer_features = outputs_dict['block2_conv2']
さらに、以下のとおり変更(結果は下図中央)
feature_layers = ['block1_conv2', 'block2_conv2', 'block3_conv3', 'block4_conv3', 'block5_conv3']
さらに、以下のとおり変更(結果は下図右)
content_weight = 0.02 # alpha style_weight = 4.5 # beta total_variation_weight = 0.995
もう少し、空の色がstyleのイメージに近くなってほしいと思う。
さらに、以下の関数を使うのをやめてみる(結果は下図左)
img = vgg19.preprocess_input(img)
ついでにVGG16に変えてみる(結果は下図右)
イメージどおりになった。