StableDiffusionでQRコードをアートにできるってマ!?
はじめに
どうやら、StableDiffusionでQRコードを装飾し、アートにできるらしい。
調べてみる
バズっているのはこちらのReddit
元ネタはおそらくこちらの論文
どうやら「ControlNet for QR Code」という名称のControlNetのモデル?みたいだ。
現在はHuggingFaceのリポジトリが公開停止されているため、OSSとして公開されるのかどうかはわからない。
再現しよう!
こちらの投稿によると、アート性は欠けるがControlNetの標準機能でそれっぽいものは作れるようだ。
StableDiffuison WebUI Automatic1111 + Control-Net が導入されていることを前提とするため、未導入の方は超絶わかりやすい「てるろび」さんの動画を参考に導入してね💕
プロンプト
モデル、プロンプト、サンプリングメソッドは適当に指定する。
高速でチャチャッと生成したければサンプリングメソッドはDDIMがおすすめ。
私の環境は以下のようにした。
Colorful
Steps: 15, Sampler: DDIM, CFG scale: 7, Seed: 711902182, Size: 512x512, Model hash: 6ce0161689, Model: v1-5-pruned-emaonly, Version: v1.3.0
ControlNet
ここからが本題である。
QRコードを用意し、画像のように設定する。
Enable
Preprocesser inpaint_global_hamonious
Model control_*_*_inpaint
Control Weight 0.65
Ending Control Step 0.85
動作確認
出来上がったQRコードがこちらである。
しっかりとQRコードを読み取ることができる。
比較用に下に本家のQRコードを載せておく。
アート性どこやねん
おっしゃるとおり、本家のようなアート性はなく「QRコードの黒い部分に絵を書いてみました」になってしまっている。
なぜならば、ControlNetで使用した「inpaint」は黒く指定された部分を再度生成するというものであり、本来は気に入らない部分だけを指定してやり直す用の機能である。
それをQRコードに適応させているため、もちろん黒い部分しか生成されていない。
プロンプトやモデルの工夫で多少はアート性を出すことはできそうだが、本家のような圧巻のアートを生み出すことは難しそうだ。
兄貴、OSS待ってます!
まだ論文が公開されてから数日しか経っていないため ControlNet for QR Code がこれからどうなるかはわからない。
作者からの朗報を待とう!
よくわからない部分があれば気軽にコメントを!
また、本記事に間違いなどがあったらぜひコメントやIssueをお願いします🙏
Discussion