Stable Diffusionを使って画像を生成するとき、さらなるクオリティアップをするためのアップスケールコンバーターが欲しいですよね。標準でついているものを使ってみます。
まずは普通に画像を出してみます。今回は好きなスーパーカーでやってみます。
GPUはRTX4090です。十分早いですよね。
画像サイズは標準の512x512です。サンプルは20ステップにしてみます。
RTX4090 / 512x512 / 20step / 2.9s
いい感じでました。ちなみに100ステップにしてみると、
RTX4090 / 512x512 / 100step / 11.6s
少し書き込まれてますが、いくらか構図が狂ってますね。。。
次にアップスケールしてみます。拡散モデルでは同じシードでも画像サイズを大きくして描き始めると違う絵が出ますね。構図を維持したままアップスケールするにはアップスケールコンバーターを利用します。
1024pixelにしてみました。サンプラーはlatentを選んでみます。
ベースモデルのサンプル数を20stepにして、サンプラーを20stepにしてみます。
RTX4090 / 512x512 to 1024x1024 / base20step, hires20step / latent / denoising 0.7 / 11.6s
いい感じですが、ロゴが二つになったり、右側のリア部分がちょっと膨らんでしまっています。。。
RTX4090 / 512x512 to 1024x1024 / base20step, hires20step / DATx2 / denoising 0.7 / 55.5s
書き込みがかなり違いますね。
速度も5倍の差がありました。
モデルの書き込みももっと色々学習の余地もありそうです。
アップスケールもうまくいきました。