koudenpaのブログ

趣味のブログです。株式会社はてなでWebアプリケーションエンジニアをやっています。職業柄IT関連の記事が多いと思います。

画像がえっちかコンピュータに合議制で判断してもらう

昨今画像が性的だとか話題になっています。どの辺りから性的なのか、えっちなのかは見る人の主観によるところが大きいです。

これに対して、昨今では無限のクラウドの力で画像が性的かは簡単に判定することができます。

それが正しいかは不明ですがブレない判断ではあるでしょう。

ところで、僕は新世紀エヴァンゲリオンに登場するコンピュータ『MAGI』の作りが結構好きです。

新世紀エヴァンゲリオンの用語一覧 - Wikipedia

NERV本部施設の運用やEVAシリーズのサポート、第3新東京市の市政に利用されている、スーパーコンピュータシステム。第7世代有機コンピュータとされる。メルキオール (MELCHIOR)、バルタザール (BALTHASAR)、カスパー (CASPER) という3つの独立したシステムによる合議制をとり[16]、人間の持つジレンマを再現している。

無限のクラウドには幾つかのプロバイダがあり、それぞれ画像が性的であるか? の判断を行えます。

というわけでMAGIに倣って合議してもらいました。

f:id:koudenpa:20200301191451p:plain
多分引用で済むけれど一応画像にはモザイクをかけております。

Mさんは Microsoct Azure Cognitive Services Computer Vision 、Aさんは AWS Amazon Rekognition Gさんは GCP Google Cloud Vision です。

これらの画像のラベル付けSaaSはどれも露骨に性的(Adult)か? と、不健全、えっち(Racy)か? の指標を返却してくれるので、それを適当に均しています。

こうした行為を応用するには、FaaSなどを使って無数のコンテンツを一気に処理した方がいいのだけれど、やりたいのはカジュアルに画像を選択して判定、だったのでWebアプリケーションとしてGUIを作りました。最近触っているBlazorです。 (そもそも多量の画像を個人で持っていない、という話もある)

画像判定のSaaS接続の資格情報をバキバキに使う関係上Blazor Serverです。とりあえずのホスティングはApp Serviceに行ってみました。データの永続化は CosmosDB の1カ月限定無料お試しアカウントに行っています。つまり、ホスティングの寿命も1カ月です。

Blazor ServerはSignalRで閲覧者一人毎に接続を確立するので、オープンインターネットに公開するには向かないのだけれど、零細個人のお試しならどうにでもなるでしょう。

他のトピックとしてはユーザーの情報保存にお金を追加で払いたくなかったのでASP.NET IdentityのデータストアもCosmosDBにしてみました。

そんなところです。後はBlazor ServerでOGP情報をいい感じ設定できるか? 位は試してみたいと思います。せっかくのサーバサイドレンダリングですし。

それでは。とりあえずのホスティングリポジトリは以下です。興味があればお試しください。

blazormulticomputervisionserver.azurewebsites.net (Freeプランなのでコールドスタートに時間がかかります)

github.com


追記:

後はBlazor ServerでOGP情報をいい感じ設定できるか?

やっている人はいる。そりゃ需要ある。 qiita.com

かなりの力業で、なかなか難しい課題であることが分かる。


追記: CosmosDBにFreeが提供され始めたそうなので延命して追加で試すかも。

k-miyake.github.io