CV之NS之ME/LF:图像风格迁移中常用的模型评估指标/损失函数(内容损失、风格损失)简介、使用方法之详细攻略
生活随笔
收集整理的這篇文章主要介紹了
CV之NS之ME/LF:图像风格迁移中常用的模型评估指标/损失函数(内容损失、风格损失)简介、使用方法之详细攻略
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
CV之NS之ME/LF:圖像風格遷移中常用的模型評估指標/損失函數(內容損失、風格損失)簡介、使用方法之詳細攻略
目錄
圖像風格遷移中常用的幾種損失函數
1、內容損失
2、風格損失
3、定義總損失
圖像風格遷移中常用的幾種損失函數
1、內容損失
# endpoints_dict是上一節提到的損失網絡各層的計算結果;content_layers是定義使用哪些層的差距計算損失,默認配置是conv3_3 def content_loss(endpoints_dict, content_layers):content_loss = 0for layer in content_layers:#上一節中把生成的圖像、原始圖像同時傳入損失網絡中計算。所以這里先把他們區分開#我們可以參照函數tf.concat與tf.split的文檔理解此處的內容generated_images, content_images = tf.split(endpoints_dict[layer], 2, 0)size = tf.size(generated_images)# 所謂的內容損失,是生成圖片generated_images與原始圖片激活content_images的L*L距離content_loss += tf.nn.l2_loss(generated_images - content_images) * 2 / tf.to_float(size) # remain the same as in the paperreturn content_loss2、風格損失
# 定義風格損失,style_layers為定義使用哪些層計算風格損失。默認為conv1_2、conv2_2、conv3_3、conv4_3 # style_features_t是利用原始的風格圖片計算的層的激活。如在wave模型中是img/wave.jpg計算的激活 def style_loss(endpoints_dict, style_features_t, style_layers):style_loss = 0# summary是為TensorBoard服務的style_loss_summary = {}for style_gram, layer in zip(style_features_t, style_layers):# 計算風格損失,只需要計算生成圖片generated_imgs與目標風格style_features_t的差距。因此不需要取出content_imagesgenerated_images, _ = tf.split(endpoints_dict[layer], 2, 0)size = tf.size(generated_images)# 調用gram函數計算Gram矩陣。風格損失定義為生成圖片與目標風格Gram矩陣的L*L的Losslayer_style_loss = tf.nn.l2_loss(gram(generated_images) - style_gram) * 2 / tf.to_float(size)style_loss_summary[layer] = layer_style_lossstyle_loss += layer_style_lossreturn style_loss, style_loss_summary3、定義總損失
"""Build Losses"""# 定義內容損失content_loss = losses.content_loss(endpoints_dict, FLAGS.content_layers)# 定義風格損失style_loss, style_loss_summary = losses.style_loss(endpoints_dict, style_features_t, FLAGS.style_layers)# 定義tv損失,該損失在實際訓練中并沒有被用到,因為在訓練時都采用tv_weight=0tv_loss = losses.total_variation_loss(generated) # use the unprocessed image# 總損失是這些損失的加權和,最后利用總損失優化圖像生成網絡即可loss = FLAGS.style_weight * style_loss + FLAGS.content_weight * content_loss + FLAGS.tv_weight * tv_loss總結
以上是生活随笔為你收集整理的CV之NS之ME/LF:图像风格迁移中常用的模型评估指标/损失函数(内容损失、风格损失)简介、使用方法之详细攻略的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CV之IG:基于CNN网络架构+ResN
- 下一篇: DL之GANDCGNNcGAN:GAND