Amazon Rekognitionを用いた不適切画像検出の調査

# はじめに
ユーザー投稿型SNSサイトにおいて、不適切な画像を自動検出するために、[Amazon Rekognition](https://aws.amazon.com/jp/rekognition/)について調査しました。

Amazon Rekognitionは、Amazon Web Services（AWS）が提供する機械学習ベースの画像および動画分析サービスです。このサービスを使用することで、画像や動画内のオブジェクト、人物、テキスト、シーン、アクティビティの検出、さらに顔の分析や比較が可能です。

# デモ
AWSアカウントをお持ちであれば、Amazon Rekognitionのデモを無料で試すことができます。
「Amazon Rekognition」ページ内の 「デモを試す」 をクリックしてください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3659381/3deb95cd-c987-adc9-8692-8295ed5a1bfe.png)

# ラベル検出の調査
今回は、Amazon Rekognitionのラベル検出機能を使用して、画像ごとにどのようなラベルが検出されるかを調査しました。
使用した画像素材は、[pixabay](https://pixabay.com/ja/)から取得したものです。

# 適切な画像の例
まず、ユーザーが一般的に投稿する適切な画像を検証しました。
| 画像 | 結果 |
|:-:|:-:|
| <img width="100px" src="https://cdn.pixabay.com/photo/2023/12/14/07/44/dog-8448345_1280.jpg"></img> | <img width="400px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3659381/5852acaa-77e7-6fab-eb8a-7d47c524bcb6.png"></img> |
| <img width="100px" src="https://cdn.pixabay.com/photo/2023/05/22/13/45/mount-fuji-8010752_1280.jpg"></img> | <img width="400px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3659381/91097d61-e6cb-57f9-04eb-4089a30d1930.png"></img> |
| <img width="100px" src="https://cdn.pixabay.com/photo/2023/03/23/13/15/sleep-7871915_1280.jpg"></img> | <img width="400px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3659381/136082e0-3cf7-4868-f8c7-ac8daa661573.png"></img> |
| <img width="100px" src="https://cdn.pixabay.com/photo/2024/03/21/20/43/ai-generated-8648473_1280.jpg"></img> | <img width="400px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3659381/a58c2a51-e218-a19e-58a4-2fed4ac0d3f3.png"></img>  |

この結果をもとに、不適切な画像との違いを比較していきます。

# 不適切な画像の例
## 性的な画像①
| 画像 | 結果 |
|:-:|:-:|
|  |  |
| <img width="100px"  src="https://media.istockphoto.com/id/875310896/ja/%E3%82%B9%E3%83%88%E3%83%83%E3%82%AF%E3%83%95%E3%82%A9%E3%83%88/%E3%83%93%E3%83%BC%E3%83%81%E3%81%AE%E6%B0%B4%E7%9D%80%E3%81%AE%E5%A5%B3%E6%80%A7.jpg?s=612x612&w=is&k=20&c=KLtLXaNJ7bcWEwngxU2Ezghrky_uMNQ5l44xvVcc1os="></img> | <img width="400px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3659381/358f59a1-fc7e-4417-335b-46a44f86a7b9.png"></img> |

結果：下記ラベルで検出できそうです。
Swimwear
Bikini
Underwear

## 性的な画像②
| 画像 | 結果 |
|:-:|:-:|
|  |  |
| <img width="100px"  src="https://media.istockphoto.com/id/75403756/ja/%E3%82%B9%E3%83%88%E3%83%83%E3%82%AF%E3%83%95%E3%82%A9%E3%83%88/%E9%9B%84%E3%81%AE%E3%83%9C%E3%83%87%E3%82%A3.jpg?s=2048x2048&w=is&k=20&c=8I5mPqw0YsVA9fD5O7W5zLbb62quzurrM_cCSrC-z80="></img> | <img width="400px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3659381/9c2fac6c-cff2-9dc8-5270-d94fb757f4b8.png"></img> |

結果：下記ラベルで検出できそうです。
Skin

## 暴力的な画像①
| 画像 | 結果 |
|:-:|:-:|
|  |  |
| <img width="100px"  src="https://media.istockphoto.com/id/871203794/ja/%E3%82%B9%E3%83%88%E3%83%83%E3%82%AF%E3%83%95%E3%82%A9%E3%83%88/%E6%AE%BA%E5%82%B7%E4%BA%8B%E4%BB%B6.jpg?s=2048x2048&w=is&k=20&c=UqM7cpzfO533EsZy1JO9PIwMB4CkjoEGe0X6NArRrmk="></img> | <img width="400px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3659381/1fff8440-9d0a-afe3-ae0c-0a20bfe4fee7.png"></img> |

結果：下記ラベルで検出できそうです。
Blade
Dagger
Knife
Weapon

## 暴力的な画像②
| 画像 | 結果 |
|:-:|:-:|
|  |  |
| <img width="100px" src="https://cdn.pixabay.com/photo/2022/10/12/13/46/girls-7516670_1280.jpg"></img>   | <img width="400px" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3659381/89c127ec-e9b8-49cb-6070-40ebd16c2c61.png"></img> |

結果：使えそうなラベルはありませんでした。

# まとめ
今回の調査では、Amazon Rekognitionのラベル検出機能を用いて、SNSサイトにおける不適切画像の検出可能性を検証しました。その結果、以下のことが分かりました：

**・性的な画像**：特定のラベル（例：Swimwear, Bikini, Skin）が一部の画像で有効に検出されました。
**・暴力的な画像**：一部の画像では、BladeやWeaponといったラベルが適切に検出されましたが、全ての暴力的な画像に対応するわけではありませんでした。

上記以外に下記が不適切投稿と言われておりますが、すべてを検出するのは難しそうです。
・誹謗中傷
・著作権や肖像権の侵害
・個人情報やプライベートな情報
・ステマ
・従業員による会社の名誉や信用を損なう投稿

Amazon Rekognitionは多くの画像で高い精度を発揮する一方、検出が難しいケースに対しては補完的な手段やカスタマイズが必要である可能性があります。SNS運営における不適切画像の自動検出精度をさらに向上させるため、独自のフィルタリングロジックの導入や、他のツールとの組み合わせも検討する必要があります。