【Stable Diffusion】画像内の異物をAI処理で綺麗に削除できるツール「Lama Cleaner」の紹介!

こんにちは!悠です!

 

今回は、画像内に含まれる余計な異物をAI処理で違和感なく消してくれる、完全無料のツール「Lama Cleaner」を紹介していきます。

構図は完璧だけど指が6本生えているような惜しい画像を救える神ツールなので、ぜひ導入してみてください!

 

「Lama Cleaner」はコメント欄で教えていただいたツールなんですが、Webブラウザで使えるような類似ツールと比べて圧倒的に優れています。

修正具合が雲泥の差なのでびっくりしましたw

 

アイキャッチ画像は「7th_anime_v3_B」で生成しています!
スポンサーリンク
スポンサーリンク

「Lama Cleaner」の導入方法

GitHub - Sanster/lama-cleaner: Image inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) any thing on your pictures.
Image inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) ...

 

「Lama Cleaner 導入方法」で検索するとヒットする「Windows 1 click Installer」は有料なので注意してください。

多少導入は面倒ですが、pip installコマンドを使って自分で導入すれば完全無料で使用できます。

 

事前準備

「Lama Cleaner」導入する場合、事前にPython3.10.6(※1)およびGitが必要になるかもしれません。未確認なのでもし試された方がいらっしゃったら、コメント欄で教えていただけると助かります!

「Stable Diffusion WebUI」のローカル版を導入している方なら問題ありませんが、そうでない方は下記の記事を参考にしてください。

【2023年】「Stable Diffusion WebUI」をローカル環境に構築するやり方!低スぺックPC(1660Ti)でもOK!
「Stable Diffusion WebUI」をローカル環境に構築する方法について、できる限り詳しく紹介した記事です。Google Colabratoryのように一日の使用制限がないため、一度環境を構築してしまえば快適に遊べますよ!

 

※1:Pythonのバージョンに関して特に指定はないと思いますが、WebUI導入に推奨されている3.10.6がおすすめです。

 

「Lama Cleaner」のインストール

任意の場所にフォルダを作成し、その中でコマンドプロンプトを起動します。フォルダ名に日本語および半角スペースを使用するのはバグの原因になるのでやめておきましょう。

私の場合はデスクトップ上に「lama_cleaner」というフォルダを作ったので、コマンドプロンプトを起動して次のように入力します。

cd C:\Users\name\Desktop\lama_cleaner

 

次にWebUIと同じように仮想環境venvを構築します。

下記のコマンドを入力します。(参考記事

python -m venv venv

 

これで「lama_cleaner」フォルダ内に「venv」フォルダが生成されます。

次に下記のコマンドで仮想環境を有効化します。

.\venv\scripts\activate.bat

 

コマンドプロンプトに(venv)と表示されると思うので、下記のコマンドを入力してLama Cleanerを導入します。

pip install lama-cleaner

 

導入が完了したら下記のコマンドを入力してLama Cleanerを起動します。

lama-cleaner --model=lama --device=cpu --port=8080

 

コマンドプロンプトに表示されるURLをCtrlキーを押しながらクリックすることで、Webブラウザ上でLama Cleanerが立ち上がります。

 

※なお私の場合このコマンドを入力すると「PermissionError: [WinError 10013] アクセス許可で禁じられた方法でソケットにアクセスしようとしました。」と表示され起動できませんでした。

ただport=8000に変更すると問題なく起動するようになりました。



2回目以降に起動したい場合

一度「Lama Cleaner」を閉じた後、再度起動したい場合は、「lama_cleaner」フォルダ内でコマンドプロンプトを開き、

.\venv\scripts\activate.bat
lama-cleaner --model=lama --device=cpu --port=8000(8080)

 

と入力してください。

 

上の2つのコマンドをbatファイルにまとめる

上で紹介した2つのコマンドをbatファイルにまとめることで、ダブルクリックするだけで「Lama Cleaner」を起動できるようになります。

 

まずメモ帳を開いて下記のように記入します。

call .\venv\scripts\activate.bat

lama-cleaner --model=lama --device=cpu --port=8000

 

メモ帳を保存し、名前を.batで終わるように変更します。「start_lama.bat」などにするとわかりやすいですね。

 

これを「C:\Users\name\Desktop\lama_cleaner」に保存します。

 

start_lama.batをダブルクリックするだけで、自動的に「Lama Cleaner」が起動するようになりますよ!

 

Google Colaboratory版

GitHub - Sanster/lama-cleaner: Image inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) any thing on your pictures.
Image inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) ...

 

上記ページ内にあるノートブックのリンク(下記)をクリックすることで、Google ColaboratoryでもLama Cleanerを使用できるかもしれません(未確認)。

 

「Lama Cleaner」の使い方

