ゲレの工房

ゲーム好きの中の人が、自分が作りたいアプリを作る記録です

FF14雑記:進捗報告:スクリーンショットからエオルゼア文字の判定がここまで出来るようになった

前回の記事はこちら
blog.gelehrte.com

簡単に言うと、FF14スクリーンショットから文字の部分だけを切り抜いて、その部分だけを物体検出で英数字に変換したいという話です。詳しくは前回の記事へ。
今回の記事はその進捗ややったことなどです。

進捗報告

わかりにくいかも知れませんので補足しながら。
今回の機能で、FF14スクリーンショットからエオルゼア文字の部分がある程度判定出来るようになりました。
エオルゼア文字の部分は色の枠が付いています。また枠にはラベルが付いていて、それぞれ以下のような意味です。

  • letters :エオルゼア文字。
  • letters_r_90 :エオルゼア文字が90度右に回転して表示されている。
  • letters_l_90 :エオルゼア文字が90度左に回転して表示されている。
  • letters_180 :エオルゼア文字が180度回転して表示されている。
  • letters_flip_h :エオルゼア文字が左右反転して表示されている。

以下が例えば地図のスクリーンショットを判定したものです。
FF14の地図にエオルゼア文字が入っていることの言語を超える力による判定

先日まで行われていたゴールドソーサーのイベントのスクリーンショットはこのようになります。
FF14のゴールドソーサーフェスティバルのスクリーンショットにエオルゼア文字が入っている判定を言語を超える力で

今後の方針

当面の形にできるまで

ここまで判定出来たので、今後はUI部分を改善したいと思います。具体的には

ここまでを一旦の形にして公開できるようにしたいと思います。

さらなる目標

いくつか考えています。

  • Twitterで特定のハッシュタグをつけてツイートすると、Twitter APIで読み込み、言語を超える力での解析をして専用ページを作り、そのツイートもしくはメンションで専用ページへのリンクを送る。
  • スクリーンショットに上書きする形で、エオルゼア文字を英数字に変換した状態のスクリーンショットを作成する。( どういうイメージかは前回の記事で )
  • 上書きする機能を利用し、より精度の高い翻訳後動画として出力したい。(昔やろうとした古い結果はYouTubeにて)

終わりに

まだまだUI部分を充実させないと、他の方々に使ってもらいにくい状況であることは認識しています。少なくとも現状、エオルゼア文字自動切り抜き機能は公開できていない状態です。
時間を見つけた早く公開したいですね。

本ブログ記事はFF14プレイヤーの読者が多いと思いますので、ひとまずはここで終わりの挨拶をノ`・ω・)ノ

補足:プログラマー向け記事

どうやって物体検出しているのか

詳しくはこちらの記事で
blog.gelehrte.com

問題はスクリーンショットという大きな画面で小さな文字部分をどうやって判定するかでしたが、「efficientdet_d0_coco17_tpu-32.config」を以下のように修正しました。
簡単に言うと、keep_aspect_ratio_resizerによるmin_dimensionを512に、学習データのbatch_sizeを8にしました。これが私の持っているグラボの限界でした。
具体的なコードはGistでどうぞ。

以上です。ありがとうございました。


広告