【インターンシップでの開発アプリ紹介】Android + IBM Watsonで筆跡認証

1.はじめに

こんにちは。
お久しぶりです。ワダです。
現在、鳥取大学大学院の2年生で、
イサナドットネットへは来年度から入社予定です。

このインターンシップへの参加は、
今回で3度目になります。

2.インターンシップに参加した理由

何度参加しても新たな学びがあるからです。

また、前回以降に学習した成果を自分自身で確認したいという気持ちもあったので参加しました。

3.インターンシップでの課題

今回は、Android + IBM Watson で「筆跡認証アプリ」を作りました。
昨年、Pepperのアプリ作成はさせてもらったので、今回はAndroidアプリになっています。
しかも、最近話題のコグニティブコンピューティング、IBM WatsonのAPIを使用しました。
Watsonの学習と筆跡の認証の両方をAndroidからするということにこだわりました。

使用機器とAPIは以下になります。
• Nexus 6 (Android 5.1.1)
• Visual Recognition

このアプリは
① 筆跡収集フェーズ
② 筆跡認証フェーズ
の2つのフェーズに分かれています。

①筆跡収集フェーズ
このフェーズは、自分の筆跡を収集するフェーズです。
ここでは、以下の2種類の画像を収集し、Watsonに学習させます。

  • ポジティブ画像:私がカタカナで「ワトソン」と書いた画像
  • ネガティブ画像:他人が書いた「ワトソン」or 正解とは全く違う画像

図1がポジティブ画像の例、図2がネガティブ画像の例になります。
今回はポジティブ、ネガティブ画像をそれぞれ150枚程度用意しました。

図1. ポジティブ画像の例
図2. ネガティブ画像の例

筆跡収集画面は図3のようになります。

図3. 画像収集画面

処理手順は以下のようになります。
A) 図3の白いキャンバス部分に文字を書きます。
B) 右下の「クラス名の指定」ボタンを押すと、図4のようにダイアログが出て、クラス名を変更することができます。

※このクラス名は、Watsonで分類器を作るときにポジティブ画像の集合の名前になります。
簡単に言うと、集めたポジティブ画像を入れたフォルダの名前のようなものです。

C) 右上のメニュー画面を押すと図5のようにメニューが現れます。
D1)  書いた画像を正解画像にしたければ「ポジティブに保存」を選択します。
D2)  不正解画像にしたければ「ネガティブに保存」を選択します。
E) 「学習する」を押して分類器を作成します。これが、学習です。

※今回はWatson APIのトライアル版を使用したので、識別機は1つまで、アップデートはできないという制約がありました。
そこで、「学習結果をリセット」というメニューも用意しました。
分類機をアップデートしたい場合は、学習結果をリセットして再度学習する必要があります。

図 4. クラス名指定ダイアログ
図 5. 筆跡収集のメニュー画面
②筆跡認証フェーズ
筆跡認証画面は図6のようになります。
図 6. 筆跡認証画面
筆跡認証フェーズの処理手順は以下のようになります。
A) 図6の白いキャンバス上に文字を書きます。
B) 認証するボタンを押すと図7のようなプログレスダイアログが表示され、認証が始まります。
図 7. 認証プログレスダイアログ
C1) 認証の結果が成功であれば、図8のように認証成功画面へ遷移します。
C2) 失敗であれば図9のようにトーストを表示して再記入を促します。
図 8. 認証成功画面
図 9. 認証失敗画面

4.インターンシップを終わっての感想

今回は全体を通して、2年前の1回目のときから成長を感じられるインターンシップになりました。 
2年前もAndroidアプリを作成したのですが、当時は、APIなどはメンターの方にすでに使える状態にしてもらった上で、基礎的なことからアドバイスをもらってなんとか完成、という感じでした。
しかし、今回はWatsonのAPIを使えるようにするところから自分でやりきることができました。また、比較的理解しながら作成できたので、自分でも自信になりました。
毎度のことですが、社内の方との交流もすごく刺激になりました。 
特にインターンシップの成果発表の場で、こうしたらもっとよくなる、こう使ったら面白いんじゃないか、というような議論に発展していたのが印象的でした。
今回参加させていただいて、改めて入社が楽しみになりました。

ありがとうございました。

5.最後に

2017年4月から入社予定のワダさんのインターンシップ体験記をブログとして掲載させてきました。

3度目というだけあって、スケジュール管理や社内での発表がしっかりしているな
と思いました。
実りのあるインターンシップになってよかったです!

isana.netでは積極的にインタンシップを受け入れ中です。

味持った方はisana.netまでおい合わせ下さい。
詳細い合せはこちら

イサナドットネット全でお待ちしております。
%d人のブロガーが「いいね」をつけました。