2024/4/5
言葉から絵を生成するAIの能力は凄い。さまざまな絵を生成する力がある。だがそこにはジレンマがある。言葉で説明するため、AIの知っている言葉に依存する事になる。つまりAIが知らない言葉では絵にすることができない。絵を描かせる方は、描かせたい絵をどう説明したら良いか頭をひねる事になる。これは鴨の頭に鹿の角を生やした架空の動物「もしかもしか」をAIで描かせようとした奮戦記である。
これが今回のベストアンサー
画像生成AIはStable Diffusionを利用した。日本語のプロンプトだと変な絵になるので英訳を投げかけている。
実験
最初に「へら鹿の角を生やした鴨の写真」を描かせることにする。これを英訳した(Photo of a duck with horns)をプロンプトにして画像生成を試みた結果なんの変哲もない鴨が現れた。
(with horns)は無視されたようだ。
そこで言い方を変え、写真のように描くこともやめて
「鴨の頭からヘラジカの角が生えている」(Moose antlers grow from the duck's head)と伝えるとヘラジカの顔のアップが描かれた。
どうも
鴨かヘラジカになってしまう。「鴨の頭から鹿の角が生えている」と言う事が伝えられない。AIにはそんな景色は思いもよらないことなのかもしれない。
そこで
「鳥のカモを描き、その頭に、ヘラジカの角を生やす」(Draw a duck bird and grow elk antlers on its head.)と説明すると、鹿の口先だけが鴨のような画像が現れた。
面白くない
「鳥のカモを描き、その頭に、ヘラジカの角を生やす、浮世絵調」(Ukiyo-e style depicting a duck bird with elk horns growing on its head)と浮世絵風に描かせてみると一挙に状況が変わった。なんだか変だけど鴨の頭に鹿の角が生えたような。
何故足が3本になるのだろう。角が1本なのはなぜ?
同じプロンプトで書き直させる
うーん違う、角が1本のままだし。
もう一度同じプロンプトで
あやーまた足が3本になった。そして角が1本。
描かせたいことを箇条書きに伝えた方が伝わるのかもしれない。そして、頭を大きくしたい、例えば三頭身で描かせたい。つのは左右に2本。スーツを着せて。
そこで
「3頭身の鴨、頭にヘラジカの角が2本生え、スーツを着ている」(A three-headed duck with two elk antlers on its head and wearing a suit.)とプロンプトを修正した結果。
ちょっとお面白くなってきた。でも鴨の顔がなくなって、角が2組。それにこれ三頭身だろうか?写真指定をしていないけれど、写真のような画像になっている。
そこで、何枚か試行錯誤するも同じような結果しか得られず
・・・
「3頭身の鴨、頭にヘラジカの角、スーツを着ている、2本足」(3-headed duck, moose antlers on head, wearing suit, 2 legs)
全身を描かせたい。
「3頭身の鴨、ヘラジカの角を生やし、スーツを着ている、全身を描く」(Three-headed duck, with elk antlers and wearing a suit, full body drawing)と投げると。
なんでいっぱい出てくるの。鴨じゃないし。
仕方ない一旦角は諦めよう
「3頭身の鴨、スーツを着ている、全身を描く」(Three-headed duck, wearing a suit, drawing the whole body)と投げたところ。鴨に戻った。
それはそうだ鹿要素を無くしたんだから。
「5頭身の鴨、スーツを着ている、全身、一人」(5-headed duck, wearing a suit, whole body, alone)
きたーきた。
「2頭身の鴨、スーツを着ている、全身、一人』(Two ducks, wearing suits, whole body, alone)
キタキタ、でもなぜに二匹?
まっ、それは置いておいて、これにツノを生やせない?
「一匹の2頭身の鴨、スーツを着ている、頭に鹿の角、全身」(One two-headed duck, wearing a suit, antlers on head, whole body)
おっ、生えた生えた。これを一匹にして
「一匹の鴨、2頭身、スーツを着ている、頭に鹿の角、全身」「One duck, two heads, wearing a suit, antlers on the head, whole body)
なんで二匹のままなの?2頭身の2が二匹の要因か?
「一匹の鴨、スーツを着ている、頭に鹿の角、全身」(A duck, wearing a suit, with antlers on its head, all over)
一匹になった。これでいいから全身を描いて。
「一匹の鴨、スーツを着ている、頭に鹿の角、全身像」(One duck, wearing a suit, antlers on its head, full-length portrait)
やったー
同じプロンプトで書き直して
こんな感じでもう一回
あーちょっと違う
もう一度描き直して。
そう、これ、これが、とりあえず今までで一番イメージに近い。
この後いくつか試すのだが、かえってイメージは外れていった。
考察
架空のものを描かせようとすると、まず最初は伝わらない。かなりの数の絵を描かせたが、これだと言う絵には今だにで合わない。しかしなんとなく分かってきたことがある。
具体的に記述する
複合する文章は避けて箇条書きにする
数詞を含む文章は要注意
繰り返していくと学んでくれる可能性あり
生成する画像は、同じプロンプトでも生成ごとに違っている。同じ画像を生成する方が難しい。生成すればするほど、いい絵は偶然の産物に思える。
追記
念の為、著作権は問題ないか確認した。
Stable Diffusionは生成された画像について権利を主張しないと公式に発表しており、個人情報や誤った情報を広めるなど、人に危害を与えるようなケースを除き、作った画像を商用利用することが認められている。ただし商用利用が認められていない画像を読み込ませたり、モデルを追加学習させたりした場合、商用利用はできない。
Stable Diffusionで作成した画像には著作権がない。 これはシステムを開発したStability AI社だけではなく、作成したユーザーにも該当する。 そのため、Stable Diffusionで作成した画像を他人が許可なく利用しても、著作権の侵害だと訴えることはできない。
なるほど、自分で生成させた画像でも著作権がないのであった。
Comments