編集したい画像をドラッグアンドドロップして、消したい部分をブラシでなぞるだけで、自動的にその部分が削除されます。

マウスホイールで画像の拡大・縮小、マウスホイールをクリックした(押し込んだ)状態でドラッグすると画像の位置調整ができます。

 

ウィンドウの下部に表示されているボタン(下画像)は、左からブラシのサイズの調整、画像をウィンドウに合わせて自動表示、操作を1つ前に戻す(消去前の画像を表示)、先に進む、オリジナル画像の表示、画像のダウンロードになっています。

 

例えば下記の画像をご覧ください。モデルには「7th_anime_v3_B」を使用しています。

 

右側(赤矢印)に表示されている風船を消したい場合は、下記のようにブラシで塗りつぶします。

 

すると跡形もなく消えます。

 

これだけでなく、「Lama Cleaner」は非常に小さな領域の異物削除にも優れています。

画像を拡大して下記のように指の部分だけを塗りつぶすことで、

 

下の画像のように跡形もなく修正することができます。

 

ここが「Lama Cleaner」の神ポイントです。他の無料ソフトでこんな小さい領域を違和感なく削除するのはかなり厳しいんですよね~。

 

まとめ

以上が、画像内に含まれる余計な異物をAI処理で違和感なく消してくれる、完全無料のツール「Lama Cleaner」の紹介でした。

「余計なものが映り込んでしまってボツにした画像」を救うことができるので、ぜひ試してみてくださいね!

ファイルサイズも1.5GB程度とそれほど多くありません。ストレージに優しいですよ!

 

では、ここまで読んでいただきありがとうございました。

コメント

  1. かくまのぞみ より:

    パソコン詳しくないので手こずりましたが、詳しい手順を解説してくださっているおかげで無事導入することができました!
    そして使ってみたのですが…これは本当に素晴らしい!
    今まで使ったことのある有料のサービスより精度が高くて信じられないです。

    過去記事もとても参考にさせて頂いています。
    いつも親切に情報を公開してくださってありがとうございます!!

    • 悠 より:

      コメントありがとうございます!

      これ本当にすごいですよね!私もコメント欄で教えていただいたんですが、まさに目から鱗でしたw

      毎回読んでいただき誠にありがとうございます!また役に立ちそうな情報をまとめていきますね!

  2. 焼き芋太郎 より:

    いつもstable diffusion関連の記事を参考させてもらっています。今回もとてもためになるソフトを教えていただきありがとうございました。こちらの記事で無事マイPCに導入できました。ありがとうございます。
    記事の中で気になる点が1点ありましたのでご報告させていただきます。
    起動の際のコードのlama-cleaner –model=lama –device=cpu –port=8080ですが
    NVIDAのGPUを持っている方なら–device=cudaのほうが処理がcudaを使うほうが良いと思います。

    • 悠 より:

      コメントありがとうございます!非常に有益な情報感謝です!

      Githubのページによりますと、–device=cudaを使うためには、venv内でtorchのインストール(下記のコマンド)を実行しておく必要があるみたいですね。
      pip install torch==1.13.1+cu117 torchvision==0.14.1 –extra-index-url https://download.pytorch.org/whl/cu117

      ただPytorchのインストールは結構ストレージ容量を取るのと、–device=cpuでもほとんどストレスがないレベルで処理が速かったので、とりあえずcpuの方が万人向けかな~と思いました!

      • 焼き芋太郎 より:

        確かにcpuであれば使える人が増えますね。普段画像生成AIで酷使しているGPUが少しでも長く使えるように休ませてあげるにも良いかもしれないですね。

  3. ふぁるこん より:

    おお!

    紹介して下さったんですね。ありがとうございます (^^)

    不要なものを消すには最高ですよね。大きな修正は難しいですが、少しの修正なら救えるので重宝してます。

    たまに加筆機能は使いますが、ほとんどは修正機能のみで、モデルも「mat」でほぼ事足りてます。

    でも、拡張機能に入っているSegmentAnythingはすごいので、もしお時間があれば試してみて下さいね。髪や服の色を変えるとかも簡単にできて、Photoshopがいらないレベルですw ただ、GPU性能はそれなりに必要ですので、万人向けではないとは思います。

    • 悠 より:

      こんばんは!

      lama-cleaner最高です!本当に教えていただきありがとうございました!
      これを知る前はブラウザでできる修正ツールとかを使っていたんですが、本当に出来が雲泥の差ですw

      AIイラストでよくある手が3本の画像もほぼ違和感なく救えるので、絶対になくてはならないツールの1つになりました~!

      SegmentAnythingも少しずつ試してまして、マスクを作ってinpaint uploadに入れることで洋服を変えれないかなーとか挑戦していますw