Taste of Tech Topics

Acroquest Technology株式会社のエンジニアが書く技術ブログ

Amazon Bedrock で Titan Image Generator を使って画像生成

今度、寝台列車で旅行に行きたいな、と思って先日予約に挑んでみたのですが、残念ながら予約競争に敗北してしまった、菅野です。 寝台列車は、今も人気が高いんですね。

ChatGPTでもDALL·E 3を用いることが出来るようになるなど、生成AIでも画像生成や読み込みなど一般的に用いられるようになってきました。
Amazonで利用できる生成AIプラットフォーム、Amazon Bedrokでも、以前から画像生成モデルとして世界的にも最も有名なStability AIが提供するStable DiffusionSDXLモデルを用いた画像生成が可能でしたが、 AmazonオリジナルのモデルTitanからも画像生成を行えるモデル、Titan Image Generatorも利用できるようになっています。
今回は、Titan Image Generatorを用いて実際にどのような画像生成ができるのかを見ていきましょう。

docs.aws.amazon.com

Titan Image Generatorとは

Amazonが提供する画像生成のモデルで以下のような処理を実施できます。

機能 説明
Text2Image テキスト入力から画像を生成する
インペインティング 画像の一部だけを書き換える
アウトペインティング 画像の外側を追加する
画像バリエーション 画像とプロンプトを入力し、入力画像のスタイルや背景を変更する

モデルの仕様は以下になっています。

項目 内容
モデルID amazon.titan-image-generator-v1
最大入力文字数 1024文字
最大入力画像サイズ 50MB
イン/アウトペインティングを使用する場合の最大画像サイズ 1024*1024ピクセル
画像バリエーションを利用する場合の最大画像サイズ 4096*4096ピクセル
言語 英語
出力タイプ 画像
サポートされている画像タイプ JPEG、JPG、PNG

まだ日本語は未対応みたいなのでプロンプトは英語で入力する必要がありそうです。

Titan Image Generatorの利用方法

それでは早速Titan Image Generatorを利用してみましょう。

モデルのアクティベート

Bedrokのモデルアクセスタブから開いた画面の、モデルアクセスを管理ボタンを押下します。

Titan Image Generator G1モデルにチェックを入れます。

同画面下部の変更を保存すると、モデルが利用できるようになります。

実際の利用

Amazon Bedrokでは利用できるモデルを簡単に試すことが出来るプレイグラウンド機能を提供してくれている為、そちらを利用して実際にTitan Image Generatorを利用してみましょう。
左側メニューのプレイグラウンド>イメージを押下して開いた画面のモデルを選択ボタンを押下します。

プロバイダをAmazon、モデルを Titan Image Generator G1に選択し適用を押下します。

これで Titan Image Generatorを利用する準備が整いました。

text2imageを試してみる

まずはシンプルにプロンプトから画像を生成してみましょう。

表示された、画面の下部からプロンプトを入力して実行ボタンを押下します。
今回はA modern architectual building with large glass windwos, situated on a cliff overlooking a serene ocean at sunset.(夕暮れ時の穏やかな海を望む崖の上に建つ、大きなガラス窓を備えたモダンな建築の建物。)と入力してみました。
およそ1分程度の時間がかかりますが、以下のように画像が生成されます。

デフォルトの設定では1024*1024ピクセルの画像が1枚生成されます。

入力した文字列を忠実に再現した画像が生成されました。
写実的な表現をするような命令文を入れていないにもかかわらず、本当に存在しそうな画像が出てきましたね。

インペインティングを試してみる

つづきまして、入力された画像の一部のみ変更するインペインティングを試してみます。
右側のメニューから、モードをEditに変更、変更したい写真を推論イメージからアップロードして変更したい箇所にマスクの矩形を移動し、プロンプトに変更内容を入力して、実行を押下します。
先ほど出力された画像に、雲を追加してみましょう。

プロンプトにはadd cloud(雲を追加)と入力しました。

夕焼けの印影に合わせて雲が追加されました。
指定した範囲外は元の画像のままになっています。

アウトペインティングを試してみる

お次は、入力画像の対象物体以外を置き換えるアウトペインティングです。
再度、text2imageで作った画像に加工を加えてみましょう。

Editモードのまま、変更したい写真を推論イメージからアップロード、マスクの矩形を画面全体に適応し、マスクプロンプトにsea(海)と入力します。
プロンプトにsea of trees(樹海)と入力して、実行ボタンを押下します。

海がうっそうと生い茂る森に代わりました。

画像バリエーションを試してみる

アップロードした画像とプロンプトをもとに、投入した画像のバリエーションを出力します。
モードをGenerateに戻し、推論イメージにバリエーションを作成したい画像をアップロードします。
text2imageで作った画像をアップロードし、同じ雰囲気の画像を作ってもらいましょう。

一分ほどで画像が生成されました。
配置自体は変わっていますが、建物の雰囲気や、海の中の岩礁など、同じような画像が生成されています。

推論イメージ無しで三枚出力したものと比較すると、より同じテイストになっていることがわかります。

まとめ

Amazonが作成して画像生成モデルTitan Image Generatorを実際に使ってどのような出力をすることが出来るか試してみました。
Stable DiffusionのSDXLとは異なり、いわゆる呪文のようなプロンプトなしで写真ライクな画像を簡単に生成できる点は強みであると感じました。
今後も生成AIでどういったことが出来るのか調査していこうと思います。

Acroquest Technologyでは、キャリア採用を行っています。
  • ディープラーニング等を使った自然言語/画像/音声/動画解析の研究開発
  • Elasticsearch等を使ったデータ収集/分析/可視化
  • マイクロサービス、DevOps、最新のOSSクラウドサービスを利用する開発プロジェクト
  • 書籍・雑誌等の執筆や、社内外での技術の発信・共有によるエンジニアとしての成長
  少しでも上記に興味を持たれた方は、是非以下のページをご覧ください。 www.wantedly.com