Watsonと連携したPepper:Speech to Textで音声認識精度を上げてみよう

Watsonと連携したPepper:Speech to Textで音声認識精度を上げてみよう

Watson Speech to Text & pepper

こんにちは。

AI coordinatorの清水秀樹です。

Pepper単体でも音声認識機能は持っていますが、如何せん認識精度が悪いのは周知の事実ですよね。

Pepperと会話をしたければ、想定される会話をあらかじめSpeech Reco.やダイアログに登録しておく必要があります。

これはこれでPepperと会話が出来なくはないけど、かなり限定的な会話しかできません。

 

この問題の解決策の一つして、WatsonとPepperの連携があげられます。

Bluemix上にあるWatson APIの中にSpeech to Textというアプリがあり、これをPepperに組み込むだけで飛躍的に音声認識精度をあげることができます。

 

ここではPepperにWatsonのSpeech to Textを組み込む方法を紹介します。

 

Blumiexは30日間は無料で使用できるので、ぜひ試してみてください。

また、当記事最後にプロジェクトファイルのダウンロードリンクを貼ってあります。

手っ取り早く使ってみたい方は記事最後まで読み飛ばしてください。

 

事前準備

Pepperを使う以上はコレグラフのインストールは必須です。

また、Bluemix上でWatson Speech to Textアプリを作成しておく必要があります。

Speech to Textの作成方法は以下の記事を参考にしてください。

Watosn Speech to Text をPythonで使ってみよう

 

プロジェクトファイルの説明

コレグラフで実装するプロジェクトファイルの説明です。

ここで紹介するプロジェクトファイルは、人間が話した内容をPepperがオウム返ししてくれるというアプリケーションです。

非常に単純に作っていますので、特に実装に難しい部分はありません。

Watsonと連携したPepper:Speech to Textで音声

ボックスは全部で4つです。

  1. Speech Reco.ボックスはアプリを開始するために準備しただけです。
    ペッパーと声がけするとアプリがスタートします。
  2. Record SoundボックスはPepperに話しかけている内容を録音します。
    ここでは5秒間録音します。
    録音後はwav形式で保存し、次のボックスにファイルのパスを連携します。
  3. Watson STTはPythonボックスで実装しています。
    このボックス内で先ほど録音した音声ファイル(wav)をWatsonのSpeech to Textに渡し、そこでテキスト化された音声データを次のボックスに受け渡します。
  4. 最後のSay Textボックスはオウム返しするために準備しただけです。

以上です。

プロジェクトファイルのダウンロードはこちらから → Speech To Text.zip

 

実機で確認済みです。

ぜひお試しあれ。

この記事の内容について、相談したい方へ

技術選定・実装の進め方・組織での導入など、AI/IoT全般のご相談を受け付けています。

無料相談会(30分・オンライン)

About The Author

Hideki
東京大学発AIスタートアップでロボット開発室室長・画像解析室室長・動画解析室室長を務め、画像認識関連のAI特許を在籍中に3件取得。その後、KDDIグループでプロダクトリーダーとして自然言語処理パッケージの自社開発を経て、現在はAGRIST株式会社の執行役員CTO 兼 VPoEとして、農業の人手不足解決に向けた収穫ロボットの開発組織を統括しています。AI・ハード・エレキ・通信・クラウド・IoTまでを一気通貫で設計できる視点を強みに、性能だけでなく「感動やワクワク体験」までデザインできるロボットの研究を進めています。並行して、AI coordinatorとして企業のAI導入・教育機関のAI授業・地域の技術相談を月額契約で継続伴走しています。

COMMENTS & TRACKBACKS

  • Comments ( 4 )
  • Trackbacks ( 2 )
  1. とても分かりやすい記事でした、ありがとうございます。
    実機のペッパーで試したみたところ、以下のようなエラーが出てしまいます。
    原因が分からないのですが、どうしたら良いのでしょうか。
    コードはurl,username,password以外の部分はいじっておりません。

    [ERROR] behavior.box :_safeCallOfUserMethod:125 _Behavior__lastUploadedChoregrapheBehaviorbehavior_1622976592:/Watson STT_2: Traceback (most recent call last):
    File “/usr/lib/python2.7/site-packages/albehavior.py”, line 113, in _safeCallOfUserMethod
    func(functionArg)
    File “”, line 35, in onInput_onStart
    KeyError: ‘results’

    • お問い合わせありがとうございます。

      watsonからのリターンをからうまく文章が抜き出せない感じでエラーになっているみたいですね。

      url,username,passwordに間違いはないでしょうか?

      • 返信ありがとうございます。
        エラーはそのような意味なのですね。ありがとうございます。
        url,username,passwordをもう一度確認しましたが、間違いはないようです。
        23-25行のみを変更すれば良いのですよね?

        • あ!?
          urlはそのままにして、変更する箇所はusername,passwordのみでやってみてください。
          サービス資格情報のurlはパラメータが不足しているので、サービス資格情報のurlをそのまま貼り付けただけでは動きません。

  1. […] 前回記事で紹介した「Watsonと連携したPepper:Speech to Textで音声認識精度を上げてみよう」で、会話を聞き取れるPepperを開発できたら、次のステップアップとして質問に回答できるPepperを作ってみましょう。 […]

  2. […] 話しかけた言葉をしっかり認識できるPepperの開発方法は「Watsonと連携したPepper:Speech to Textで音声認識精度を上げてみよう」で紹介していますので参考にしてみてください。 […]

LEAVE A REPLY

*
*
* (公開されません)