圖像風格轉換(四)-最終進化?

閱讀時間約 4 分鐘

一.引言

  經過三篇的進展,我們目前實作的網路已經能做到同時訓練多種風格,且後續可以直接進行轉換,不用重新訓練,但是這種方法畢竟還是受到了預訓練的風格制約,無法跳脫出來,那麼有什麼辦法能夠讓他對於沒學過的風格也有一定的反應能力呢?

二.方法說明

  在上篇我們談到了CIN,其基本概念假設風格可以藉由正規化的特徵向量進行線性組合而得,所以不同的風格只是代表了不同的線性組合參數,所以,是不是只要能自動的根據不同的風格產生出不同的參數組合,就能在沒訓練的風格情況下也有一定效果呢?

  在這個想法下,Ghiasi et al. 2017 提出的 Exploring the structure of a real-time, arbitrary neural artistic stylization network 便使用了一個風格預測模型去預測一個風格向量,並且在CIN模塊內導入風格向量去自行產生Gamma及Beta值,這樣一來只要同時訓練這個風格預測模型,就能夠在未訓練的風格上也有一定的泛用性。

三.實際演練

  實際操作上CIN與風格向量的銜接方法挺特殊的,若風格向量為1000維,在使用時會使用線性層將1000維再次壓縮成每個CIN模組需要的大小,以下為修改後的捲積層,詳細整體實作可以前往我的Github:

class ConvLayer(nn.Module):
def __init__(self, in_channels, out_channels, kernel_size, stride,style_vector_size):
super(ConvLayer, self).__init__()
padding = kernel_size // 2
self.reflection_pad = nn.ReflectionPad2d(padding)
self.conv2d = nn.Conv2d(in_channels, out_channels, kernel_size, stride)
self.cin = CIN(out_channels)
self.style_gamma = nn.Linear(style_vector_size, out_channels)
self.style_beta = nn.Linear(style_vector_size, out_channels)

def forward(self, x, style_vector):
# 获取本层的gamma和beta
gamma = self.style_gamma(style_vector).view(-1, self.conv2d.out_channels, 1, 1)
beta = self.style_beta(style_vector).view(-1, self.conv2d.out_channels, 1, 1)

out = self.reflection_pad(x)
out = self.conv2d(out)
out = self.cin(out, gamma, beta)
return out

本次訓練集使用 COCO(作為content) 及 Painter by numbers(作為style)進行訓練,其中有幾點本次實作遇到的小坎 :

  1. 圖片載入時的正規化動作在訓練時造成了影響,將其拿掉在我的實驗中有更好的效果
  2. content weight 及 style weight 及 tv weight 的設定需要再調整
  3. 因為本次同時要對兩個資料集做迭代,其中以content為主,所以要注意style dataset的迭代狀況
  4. 請注意預測時的每個部件都處在正確的狀態,否則會出現復現失敗的問題

以下為實驗結果 :

raw-image

四.結語

  從實驗結果來看,目前我的模型對於鮮豔色彩及幾何風格尚無法很好的表現出來,但接下來就是超參微調及持續訓練的問題,於是想了想還是將目前狀態整理好發了出來,對於風格轉換的研究也會先告一段落,雖然風格轉換後續還有很多有趣的用法,如更細微的控制及結合不同風格的綜合體,但到此為止也已經對於風格轉換有著基本的認識,接下來會進行其他領域的探索,當然也期待著有機會能再將風格轉換系列繼續寫到最新,讓我們下篇再見 OwO/

7會員
19內容數
AI、電腦視覺、圖像處理、AWS等等持續學習時的學習筆記,也包含一些心得,主要是幫助自己學習,若能同時幫助到不小心來到這裡的人,那也是好事一件 : )
留言0
查看全部
發表第一個留言支持創作者!
你可能也想看
Freepik 免費AI文字生成圖像工具,多種風格點燃你的設計靈感Freepik除了提供素材下載外,還可以線上生成AI圖片, 圖片生成工具名為「AI Image Generator」,只需要輸入文字就能快速生成圖片,每天能免費生成 20 張圖片,還可依照自己的喜好設定不同風格、燈光、畫面尺寸等參數。
Thumbnail
avatar
原來可以這樣做
2024-04-09
Tengr AI 免費圖像生成器,支援19種風格,可使用中文提示詞,且可商用Tenge AI是一款免費的AI圖像生成器,支持中文和英文提示詞或圖像上傳生成。它提供了19種風格,並可以用於商業用途。
Thumbnail
avatar
原來可以這樣做
2024-03-13
AI繪圖-Bing-使用Bing圖片生成原圖並利用Tensor Art創造不同風格的圖像這邊紀錄使用Bing images create 生成原圖並利用Tensor art
Thumbnail
avatar
YEN Lo
2024-02-14
【AI+語言學習】AI 繪圖學英文|呈現/表現圖像的「風格」AI 繪圖提詞咒語(prompts)詠唱,如何呈現/表現一張圖像的風格,同時,還能夠學英文!
Thumbnail
avatar
Yao-Xiang Huang
2023-09-27
SDXL版本的ControlNet XL上線了,新增兩個功能:圖片重新上色+圖片風格學習幾乎可以說是跟stable diffusion一體同命的ControlNet的XL版本總算是上線了,算是為SDXL補上最關鍵一塊地圖,以下快速的來瀏覽一下它的安裝方式與功能吧。
Thumbnail
avatar
巴洛克大叔
2023-09-22
極簡風的時尚主香奈爾 Chanel 風格圖文解析 芸術新潮柔軟具伸縮性的運動服裝,緩緩沿著身型塑出身體曲線,香奈爾按此概念設計服裝。
Thumbnail
avatar
物語屋
2023-09-05
打破創作極限!Midjourney生成式AI 打造Line貼圖無限風格,一致魅力Midjourney生成式AI利用強大技術,讓設計師輕鬆創造多樣風格的Line貼圖,充滿獨特魅力。不僅提高設計效率,也激發無限創意,帶來全新創作體驗,革新平面設計。這篇文章詳解Midjourney設計步驟與生成設計成果!
Thumbnail
avatar
Vera Chang
2023-07-27
探索AI藝術:使用 Midjourney 生成不同風格的驚奇隊長圖像本文介紹了如何使用Midjourney平台生成驚奇隊長圖像。用戶可以根據喜好和需求,設定風格、尺寸和細節,生成獨特的驚奇隊長圖像。文章提供了不同風格和場景的指令範例,並分析了生成圖像的質量、細節和潛在限制。此外,生成的圖像可作為創意靈感,應用於個人或商業項目。
Thumbnail
avatar
SDFusion
2023-05-04
風格是由內而外長出來的——專訪插畫圖像創作者陳盈安An ChenAn Chen,一個用形狀畫畫的插畫家。喜歡用具幾何機械感的手法繪製花草,在有機物、無機物中無止盡的實驗著。2019年畢業於劍橋藝術學院兒童繪本系,作品多出現於報紙雜誌編輯領域,國內外客戶比較有名的有Apple、Gucci、The New Yorker、紐約時報、華爾街郵報、週刊編集、台灣設計展等。
Thumbnail
avatar
張梓鈞|Tzu-Chun Chang
2023-03-31