LoginSignup
4
1

More than 5 years have passed since last update.

RoBoHoNで 『手旗信号版 嵐が丘』 もどきの実装

Posted at

モバイル型ロボット電話 RoBoHoN で、イギリスBBCのコメディ『空飛ぶモンティ・パイソン』のコントのひとつ

mp.jpg

「手旗信号版 嵐が丘」- The Semaphore Version of Wuthering Heights-
の RoBoHoN 実装を試みました。

img.png

(本家コントでは、発語せずに字幕+手旗信号なところがミソですし、後述しますが、各種仕様制約により ”もどき" となりました…)

環境です

Windows 7 SP1 64bit
Android Studio 2.3.1
RoBoHoN_SDK 1.2.0

ロボホンアプリのアイディア出しについて

以前、RoBoHoNと「触覚」というお題で、RoBoHoNと一緒におおきなかぶを抜く アプリを実装しました。
今回は(新SDKの評価と同時に)RoBoHoNと「視覚」というお題でアプリを考えました。

「視覚」とロボホン

ロボホンが視覚へもっとも訴えかけるのは、それが『動く人型』である、ということです。

ロボホンアプリのアイディア出しをするときに沸き上がる、

 「そのアイディア、スマホ実装で十分では…?」

の問いに克つには、スマホ / タブレット が持っていない『動く本体』『頭と手足』を活用するのがスタートラインかと思いました。

そこで、今回は『動く』『手』を前提とするコミュニケーション『手旗信号』を検討しました。

tebata.jpg

ロボホンのモーションと手旗信号

ロボホンの公開SDKモーションは動きが限定されていて、開発者が自分でモーションを作り込むことはできません。

ロボホン公式ドキュメントのショートモーションリスト1から、手旗信号に流用できそうなモーションを選別しました。
(ショートでないモーションリスト2もありますが、より、シチュエーション特化の記述なのでドキュメントだけでは選別難しく…(逆引きか動画があるとありがたいです))

robogif.gif

結果… 現状、以下の 2文字 しか、表現できなそうだということが判りました。

アルファベット ロボホン動作 旗位置
D 右手を上げる  dflg.PNG
U 両手を上に上げる  uflg.PNG 

D と U で何が表現できるかなと調べると、不発弾を意味する dud という英単語があり、
「不発弾(がここにあるぞ!)」
という緊迫した状況でロボホンに旗を振ってもらうもよし、不発弾転じて、

((口))役立たず[期待外れ]のもの[人](http://ejje.weblio.jp/content/dud)

という意味もあるそうで、なんというオチ……。
 
今回は…英語を発語しながらそれらしく旗を振り回す「もどき」アプリ実装へ、着地することにしました!

実装

ざくざくと下記の事前手順を踏みます。

  • RoBoHoN_SDK_1_2_0 ダウンロード
  • SDKフォルダ直下の README.txt 記載の更新ドキュメントをひととおり読む
  • Android Studio のバージョンを確認(>= 2.3.1)して終了。pluguin フォルダをオリジナルに戻してから、0803_SR01MW_RoBoHoN_Template_V01_02_00 を上書きコピーしてロボホンテンプレート更新
  • 公式ドキュメント 801 の「6.1 テンプレートを利用した新規プロジェクト作成」でロボホン発声まで実行し、テンプレート更新完了を確認

実装します。

tebata.hvml
<?xml version="1.0" ?>
<hvml version="2.0">
    <head>
        <producer>com.dev.robohon.tebata</producer>
        <description>tebata(英語)</description>
        <scene value="com.dev.robohon.tebata.scene_common" />
        <version value="1.0" />
        <accost priority="75" topic_id="t1" word="com.dev.robohon.tebata.tebata" />
    </head>
    <body>
        <topic id="t1" listen="false">
            <action index="1">
                <behavior id="0x06005a" type="normal"/>
            </action>
            <action index="2">
                <behavior id="0x060001" type="normal"/>
                <speech><emotion type="sadness" level="3">oh....</emotion><wait ms="6000"/></speech>
            </action>
            <action index="3">
                 <behavior id="0x06000f" type="normal"/>
                <speech><emotion type="sadness" level="3">....cathe</emotion></speech>
            </action>
            <action index="4">
                <behavior id="0x060027" type="normal"/>
            </action>
            <action index="5">
                <behavior id="0x06002c" type="normal"/>
            </action>
            <action index="6">
                <behavior id="0x06002d" type="normal"/>
            </action>
            <action index="7">
                <behavior id="0x060001" type="normal"/>
            </action>
            <action index="8">
                <behavior id="0x060057" type="normal"/>
                <speech><emotion type="sadness" level="3">....rin</emotion><wait ms="3000"/></speech>
            </action>
            <action index="9">
                <behavior id="0x060023" type="normal"/>
            </action>
        </topic>
    </body>
</hvml>

(おまけ)本家コントの旗信号解析

動画を適宜 スライス して、眺めました。
(※ OpenCVの記述が長くなったので別記事にして投稿しました)

  • テリージョーンズ(ヒースクリフ役)は、顔アップや遠景で紛らわせているかんじで…
  • キャサリン役の方はエモーショナルに旗を振り回しているので、ポジション判別が難しい(はじめの O H 以後がeuij?)!
  • エドガー役、乳母役、老人役の方は旗信号感を表現していました
役柄 文字
3259.jpg Rのところ  R.PNG
3762.jpg S  S.PNG
3888.jpg Z  z.PNG


  1. 公式SDK ドキュメント 603 (HVML2.0 Specification AppendixB (Motion List)) 

  2. 公式SDK ドキュメント 602 (HVML2.0 Specification AppendixA (Motion List)) 

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1