画像のインペインティング
image inpainting(インペインティング)と組み合わせて、マルチモーダルな画像生成にひと工夫加えてみましょう。StableDiffusionControlNetInpaintPipeline と用意済みの画像マスク(mask_image)を使って、ゴッホの自画像に黒いひげを追加します。

注意: diffusion モデルでの推論は時間がかかるため、生成済み画像をあらかじめ読み込んであります。異なるプロンプトを実行しても新しい画像は生成されません。
元の画像は init_image として読み込まれており、動画で紹介した make_inpaint_condition() 関数で作成したコントロール画像(control_image)も用意してあります。
この演習はコースの一部です
Hugging Face で学ぶマルチモーダルモデル
演習の手順
- black beard を生成するためのプロンプトでパイプラインを実行し、
num_inference_steps=40を指定しつつ、init_image、mask_image、control_imageを渡してください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Run the pipeline requesting a black beard
output = pipe(
____,
num_inference_steps=____,
eta=1.0,
image=____,
mask_image=____,
control_image=____
)
plt.imshow(output.images[0])
plt.show()