![見出し画像](https://assets.st-note.com/production/uploads/images/128990341/rectangle_large_type_2_482f455f8ac06743d44abe832c2b5194.png?width=1200)
CartoonSegmentation を使ったキャラクター切り抜き
![](https://assets.st-note.com/production/uploads/images/128971801/picture_pc_172c9eb8e5d62af45aa87dc84ad0135d.gif?width=1200)
![](https://assets.st-note.com/img/1706369653892-p7UMrl8GX3.png?width=1200)
こんにちはこんばんは、teftef です。今回は,CartoonSegmentation を使って画像内の被写体抽出をするツールについてです。実はあまりフロントエンドの開発経験がなく、いつかやろうと思っていた React + FastAPI の勉強ついでに作ってみたツールに紹介もあります。
私もまだ初学者であり、説明が間違っていたり勘違いがある可能性が 0 ではないということをご了承ください。ぜひコメントなどをいただけたら幸いです。また、この記事を作成するにあたり、GPT-4 による校正、修正が含まれています。
※この記事は有料となっていますが、最後まで内容が読めます。
前回の記事で、 セマンティックセグメンターションを用いて画像から特定のオブジェクトの RGBα 画像を抽出してみました。
その結果、被写体抽出するだけなのであれば、CartoonSegmentation を使ってやった際に、最も精度高く (定性評価) 被写体抽出できたと思います。
![](https://assets.st-note.com/img/1706249940202-eKfT0cvSoR.png?width=1200)
![](https://assets.st-note.com/img/1706249654393-Bhqqz1FdAU.png?width=1200)
そこで、 React と FastAPI の練習として、軽い切り抜きツールを作ってみました。
使い方
Node.js のインストール
とりあえず Node.js が必要なので入れましょう。
repositoryのクローン
git clone https://github.com/teftef6220/CartoonSegmentation_React.git
cd CartoonSegmentation_React
クローンして開きます。
仮想環境作成
仮想環境を作成し、
python -m venv .venv
.\.venv\Scripts\activate
環境構築
python と Node.js の環境を構築する。
# python の環境構築
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0"
mim install mmdet
pip install -r requirements.txt
pip install pytoshop -I --no-cache-dir
# Node.js の環境構築
npm install
モデルのダウンロード
モデルを huggingface からダウンロードします。
huggingface-cli lfs-enable-largefiles .
mkdir models
git clone https://huggingface.co/dreMaz/AnimeInstanceSegmentation models/AnimeInstanceSegmentation
下のリンクからダウンロードし、 models というディレクトリを作ってその中に保存でもいいです。
起動
start_ui.bat をダブルクリックで実行します。
なんかエラー出る!!という場合はコマンド画面から直接実行することもできます。⇩
ターミナルを 2 つ立ち上げて、両方とも仮想環境に入っておきます。
片方で、
python fast_api.py
もう片方で、
cd react-app
npm start
を実行すると
このようにブラウザが立ち上がります。
![](https://assets.st-note.com/img/1706357371928-C45lMtKWmY.png?width=1200)
パーツ分け
「ファイルを選択」から画像を選択して Process Image を押して少し待ちます。そうすると結果が下に出てくるので、欲しい画像を選択して、左下の save Image で保存したりできます。
![](https://assets.st-note.com/img/1706369819289-8tq4hn9ot7.png?width=1200)
Photoshop データ
processed/ の下に psd データとしてそれぞれのレイヤーが保存されています。
![](https://assets.st-note.com/img/1706369607205-PthbnvDUhj.png?width=1200)
最後に
というわけで、キャラクターのパーツ分けソフトです。この先、レイヤー分けしたpsd ファイルを作成するなどいろいろ付け足していきま。。
最後に少し宣伝です。主のteftefが運営を行っているdiscordサーバーを載せます。このサーバーでは Midjourney やStable Diffusionのプロンプトを共有したり、研究したりしています。ぜひ参加して、お絵描きAIを探ってみてはいかがでしょう。(2,000 字,teftef)
↓↓もしよろしければこの記事と開発の支援お願いいたします!
※注意 : 支援してくださる方へ
※注意 :ここから先は何も内容がありません。しかし、この記事をお読みいただき、良かったと感じていただけたのであれば、この記事と開発の支援お願いいたします!
ここから先は
¥ 500
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?