仮想と物理とエトセトラ

xRや物理とかごった煮の備忘録的技術ブログ

簡易翻訳機を作ってみる その1 方法検討および調査

最近小技だったり、SDKの使い方だったりが多いので、たまには小規模なアプリを作ってみようと思います。
今回は、HoloLensの音声入出力周りやweb APIをHoloLensから触る方法の学習も兼ねて、簡易翻訳機を作ってみようと思います。
※どこかで誰かがやっていそうな気はしますが、気にしない

翻訳後の文章はUnityEventなどに登録することでどこにでも出力できるようにして、様々なアプリに組み込むことができるようにしたいです。
そうすれば、HoloLensを用いたほかのアプリにも取り入れることができそうです。
せっかくMRTKを用いるので、Oculus Questなど別デバイスの対応もしたいですね。

内容の検討

今回の翻訳機はHoloLensを用いた以下の簡単な構成を検討しています。
追加で面白いものを思いついたら、別途追加しようと思います。
※画像認識と翻訳組み合わせられると面白そうですが、画像認識を結構ガチでやらないと精度でなさそう。

  1. HoloLensのマイクを用いて音声を入力する。
  2. 入力した音声を文章にする。
  3. 文章を翻訳する。
  4. 翻訳した結果を文章と音声として出力する。

技術検討

1, 2についてはHoloLensに標準搭載されているディクテーションの機能で実現できそうです。
ただし、ソフトウェアキーボードを毎度表示してディクテーションを開始するのはおっくうなので、ハンドメニューのボタンやボイスコマンドで翻訳開始、停止を実現したいです。

3についてはHoloLensのみでは難しいです。
外部のサービスに頼ることになりますが、翻訳精度の問題もあるので複数同時使用や、選択的に使用することを可能にしたいです。
現状である程度無料使用でき、HoloLensからweb APIをたたいて使用できるサービスは以下です。
ほかにもおもしろそう or 魅力的なものがあれば導入してみます。

  • Deepl www.deepl.com 月50万字まで無料(上限のため、課金される心配なし?)

  • Azure Translator azure.microsoft.com 毎月 200 万文字は無料

  • Google cloud.google.com 月に最初の50万字まで無料(それを超えると課金される模様)
    下記を使用するとタダでできそうだけど、規約的に大丈夫か? qiita.com

4についてはとりあえずはMRTK 2.7で追加されたTextToSpeechを用いてみようと思います。
docs.microsoft.com

ただし、どの程度の言語に対応しているか、現時点では不明なため、別のものも模索します。
未対応言語はとりあえず文字列出力ですかね。

※日本語の場合下記も使ってみたいですが、基本的には有料のためまたの機会に。

coefont.cloud

とりあえず、週によって作ったり作らなかったりするかとは思いますがのんびり作ってみようと思います。
短いですが、今回はここまで。