VR翻訳オーバーレイアプリ(仮名)
- パスワード不要版(突然使用不能にする可能性があります)ダウンロード商品¥ 0
- パスワードは直接聞いてくださいダウンロード商品¥ 0

【テストにつき限定公開中】 なんらかの方法で私にパスワードを聞いてください。 【パスワード不要版】 突然使用不能にする可能性があります。 とあるVRMMORPGのストーリーやチュートリアルで長い英文を連発されて英語を勉強するよりアプリ作ったほうが低コストだと判断したため、作成した翻訳アプリです。 VR空間に非水平表示されている文字という悪条件の文字認識&自動翻訳のため、精度は高くありません。 過度な期待はしないでください。 大まかな流れは以下の通りです。 アプリ(ゲーム)ウィンドウ ↓ 文字認識 ↓ 翻訳 ↓ SteamVRにオーバーレイ表示
詳細
アプリ(ゲーム)ウィンドウ ウィンドウから一定時間おきに画像取得 ↓ 文字認識 (v0.6a以降) TesseractOCRv5.0.1(dll)を使用 (v0.5a以前) TesseractOCRのv5.0.0-alphaを使用 色んな引数と共にexeを実行 https://github.com/UB-Mannheim/tesseract/wiki ↓ 翻訳 Google Apps Scriptへお任せ 定期実行する都合上アクセス過多が予想されます。 各自スクリプトを作ってもらう必要があるかもしれません。 必要になったらコピペ用にスクリプトを公開します。(初めてでもGoogleアカウントを持っていれば10分以内でできると思います。) ↓ SteamVRにオーバーレイ表示 灰色文字で文字認識した英語 白色文字で翻訳後の日本語を表示します。 v0.1aキー操作(本アプリをアクティブにした状態) F5:認識タイミング手動更新 F6:定期認識の一時停止・開始(v0.1挙動調整中 タイミングによって動作しないことがあります) F7:認識補助枠色の切り替え (無し→白→黒→赤) v0.2aキー操作(本アプリをアクティブにした状態) F5:認識タイミング手動更新 F6:定期認識の一時停止 F7:認識補助枠色の切り替え (無し→白→黒→赤) F8:定期認識の再開(再開には数秒かかります) v0.3a操作(本アプリをアクティブにした状態) F5:認識タイミング手動更新 F6:定期認識の一時停止 F8:定期認識の再開(再開には数秒かかります) マウスホイールドラッグ:カメラ移動 マウスホイールスクロール:カメラ拡縮 マウス右クリック:カメラ位置と拡縮のリセット マウス左クリック:枠色の変更 ※起動時にリセットされます。
認識補助枠色について
通常、黒い文字を認識する精度が高いですが、 VRゲームでは様々な色の文字が使われています。 文字色と枠色が近いと認識しやすくなる特性があるようなので、精度が低い場合にお試しください。
動作環境
Windows 10 CPU: Intel i5-4590以上 Memory: 8GB Graphics: Geforce GTX 1060以上 SteamVR使用アプリのみオーバーレイ表示できます。 Pimaxでは表示ズレでうまく動作しないようです。 自分の視点からずれた位置(VROCRウィンドウに表示されている部分が翻訳されます) ※カメラ位置を移動して、読み取りやすい位置で認識させてみてください。
使用方法
①(v0.7a以降は不要) 以下のページから tesseract-ocr-w64-setup-v5.0.0-alpha.20191030.exe をダウンロードし、インストールしてください。 https://github.com/UB-Mannheim/tesseract/wiki ※v0.3a以前ではInstall just for meを選んだ場合のみコンフィグ設定についての"Install just for meを選んだ場合"を行ってください。 ②このページ下部からアプリケーションをダウンロードして解凍してください。 【解凍PWは直接聞いてください】 ③翻訳したいアプリケーションを起動してください。 ④VROCR.exeを起動してください。 ⑤翻訳したいアプリケーションのウィンドウ名の一部を左下のテキストボックスに入力します。 初期設定では5秒毎文字認識して翻訳してから表示します。 必要に応じて手動で翻訳トリガー(F5キー)を入力してください。 文字が小さい場合や余白が大きすぎる場合は、マウススクロールにて認識画面を拡縮してサイズを調整してください。 できる限り文字を水平かつ正面から文字を見てください。背景を単色に近い状態にしたり、文字色と枠色を合わせたりすると認識率が上がります。
コンフィグ設定について
VROCR\VROCR_Data\SerializeData.xmlから設定の調整が可能です。 CaptureCameraPos:アプリケーションから取り込んだ画像を拡大や指定位置を表示した状態で文字認識させたい場合にカメラ位置を移動できます。 SorceLanguage:認識文字言語です。追加したい場合は"eng+jpn"のようにしますが、tesseractの言語データをインストールしておく必要があります。また、後述のIsAlphabetOnlyをfalseにする必要があります。 TesseractEXEFilePath:Tesseractのexeファイルパスです。初期設定でインストールした場合はC:\Program Files\Tesseract-OCR\tesseract.exeにあると思います。 GASURL:翻訳して返してくれるGoogle Apps ScriptのURLです。アクセス過多になったら負荷分散用にありますが、基本触らないでください。 Interval:文字認識を試みる頻度(秒)です。3~5秒程度か、大きな数値を入れておいて、手動(F5)で認識させるのがオススメです。 IsAlphabetOnly:アルファベットと一部記号を除いた記号を含む単語を除去します。頻繁に単語を飛ばされる場合はfalseに変更してください。 TextSize:文字サイズです。認識する行が多すぎて画面に入りきらない場合などに変更してください。 IsShowSorceLangage:翻訳前の認識文字を表示するかどうかです。翻訳前後で比較してみたい場合はtrueに変更してください。 ※Install just for meを選んだ場合 TesseractEXEFilePathの C:\Program Files\Tesseract-OCR\tesseract.exeを C:\ユーザー\AppData\Local\Tesseract-OCR\tesseract.exe に変更してください。
VaNiiMenu (バニーメニュー)など併用のオススメ
https://sabowl.sakura.ne.jp/gpsnmeajp/unity/vaniimenu/ 本アプリは文字認識のexeを定期実行しているため、多少の負荷がかかります。 VaNiiMenuのLauncherに起動・終了用batファイルを入れたり、ファンクションキー入力方法もいくつか用意されており、本アプリのインプットに便利ですので併用することをおすすめします。 VaNiiMenuの表示はVRViewにしか映らないため、文字認識に影響はありません。 設定例など、詳細はそのうち書きます。 感謝して使用させていただきましょう。
既知の不具合と対策
・2バイト文字の含まれるパス下で動作しない →本アプリフォルダ全体をドライブ直下など、2バイト文字の含まれないパスに移動してください ・Windowの指定ができない →アプリを再起動してください ・翻訳されない →アプリを再起動してください ・SteamVRがカクカクする →SteamVRの解像度を落とすなど、スペックに余裕を持たせるなどしてください ・その他 →アプリを再起動してください それでも解決しない場合、お問い合わせください。
アップデート履歴
[2019-12-05: v0.1a] 限定公開 [2019-12-05: v0.2a] 限定公開 F6トグル挙動不安定のため、F6とF8に一時停止・再開機能分割 [2019-12-12: v0.2a_パスワード不要版]追加 [2020-02-15: v0.3a]枠色UI追加とカメラ移動機能追加 [2020-02-15: v0.3a_パスワード不要版]同上 [2020-02-15: v0.4a]対応するウィンドウ名が見つからなかったときにディスプレイ全体を取得する機能追加 [2020-02-15: v0.4a_パスワード不要版]同上 [2020-05-20: v0.5a]改行のみの行を削除する機能追加・翻訳前を非表示機能追加(デフォルト設定で非表示)・文字サイズ変更機能追加 ウィンドウ名が取得できないバグの修正でウィンドウ名入力ボックス追加 [2020-05-20: v0.5a_パスワード不要版]同上 [2020-06-03: v0.6a]文字表示位置を中央ぞろえに変更・取得できないウィンドウを取得できるように変更・デフォルトで翻訳前の英文表示するように復元 [2020-06-03: v0.6a_パスワード不要版]同上 [2022-01-25 v0.7a]Tesseractのインストールが不要に変更・オーバーレイ表示しないコンフィグ設定の追加 [2022-01-25 v0.7a_パスワード不要版]同上 [2022-01-27 v0.7a_パスワード不要版 改め、v0.7a_passfree版] フォルダパスに2バイト文字が入っているとアプリケーションが落ちるため、ファイル名を変更 既知の不具合と対策の項を追加
利用規約・お問い合わせ
本アプリケーションにより生じた損失・損害等は一切責任を負いかねます。 本アプリケーションの再配布はご遠慮ください。 本アプリケーションでのGASへの不正アクセスなど、不審なアクセスが確認された場合、予告無しに翻訳機能停止させていただく場合がございます。 不安定な動作が予想されますので、安定利用を目的とした利用は強くご遠慮願います。 ご利用方法などわからないことがありましたら本ページを熟読の上、Twitterなどで聞いてみてください。 Twitter:@Yuzuki_Tatikawa