NICT 音声認識・翻訳アプリ SDK を用いた 改良インターフェース Android

平成 27 年 卒業論文中間レポート
NICT 音声認識・翻訳アプリ SDK を用いた
改良インターフェース Android アプリケーション開発
近畿大学工学部 情報システム工学科
システム開発コース 1210960031 豊田晃己
1
目次
第1章 研究の背景
1.1 研究の内容
1.1.1 SDK
1.2 Android(アンドロイド)
1.3 Android(アンドロイド)の特徴
1.3.1 インターフェース
1.3.2 文字の入力
1.3.3 Android アプリケーション
1.4 Android Studio(アンドロイド スタジオ)
1.4.1 Android Studio(アンドロイド スタジオ)の機能
第2章 研究計画
第3章 研究の現状
3.1 研究過程
第 4 章 今後の課題
※参考文献
2
1 研究の背景
表 1 から総務省の通信利用動向調査によると,平成 23 年のスマートフォンの利用率は 10 代は 18.2%,20
代は 44.9%,30 代は 28.9%,40 代は 18.3%,50 世代は 9.3%である.そして平成 24 年のスマートフォンの利
用率は 10 代は 52.9%,20 代は 70.6%,30 代は 54.8%,40 代は 39.5%,50 世代は 20.9%である.このデータか
ら平成 23 年から平成 24 年のスマートフォン利用率が 1 年で 2 倍近く伸びていることがわかる.(※1)
また,今後スマートフォンの普及率が上がっていくので,スマートフォンを持っている人に対して便利
なアプリケーションを開発・提供したいと考えた.
現在の組み込みデバイス開発を取り巻く状況は,「多種多様な周辺機器やネットワークへの接続が可能
であるか」,「ネットワーク上にあるコンテンツにアクセスする必要性の増加」,「高い視覚的・感覚
的な操作要求」である.
現在デバイス開発の現場では,高機能・多機能化,省電力化などが求められるだけではなく,さらに「開
発期間の短縮」も要求されている.
また,携帯電話向けソフトウェア・プラットフォームは「Android」,「iOs」,「Bada」,「BlackBerry
OS」,「Firefox OS」,「iOsSymbian OS」,「Ubuntu for Phones」,「Windows Mobile」,「Windows
Phone」,「Windows RT」があったが,私はソフトウェア・プラットフォーム「Android」を選択した.
なぜなら「Android」は多くの組み込みデバイスの製品コストとして重要な“変動費”を削減可能で
あったこと,Android は同じ開発環境,同じ SDK,同じプラットフォームでの動作が保証されているため,
ソースコードの移植性・再利用性が高まり,複数のデバイス上のアプリケーションを開発する場合の開
発費が抑えられること,Android を採用することで操作性・表現力の向上が可能であることでる(※2)
今後スマートフォンは普及率が向上するので,Android アプリの知識を深め,便利なアプリケーション
を開発・提供するため,音声認識・翻訳アプリアプリケーションを作成することを目的とする.
表 1 インターネットの利用動向
3
1.1 研究内容
組み込みデバイスの開発の課題・問題の多くを解消できる Android で Android アプリケーションソ
フトの開発ツールである「Android Studio」を用いて NICT が提供している音声認識・翻訳アプリの
SDK(ソフトウェア開発キット)を用いてアプリケーションを作れるのだが,このまま作ると,音声を認
識し,選択した言語が翻訳され,選択した言語の音声翻訳が再生されるのだが,ボタンを押さないと音声
認識,翻訳音声が再生されないので,使い勝手が悪い.
よって,この音声認識・翻訳アプリの改良インターフェースアプリを作成をすることを目的とする.
1.1.1 SDK(※3)
SDK(Software Development Kit,ソフトウェア開発キット)は,特定のソフトウェアパッケージ,ソフト
ウェアフレームワーク,ハードウェアプラットフォーム,コンピュータシステム,ゲーム機,オペレー
ティングシステムなどのためのアプリケーションを作成するためにソフトウェア技術者が使用する開
発ツールのセットである.
1.2 Android(アンドロイド)(※4)
Android(アンドロイド)とは,Google によってスマートフォンやタブレットなどの携帯電話向けソフ
トウェア を主なターゲットとして開発されたプラットフォームである.カスタマイズ版 Linux カーネ
ル,ライブラリやフレームワークその他のミドルウェア,ART 仮想マシン,主要なアプリケーションから
なるソフトウェアスタック(集合)パッケージで構成されている.2014 年現在,スマートフォン用の OS
としては,世界シェア 1 位である.
1.3 Android(アンドロイド)の特徴(※4)
1.3.1 インターフェース(※4)
Android の基本操作はタッチインターフェースとなっており,指を使って直感的な操作ができるように
なっている.表示されたボタン類を押すタップ,長押しタップ(つまむ),画面端からタップスライドし
てメニュー類を表示するスワイプ,マルチタッチによるピンチや回転などができるようになっている.
画面をタップした際に,ボタンを押したという感覚を起こさせるために,本体をバイブで振動させる機
能を持ち合わせている.これにより,高い視覚的・感覚的な操作が可能になっている.
1.3.2 文字の入力(※4)
Android には文字入力のための IME(文字入力を補助するソフトウェア)を搭載しており,テキストボッ
クスを開くと画面上に仮想キーボードが表示される.この仮想キーボードを,タップやスワイプ操作す
る事によって文字を入力できるようになっている.IME とハードウェアが対応していれば,Bluetooth や
USB 接続の外付けキーボードを接続して入力することができる.また発声によって文字入力を行う音声
入力システムも備えている.
1.3.3 アプリケーション(※4)
Google の認可を受けた端末には,アプリケーションマーケットとして Google Play がインストールされ
ている.多くの端末では,この Google Play からアプリコンテンツをダウンロードして使えるように
なっている.
Google は Google Play を経由しないアプリ配布も認めており,APK ファイル(Google によって開発され
た Android 専用ソフトウェアパッケージのファイルフォーマット)から直接インストールする事がで
きるようになっている.
なお Google Play を経由しないアプリは野良アプリと呼ばれている.
4
1.4 Android Studio(アンドロイド スタジオ)(※5)
Android Studio(アンドロイド スタジオ)とは Google が提供する Android アプリを開発するためのソフ
トウェアで,プラットフォームに対応する統合開発環境(IDE)と呼ばれている.Android Studio(アン
ドロイド スタジオ)は 2013 年に Google が発表した比較的新しい開発環境である.
1.4.1 Android Studio(アンドロイド スタジオ)の機能(※5)
2014 年 9 月現在,Android Studio(アンドロイド スタジオ)で提供されている機能は以下の通り.
・WYSIWYG エディタを使用したリアルタイムなレンダリング.
・デベロッパーコンソールからの各種情報取得.
・ベータ版リリース機能.
・Gradle ベースのビルドのサポート.
・リファクタリングとクイックフィックス.
・Lint ツールによるパフォーマンス,ユーザビリティ,バージョン互換等のチェック.
・ProGuard によるソース難読化とアプリ署名.
・Android 共通のデザインおよびコンポーネントを作成可能なテンプレートベースウィザード.
・開発中のレイアウトを複数の画面サイズで表示可能.
・Android Wear 対応アプリのビルドのサポート.
・Google Cloud Platform の組み込みのサポート.Google Cloud Messaging(英語版)や App Engine
との統合を可能にする.
2. 研究計画
3 月 開発環境 Android studio の環境構築,デバック用のエミュレータを設定
4 月 参考書で java の本を読み,学習
5 月 Android Studio で参考書のサンプルアプリコードを打ち込み,デバック
6 月 NICT 音声認識・翻訳アプリアプリケーション SDK をエミュレータでデバック
7 月~8 月 卒業論文中間報告レポート製作
9 月~12 月 NICT 音声認識・翻訳アプリアプリケーションの改良アプリの作成
1 月 卒論製作
2 月 卒論発表準備
2 月 卒論発表会
3.研究の現状
3.1 研究過程
3 月 開発環境 Android studio の環境構築し,デバック用のエミュレータを設定
・自分自身の環境
環境構築する PC の OS は Windows7 で行い, Java の Java Development Kit (JDK) 7
をインストールした.
・環境変数 JAVA_HOME と Path の設定
Android Studio を実行するために環境変数 JAVA_HOME に JDK のコマンドラインツー
ルがあるフォルダのパスを環境変数 Path に Java を使ったプログラムのコンパイルや
実行するために必要なファイルがあるディレクトリへのパスを設定する必要があったためである.
・デバッグ用のエミュレータの必要なファイル
SDK Manager で必要なファイルはエミュレータの高速化のために Intel x86 Atom System Image をインストール
した.
他に Google APIs,SDK Platform ,Intel x86 Emulator Accelerator (HAXM installer)も合わせてインストールを
行った.
・Intel x86 Emulator Accelerator (HAXM installer)のインストール
Intel x86 Emulator Accelerator (HAXM installer)を SDK Manager でインストールしたが,インストールした
5
ことにはなっておらず,手動で Intel x86 Emulator Accelerator (HAXM installer)をインストールす
る必要があったため,BIOS で Intel Virtualization Technology (別名 Intel VT-x)を有効 にしない
とインストールができないのでこれを有効にし,インストールを行った.
・エミュレータの作成,設定
エミュレータに必要なファイルがインストールされたため,AVD(Android Virtual Device) Manager
を起動し,エミュレータの設定を行った.
設定は,RAM(Random Access Memory)を 512MB で設定し,エミュレータの作成を行った.
図 エミュレータの起動確認
4~6 月 Android アプリの開発環境「Android Studio」でのアプリ
ケーション作成のための基本的操作など学習.
Android で画像を画面中央表示させるアプリを作成
図 サンプルアプリ実行結果
6
Android でのボタンを作成しボタンを押すと画像を表示する基本的アプリを作成.
図 サンプルアプリ実行結果
6 月 NICT 音声認識・翻訳アプリアプリケーション SDK をエミュレータでデバック
この SDK をデバックするために,外部ライブラリの参照する必要があったため,参照設定を行って,デ
バッグを行った.
図 アプリの起動,音声翻訳がされている
7
4.今後の課題
インターフェースの改良が一番の目的だが,アプリの画面の表示に対する学習がまだ足りてないので,
このことについて学習を進め,NICT 音声認識・翻訳アプリアプリケーションの表示も改良する必要があ
る.
アプリ画面の表示の学習を深くすることを目標としている.
※参考文献
(※1)総務省 平成 24 年通信利用動向調査の結果
http://www.soumu.go.jp/main_content/000230980.pdf
(※2)IT media ニュース
http://www.itmedia.co.jp/news/articles/1206/28/news016.html
(※3) SDK
https://ja.wikipedia.org/wiki/%E3%82%BD
%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%E9%96%8B%E7%99%BA%E3%82%AD%E3%83%83%E3%83%88
(※4)Android
https://ja.wikipedia.org/wiki/Android
(※5)Android Studio
https://ja.wikipedia.org/wiki/Android_Studio
8