stylegan2による猫画像生成 - 2

はじめに

前回 stylegan21 により Oxford-IIIT2の猫画像を学習した。
今回は前処理を少し変更して再学習した。
設定や用語等は前回参照。

前処理の変更

前回はannotation情報を利用して、猫が写っている部分以外は
白塗りになるように学習したが、輪郭部分が気になる結果となった。

今回の前処理では背景部分を白塗りにせずにそのまま利用することとした。
正方形に切り出せない部分は前景部分以外の平均色でpaddingした。

結果

学習経過

前回と同様FIDスコアによる学習曲線を表示すると以下のようになる。
f:id:nakamrnk:20200730060041j:plain

前回と同様20000 Iteration程度で収束しているが、
収束値は前回は90程度で、今回は110程度である。
今回は背景込みの画像なので背景部分を正しく再現することが難しいため
FIDスコアが悪くなっているものと思われる。
猫部分にだけ関していえ前回とそこまで変わらない印象がある。

40000 Iteration後のサンプリング結果

f:id:nakamrnk:20200730060312p:plain

noiseの影響

前回と同様できのいい画像を5枚サンプリングして、
style noiseでないnoiseの影響を見る。

f:id:nakamrnk:20200730060745p:plain

前回のように輪郭部分が大きく変化することはなく、
毛の細かい模様がnoiseでブレていることが分かる。

mixing

8層 (ネッワーク終盤)

f:id:nakamrnk:20200730061139p:plain
ネットワーク終盤でのmixingは前回と同様に全体的な色あいが置き換わり、 形状はほぼ変わらない。
前回は白塗り背景で学習していたため、背景は常に白だったが、
今回追加した背景についても色情報はネットワーク後半部が担っているようだ。

4層 (ネッワーク中盤)

f:id:nakamrnk:20200730061759p:plain

ネットワーク中盤付近によるmiximigにおいても前回と同様
中規模なstyle情報が後半部分のstyle noise依存となっている
傾向が見られた。 ただ、(3, 3)と(3, 2)の画像を比較すると
耳の形が変わりすぎているため、耳の形状等は前半部依存と
なっている。

2層 (ネットワーク序盤)

f:id:nakamrnk:20200730062612p:plain 前半部のmixingでは一部の画像(3列目など)が崩れて
猫と認識できなくなっている。 前半部と後半部が
完全に切り分けできているわけではなく、スタイルが違いすぎる
noiseを混ぜると正しく再構成できないようだ。

style制御ムービー

前回と同様後半部のstyle固定で前半部のstyleを特徴量空間で
補間したムービーは以下のようになる。

f:id:nakamrnk:20200730063202g:plain

目、鼻などの顔部分は姿勢が変わってもほとんど変化していないので、
それらの情報は固定した後半部styleが決定していると思われる。
一方で前回と同様、耳の形は姿勢と一緒に変化してしまっている。
耳の形は背景との境界を決めるので、姿勢などのグローバルなstyleに
結びつきやすいようだ。 同一の猫の異なる姿勢のムービーが作りたい
場合は、耳の形状が近い姿勢の異なる猫のstyleを利用する必要がある。

まとめ

前回 と同様stylegan2で猫画像を生成した。
FIDスコアは落ちているが、背景部分を残したほうが実際の画像
に近く感じるのでこちらの方が好みである。
次は犬も混ぜてみようかと思う。

参考文献