推しアイデア
夏の赤ペン先生はユーザーが夏に撮った写真をもとに採点を行います。夏に関連する写真をラベル化し、それをもとに言語解析のモデルを生成します。ユーザーの写真をラベル化し、作成したモデルを使い採点を行います。
夏の赤ペン先生はユーザーが夏に撮った写真をもとに採点を行います。夏に関連する写真をラベル化し、それをもとに言語解析のモデルを生成します。ユーザーの写真をラベル化し、作成したモデルを使い採点を行います。
夏休みの宿題が採点されるのと同じように夏休みの過ごし方を写真をもって採点しようと考えました。チーム内で出たアイディアの中で一番面白そうだったので、このアイディアに決定しました。
フロントはFlutterでスマホアプリを作成。バックエンドはFastAPI使用し実装。画像のラベル化はGoogle vision api、ラベルの解析はWord2Vec、デプロイはAzure Container Instanceを使用、ユーザー認証はFirebaseで実装。
夏休み最終日。その夏を振り返りながら自分が過ごした夏の日々を採点しよう。
Flutterで実装しました。 特にデザインやUI/UXにこだわった。テーマの変更機能やチュートリアル画面を実装したり、Lottieというサービスでアニメーションを実装したりするなどユーザーに飽きさせないような工夫をしました。
FastAPIで実装しました。 ユーザー登録や画像採点、採点情報の取得、画像ごとやユーザーごとのランキングの取得などのエンドポイントを実装しました。また、それらのエンドポイントのテストコードも書き、エラーの少ないバックエンドになっております。
以下↓の画像は開発段階のものです!!なぜ、ポプテピの画像が高得点をたたき出したのかはわかっていません。。。。
点数は100点満点での採点です。
Word2Vecは本来文章を形態素解析して学習させるものとなります。しかし、今回は画像から画像内の要素を単語化(ラベル化)し、その単語群で学習させました。目的は夏っぽい画像から取り出したラベル群の関係性を見つけるためとなっています。 Bing Image APIでキーワード検索の結果(URL)を取得し、それをCloud vision APIに投げることでラベル化をしています。その、ラベルデータをテキストデータとして保存し、それを使ってWord2Vecの学習を行いました。
精度はあまり高くありませんでしたが一番良い結果が出た現在の方法を取っております。
このアプリでの採点はあくまでネタとして見てください。投稿する画像や画像の種類よって夏の画像であっても点数が低く出ます。また、逆もしかりです。冬の画像でも高得点が出る可能性があります。