この記事でのバージョン
Unity 2017.3.1f1
はじめに
ちょっと前に、Unity Asset StoreにIBM Watson Unity SDKが公開され、
UnityでもIBMのWatsonが簡単に使えるようになりました!
という事で今回は、WatsonをUnityで使ってみようという趣旨の記事です。
なお、現状Web PlayerやWeb GL上では使えないようです。
Watsonとは
そもそもWatsonとはなんぞやという所からですが、IBMのサイトでは以下のように説明されています。
IBMは、AIを「Artificial Intelligence(人工知能)」ではなく、「Augmented Intelligence (拡張知能)」として人間の知識を拡張し増強するものと定義し、IBM Watsonを中核とするコグニティブ・ソリューションとしてお客様に提供しています。IBM Watson(ワトソン)は、自然言語処理と機械学習を使用して、大量の非構造化データから洞察を明らかにするテクノロジー・プラットフォームです。
そしてUnityのサイトでは以下のように説明されています。
IBM と Unity は、Unity Asset Store で IBM Watson Unity SDK を公開し、Unity アプリケーションに Watson クラウドサービスが提供する画像認識、音声認識、言語分類などの機能を簡単に組み込めるようにしました。IBM Watson Unity SDK によって、開発者は一連のクラウドベースのサービスを通し最新の AI 技術を簡単に利用できます。
ざっくりまとめると、(Watsonが)自然言語処理と機械学習を使って
画像認識、音声認識、言語分類などが出来る(してくれる)らしいです。
具体的に何が出来るの?
次は具体的に何が出来るのかという話ですが、
APIのページに出来ることが列挙してあって分かりやすいです。
質問に自動で応答したり、画像に写ってるものを分析したり、
音声をテキストに変換したり、テキストから音声を合成したりと、
使用用途はかなり多岐に渡るようです。
また、それぞれのページには概要やデモ、活用例などが日本語でありました。
ただし、全ての機能がUnityで使えるかは分からないので、
実際に使う際は調べてみる事をオススメします。
料金
これだけ高機能だと、さぞかしお高いんでしょう?
と思い気や、なんと無料で使い始める事が可能です!
ただ、ちょっと触ってみた印象だと
「無料でも使える」というよりは「無料でも試せる」という感じでした。
また、料金体型が各機能ごとに違うので、そこにも注意が必要です。
使い方
無料で試せるという事が分かったので、実際に使ってみました。
ちなみに公式のセットアップ手順(英語)はGitHubにあります。
IBM のアカウント作成
まずはIBM Cloudのアカウントを作成します。
以下のページの無料で登録というボタンを押し、諸々記入してアカウントを作成します。
IBM Cloudのプロジェクト作成
アカウントが作成出来たら、IBM Cloud上でプロジェクトを作成します。
ログイン後、左上のメニューを押し、
Watsonを選択、
開いたページでサービスの参照を選択、
使いたい機能にチェックマークを付けSelectedにし、サービスの追加を行います。
最後にプロジェクト名を入力し、
右上の設定がLite(無料)なのを確認し、プロジェクトの作成を行います。
アセットのインストール
次にUnity側での準備です。
と言っても、Asset Storeにあるアセットをインストールするだけ。
IBM Watson SDK for Unity - Asset Store |
なお、Unityのバージョンは最近のやつならだいたい動くっぽいです。
サンプルを動かす
後はServiceExamplesにサンプルがあるので、これを動かすだけ。
動かし方も簡単で、
試したいGameObjectだけ有効にし、Username等を入力し、エディタを実行するだけ。
ちなみにUsername等は、先ほどIBM Cloudのページで作成したプロジェクトの
資格情報の欄から確認する事が出来ます。
実際にテキストを音声に変換する機能をUnity上で使ってみました。
なお、ExampleTextToSpeech.csの設定を以下のように変更してます。
//声にするテキストを変更 string _testString = "<speak version=\"1.0\">あいびーえむのワトソンを ユニティーで使ってみた!</speak>";
//声の種類を日本語に変更
_textToSpeech.Voice = VoiceType.ja_JP_Emi;
見ての通りエラーが出ていますが、これは無料では使えない機能があるという事っぽいです。
おわりに
ちょっと触ってみた程度ですが、実装自体は結構簡単に出来そうです。
ただ、Webページというか情報が分散していたり、一部日本語の情報がなかったりと、
結構分かりづらいので、調べるのに根気は必要そうです。
また、無料ではそもそも使えない機能も結構あるようなので、
実際に使うとなると、最初から本腰入れて使わないキツそうなイメージでした。
参考