Hero img
無料で何枚でも背景透過できるrembgで背景を切り抜く

膨大な量の画像を背景除去する方法

背景を透過するソフト、サービスを調べて見たが良いものが無かったので、qiitaでrembgを知った。


目次

  • rembg
  • rembgに出会った
  • 環境
  • rembgを使う
  • rembgのインストール
  • 使ってみる
  • 画像単体
  • フォルダー内全てを変換
  • エラーが起きた
  • まとめ

rembg

背景を透過するソフトやサービスを調べましたが、良いものが見つかりませんでした。そこで、qiitaでrembgというオープンソースの背景除去ツールを知りました。rembgを使用することで、画像から背景を除去することができます。  

このツールは機械学習モデルを利用して、背景とオブジェクトを分離しているようです。

pipを使ってインストールでき、誰でも利用できます。具体的な使い方は以下の通りです。

rembg-befor rembg-after

rembgに出会った

私はstable-diffusionを「Google Colab」で、ローカルのPCでも使っています。

AIのおかげで膨大な画像が生成されますが、透過画像が欲しいと思いこのrembgに出会いました。
グラフィックボードを使ったGPU駆動も可能ですが、CPUでも十分な速度で変換するため、cuda等インストール不要で使うことができるので導入が比較的簡単です。   rembgを使用するにはPythonの環境が必要です。

環境

  • windows 10 64bit
  • python : 3.9.2rc1
  • GPU : GTX 1060

rembgを使う

rembgを使うにはpythonの環境が必要になります。
pythonのインストールは省略させて頂きます。

rembgのインストール

pythonの環境があるので,次の一行のコマンドだけでインストールができます。

pip install rembg

正常にインストールされている場合次のようになります。

rembg --version
#バージョンが返って来ます。
rembg, version 2.0.32

使ってみる

使い方は非常に簡単で、Pythonコードを書く必要もなく、コマンド一行で一つの画像ファイル、もしくはフォルダー内の画像を全て透過処理できます。

画像単体

まず画像1つを透過させてみます。

rembg i filename.png outname.png
#ファイル名にスペース等が入っている場合があるのでダブルコーテーションで囲って上げればいいですね
rembg i "./filename.png" outfilename.png

フォルダー内全てを変換

ファイル単体で変換する運用はほとんど無いと思うのでフォルダー内の画像を全て透過画像に変換する際は、こちらのコマンドで実行ができます。 output用のフォルダーは先に作って置いてください。

rembg p "foldername" "outputfoldername"
# こんな感じで簡単にできちゃう
# rembg p ./a out
rembg-folder

エラーが起きた

インストールが正常にできてないためか、次のエラーで起動ができない時期がありました。

onnxruntime::ProviderLibrary::Get [ONNXRuntimeError] : 1 : FAIL : LoadLibrary failed with error 126 "" when trying to load "c:\users\username\appdata\local\programs\python\python39\lib\site-packages\onnxruntime\capi\onnxruntime_providers_tensorrt.dll"

一度アンインストールする

関連するパッケージを削除し、再度インストールを実行します。

#アンインストール
pip uninstall rembg 
pip uninstall onnxruntime 
#再度インストール
pip install rembg[gpu] onnxruntime-gpu 

まとめ

python環境さえあれば、すぐに使えるrembgはめちゃくちゃ便利だった。
フォルダー内の画像を全て変換してくれる優しい設計で、コマンド一行で全て変換してくれる もっと早く知りたかったですね。

関連記事

コメント

コメントを書く

質問や、間違いがありましたら、お気軽にどうぞ

※お名前とコメントの内容を入力してください。
※全てこのブログ上に公表されます。
※許可なく管理者によって修正・削除する場合がございます。 詳しくはプライバシーポリシーを参照ください