colabで使うstablediffusionの小ネタ
google colabでstablediffusionを試していて気になったところの小ネタ。
…というか python は初めて。
・画像サイズがデフォルトだと512x512のスクエア
大昔ハッセルとかがスクエアフォーマットだった記憶もあり、これはこれで、好きなんだけど、たとえば、stablediffusionで電書の表紙なんかを作りたいとなった場合、スクエアだとよろしくない。縦長の画像が欲しい。
image = pipe(prompt, height=768, width=512)["sample"][0]
当てずっぽうでやってみたら、たまたま意図通りだった。イメージを作る呪文をパイプで渡すところに高さと横幅を指定してやればOK。ただ、512x1024でやってみたら OUT OF MEMORY でエラーになる。大きなサイズを扱いたければ有料のコースがあるよ、とお知らせ。無料で使わせてもらってるからしょうがない。
・画像ファイルを複数作りたい
一発で期待通りの画像が取り出せることはなく、ひとつのプロンプトで何回も取り出して、その中から選択、となる。一回ずつコマンドを叩くのは効率が悪いので、一回叩いて2つ画像を取り出すようにした。
import time
for i in range(2):
ut=int(time.time())
fname = str(ut) + '.png'
image = pipe(prompt, height=768, width=512)["sample"][0]
image.save(fname)
書き出すファイルは、ファイル名をタイムスタンプにして上書きしないように、ちょっと工夫。
range(2)、2回と言わずもっと回数を増やしてもいいんだけど、とりあえず様子見で。
縦長画像
beautiful concept art of KAWAII,
a girl walks on the street.she is seventeen,
steampunk city,AKIHABARA,
rim light,wide angle,sharp focus,
pixiv rankin,highly detailed,arknights,4K
KAWAIIやpixiv、arknightというキーワードはキャラがそれっぽくイマドキになる呪文。
ポートレイトの呪文も試してみた。
beautiful concept art of KAWAII,
portrait of a girl,full body,glossy eyes, blonde,
high contrast,rim light,sharp focus,
pixiv rankin,arknights,highly detailed,4K
blondeではなくblack hairも試したんだけど、噂通り、金髪の方が安定する。なんでや。
[2022/09/19 23:07:40] 追記。
今日時点、colabで使ってるコードをメモしておこう。
from diffusers import StableDiffusionPipeline
import matplotlib.pyplot as plt
import time
import random
import torch
from google.colab import drive
drive.mount('GoogleDriveのパス')
最初の2行はお約束。
import time
→ファイル名にタイムスタンプを使うのに必要
import random
→ランダムseed生成に必要
import touch
→seedをpipeに渡すために必要
import drive
→生成した画像をgoogle driveに保存するために必要
google driveのパスは「/content/gdrive」とか適当に。
上記、いろいろ必要なものをインポートしたら以下のコードが使える。
pmt_fname = str(int(time.time()))
with open('GoogleDriveのパス' + pmt_fname + '.txt', 'w') as f:
f.write(prompt)
for i in range(4):
seed=random.randrange(0,2147483647,1)
#seed=1349413827
gen=torch.Generator("cuda").manual_seed(seed)
#ut=int(time.time())
#fname = str(ut) + '-' + str(seed) + '.png'
fname = pmt_fname + '-' + str(seed) + '.png'
image = pipe(prompt, height=768, width=512, generator=gen,num_inference_steps=200)["sample"][0]
image.save('GoogleDriveのパス' + fname)
とりあえず、ひとつのプロンプトでタテ768pxヨコ512pxの画像を4枚作る。
ステップ数はデフォルトは50。多くするとそれだけ時間がかかるけど、細部まで作り込まれるということで200にしてみた。
ファイルはgoogle driveに保存される。
タイムスタンプ.txtという名前でプロンプトのテキストファイルを保存
ex.)1663466109.txt
プロンプトのタイムスタンプ+ランダムseed.pngという画像ファイルを生成保存
ex.)
1663466109-1096018807.png
1663466109-1253973203.png
出来上がった絵をみて、惜しいなあ、ここもうちょっと色味が地味なのがよかった、とか思った時に元になったプロンプトが残るので修正変更試行錯誤も簡単になる。そして何より、
StableDiffusionは、同じプロンプト、同じseedを渡すと、同じ画像が生成される。
これがキモというミソだろう。
構図はいいのに、なんでこんな格好してるんだ、とか、ここは空に月が欲しかった、てな時はseedを同じにしてプロンプトを少しいじると同じような構図で違う絵が出てくる。欲しい絵に近づけることが可能になる、かな。
検索するとAIがらみ、技術的な話にたどり着いてしまうんだけど、わたしのような素人はこんぐらいの理解で蛮勇するのでちょうどいい。
以下3枚は同じseedで生成
High quality concept art,
landscape of steampunk city with a monk,
riverside street,river babbling,
sunlight pouring down,
forest of skyscrapers,
a monk walks on the path,
rim light,wide angle,
sharp focus,highly detailed,
digital art illustration,
art station trending,playstation5,4
High quality concept art,
landscape of cyberpunk city with a monk,
TOKYO AKIHABARA,
riverside street,river babbling,
sunlight pouring down,
forest of skyscrapers,
a monk walks on the path,
rim light,wide angle,
sharp focus,highly detailed,
digital art illustration,
art station trending,playstation5,4
High quality concept art,
landscape of deep forest with a monk,
riverside and golden pond,
river babbling,
sunlight pouring down,
sunlight filtering through trees
a monk walks on the path,
rim light,wide angle,
sharp focus,highly detailed,
digital art illustration,
art station trending,playstation5,4
1枚めを最初に生成。
2枚め。スチームパンクじゃなくてサイバーパンクの街に、TOKYO、AKIHABARAも追加。
3枚め。街ではなくて森の中にしようと思ってプロンプト文字列の変更が大きかったようで、Seedの魔力もあまり効かなかった。
もうひとつ。
ネットだと画像の解像度は72dpiでも足りるんだけど、紙印刷だとカラーは最低300dpi、モノクロは600dpi必要となる。google colabで使うStableDiffusionの解像度は72dpi。設定で可能になるかもしれないけど、わからないんで、あれこれ検索。
同じくAIの技術を使って画像をリファクタリングする?アップコンバージョンするReal-ESRGANというのがあった。
これのおかげで512x768 72dpi程度で出力される画像を高精細化して300dpi、紙印刷にも耐える画像として使えるようなった。
変換前
変換後
なんか違いのわかりにくいビミョーな例になってるけど、輪郭あたりをみてもらえると一目瞭然。StableDiffusionとReal-ESRGANの組み合わせでまた可能性が広がる。
StableDiffusionでステップ数をあえて低くして作った画像を、Real-ESRGANで高精細化して細部を作り込むというやり方もできる、かも。
Real-ESRGANの公式ページ
https://github.com/xinntao/Real-ESRGAN
これもオススメ、ていうか必需品。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
uim-fep起動時のメモ
chromebookのlinux開発環境(Crostini)の標準ターミナルで日本語入力ができる!というネタの続き。
uim-fepを起動すればすんなり標準ターミナルでも日本語入力がストレスなくできるようになるので、それならハナっからターミナル起動時に立ち上げておけばいいじゃん。
てことで.bashrcから呼び出す.bash_envというローカルの設定ファイルに
uim-fep
と1行追加したところ、ターミナルを立ち上げるたびに uim-fep is already running とか警告が出るようになり、ログアウトもexitが2度必要になり、あれ?とか思ってごそごそやってみたド素人のメモが以下。
どうやらuim-fepは仮想コンソールを使うっぽい。
一度ログインしたコンソールでuim-fepを起動するともう一枚コンソールを立ち上げてそこで動作する。
2度ログインすることになるわけで、.bashrcも2度呼び出されるので一度起動したuim-fepをまた起動しようとする。当たり前。
.bashrcには自分ローカルなPATHなんかを追加したりしてるので、2度呼び出されて実行されるといろいろもろもろダブるので気持ち悪い…ていうか弊害もある。
逃げ道としてuim-fepが起動していなければ、PATHなどローカルなものを設定してからuim-fepを起動するようにした。単純なシェルスクリプト(MSDOSの頃からの爺なもんで、autoexec.batとか言う方がわかりやすいけどなー)
だぶって二重起動してもらいたくないものを羅列していく、か。
ちなみにウチはラッキーなことにわたしも家人も今日時点で新コロナワクチン2度接種済み(※写真とは無関係)
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
日本語対応新kindle3がやってきた
あまり進展もなく生産的なこともしてなくて相変わらずの日々。停滞気味、ともいうか。なんか仕掛けておかないといけないよなあ、と片隅で焦りつつ、今日も今日とて、朝から民主党政治ワイドショーをだらだら。検察審査会て与党党首を潰すことができる検察暴走装置てこと?とか。そもそもテレビに出てきてしたり顔で、エラソにあーだこーだぬかす記者どもがもう信用できないだろ。官房機密費をもらった記者の実名リストをどこかで発表してくれ、マジで。んで、名札の代わりに「機密費もらいました」「拒否しました」と胸元にピンで貼っておいてくれ。じゃないと、今、信用できるのは日刊ゲンダイと東スポだけじゃねえか。ほんと、テレビ、新聞はもう信用できんよ。
とか思いつつ、ハガレンとかダーティハリーとかスティングとかグッドモーニングベトナムとか相変わらずなDVDを流してみたり。で、表にも出ず部屋で待ってたブツが届いたのが15時。
日本語に対応した新kindle3だ。
7月30日に注文。発売日が8月27日。amazonのステータスを見ると、8月26日にはフェニックス。27日にはオンタリオ、アラスカ、28日の午後にナリタ。となっていたので、ぼちぼちだろうと。
kindle2よりひと回り小さくて、軽い。
立ち上がりが早い。
PDFの書き換えが早い。
コントラストが高い(kindle2ぐらいのコントラストの方がいいかもしれないけど)
webも日本語で見ることができる。
ケータイで撮った写真。
ひらたくまとめると、動きがキビキビとなって、サイズも小さく軽くなって手に馴染む感じに仕上がっている。当たり前だけど、kindle2で購入して読みかけの本を、新しく買ったkindle3で読むことができる。
WEBも日本語で見られるけど、これはまあオマケ、かな。ポインターの動きがたるいし、日本語で入力できるわけでもない。とはいえ、kindleは本。WEBなんてのは本来どーでもいいのだ。
気に入らないのは数字キーがなくなったことだけなんだけど、本を読むときに、キーボードは必須じゃないし、新kindle3、わたしはほぼほぼ大絶賛だ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
Friendship day アメリカ大使館宿舎
アメリカ大使館宿舎に朝からぼーっとでかけてみた。語彙が貧弱で申し訳ない。
スゲー行列でびっくりした。
11時過ぎについて、入場したのは12時過ぎ。でも、中に入ったら、そこは極楽でありました。
ビール各種、ソフトドリンクは無料で飲み放題。ホットドッグや、バーベキュー、たこ焼きなどがずらり並ぶアメリカ屋台村だ。陸軍音楽隊のパレードや、セサミストリートショーなどもあってそのたびに歓声があがる。陽気な空間。笑顔炸裂。楽しいオーラ溢れる場所で、ゲラゲラ笑ってるひとを見ては、笑いが伝染ってしまう。叩きつけられるような炎天下じゃなければ、もっとダラダラ長居したかったかも。かなり楽しかったゾ。
ウチに帰る途中、日比谷ビックカメラに寄ってトラックボール購入、北千住東急ハンズに寄ってペンホルダー購入。
前々から欲しかったのがモレスキンにつけるペンホルダー。ちょうどいいのがなかなか見つからなかったんだけど、ミドリカンパニーのペンホルダーMというのを試しに買ってみたらぴったり、イメージどおり。
PilotのHi-TEC-C colete 4色バージョンを差し込んで使えるナイスなペンホルダーだ(直径12mmまで差し込める)
前々から欲しかったのがトラックボール。今まで使ってたDELLのマウスはどうも感度がよろしくなくてちょっとストレス。マウスを変えたいなぁ、と思ってたんだけど、あまり場所も取れないんでトラックボールがよかろう、と。ロジクールのこいつがまた使い勝手がよくて正解だったかも。
しかし、今日は暑かったなあ。
- 『おかえりください』サウンドノベルWINDOWS版
- 『おかえりください』本編を加筆修正、6つのバッドエンド分岐シナリオを追加してサウンドノベル化!
音と映像が、血まみれのこっくりさんの惨劇を蘇らせる。 - 【無料体験版】はこちら
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
迷惑なクロウラー
アクセスログをみてたら、crawl-9.cuill.com の twiceler という、妙なクロウラーが来襲していた。うちのショップリストcgiを10〜30秒間隔で延々と取得し続けている。
えーっと。日本のローカルな飲み屋とか食い物屋の情報をカナダのひとが欲しいとは思えないので、まずrobot.txtでDisallow。ところがどうも効かないっぽい。しかたないんで.htaccessでDenyして様子見。たいがいこれでアクセスが止まるんだけど、こいつはどうも懲りない。Denyして放置、と思いつつ、嫌がらせのごとく続くのはうっとーしい。メールを送るにも英語はわからんちんだ。そこで、こいつはcgiにアクセスしてるので
Location: ttp://www.cuill.com
と、返してみることにした。
これでしばらく様子を見てみよう。だめならまた.htaccess か httpd.conf で Deny するか、もしくはいっそ /etc/hosts.allow でDeny、かなぁ。
ショップリストcgiなんてずいぶん前に作ったきりで、新規の店の更新もないのに、こんなもので負荷がかかって、 読書SNS の方に影響が出たら困る。しょせんマンションタイプの光なので回線自体ヘボいから過保護気味に。
福井晴敏「Twelve Y.O.」
うううう。キャラが作者の駒。履歴書がないから、言うことやることに、いちいち説得力がない。なんじゃそれ、と腰が抜けるようなことを平気でやっちゃうし、作者が読者をだまそうとするあざとさが見えてしまう。「亡国のイージス」「川の深さは」「Twelve Y.O.」と読んできたけど…しばらく福井晴敏はお休みしよう。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」
地元ラブ
今日は地元徘徊だ。NPOへの参加申し込み、区役所へちょっと必要な書類をもらいに。NPO代表を 趣味は読書SNS に無理やり勧誘するのも目的のひとつ。
なもんで、トラコンを引っ張り出してうろうろ炎天下。基本的にゼロメートル地帯なので坂はないんだけど、一級河川を橋で渡るには土手を上がって下りる。これがけっこうな坂だった。
でもって、今日は立石「鳥房」で仕込み待ち一時間も区役所の用事を入れたのでオッケーさっ!と意気込んでいったら、シャッターが降りてて呆然。半身のから揚げが食いたいんじゃーっ、おれわっ!と言ったところでしょうがない。無駄に汗だるま状態となった。とほほ。
うちに帰ってから、人材登録だけで漫然としていてもしょうがないんで、ネットで営業、というか、SOHO契約のところ数社に応募してみる。…結局どこも「実績」をみるだろうから、ほぼ無理っぽいんだけど。
しかし、武蔵小金井も好きだし、吉祥寺も好き。今の地元の金町なんて当時は論外だったのに、自分の地元になってしまうとこれがもう大ファンになってしまう単純な地元意識はどうなんだ、おれ。
» ローカル環境で電子書籍を作る、Macアプリ・Windows版ツール 「かんたんEPUB3作成easy_epub」