OBSプラグインでObject Detectionを見つけた!
黒塗りアプリのOBSプラグイン化ができたらいいのになー、難しそうだなー
と思っていたところ、既にOBSプラグインでObject Detectionができるプラグインがありました。
それがこちら↓
ただ当方の利用している物体検出モデルではなく、EdgeYOLOというモデルを利用しているとのこと。
学習用のデータもあったので、EdgeYOLOを学習させ、OBSで黒塗りできるか試してみました!
やってみた感想がこちら。
- 思っていたより結構消える!
- 結構消えるけど、70点くらいで、漏れも結構ある。特に長い名前は消えにくい印象。
- チャット欄もあんまり消えてくれない。
- 当方の環境では1つのPCで黒塗り配信しながらゲームできました。
ゲーム中は常に70%負荷、メモリは4GB程度で大したことないです。 - ただクリア後はムービーと同様なのか処理が重く、ロットのneedボタンなどを押すのもモタモタする感じ(最近ムービーがなんか重たいんです・・・
OBSプラグインを設定し、手持ちの動画をOBSで再生しOBSで録画
OBSプラグインを設定し、FF14をプレイしながらOBSでyoutubeに配信
OBSプラグインに利用できるFF14黒塗り学習済みモデルはこちらからダウンロードしてください↓

OBSプラグインなどの使い方概略
私よりも読んでる方の方が詳しいかもしれませんが、一応。
DirectMLを利用しており、基本的にWindows専用です。
またOBSプラグインは、現在は開発停止状態のようです。
1.上のOBSのサイトから、プラグインのZIPをダウンロード。
2.解凍して、OBSの配下に配置する。
3.OBSのFF14のゲームキャプチャを右クリックして、フィルタ をクリック

4.エフェクトフィルタの+ボタンを押して、Detect をクリック

5.下の方にあるAdvanced Settingsをチェック(すると、下に設定が開く)

6.最下部の Model から、 External Model を選択し、下のモデルパスでダウンロードし解凍したff14_pcname_obs_detect_768x1280_batch1.onnxを選択

7.上に戻って処理方法を選択
- Preview detection boxes は、枠と検出スコアなどがでますが、不要だと思います。
- Masking Optionsで処理を選択します。
使いやすそうなのは、Solid Color、Blur、Pixelate あたりだと思います。

今後の展開
思っていたより消えるけど、綺麗には消えてくれないので、微妙ではあるとは思っています。
同じ学習データを利用していますが、学習は遅いわ結果は微妙だわで、ちょっと残念ではあります。
が、せっかく長い時間をかけて学習させたので、公開してみるものです。
こちらに関しては、消えないぞ!と言われても、精いっぱいです、としか言えないと思います。
幸いソースが公開されているので、元気があれば、黒塗りアプリの処理をこちらに移植するかもしれません。
検出精度と引き換えに処理速度は落ちるので、実用的な速度になるのか?とも思ったりしてます。
何が言いたいかというと、あまり期待はしないでください。