漫才ジェネレータ

概要

1. 漫才ジェネレータとは?

漫才ジェネレータの構造
漫才ジェネレータとは、漫才の台本テキストから、その内容に合わせた声色、ネタ画像を出しながら漫才する動画を生成するものです。漫才してくれるのは可愛いハムスター2匹で、お客さんも全員ハムスターです。彼らのトークとリアクション、そして画像演出をお楽しみください。

1.1. 音声合成・感情推定

漫才ジェネレータ中の動画に登場するハムスターは、台本の内容に応じて感情を込めて話してくれます。また、感情バランスに応じて表情を変えたりリアクションを取ってくれます。感情豊かなハムスター達を温かい目で応援してあげてください。 感情推定にはMashup Award の提供API の一つである感情解析API(メタデータ株式会社様より)を使用しています。 また、音声合成には同じくMashup Award の提供API の一つであるVoiceText Web API(HOYA 株式会社様提供)を使用しています。音声合成のAPI は他にもありましたが、作者の好みでHOYA を選択しました(^-^;

1.2. 画像検索

漫才ジェネレータが生成する動画では、台本に書かれてあるキーワードを抽出し、Twitter のキーワード検索によって利用者自身のアカウントから関連する画像を検索します。 他のSNS 系API でも言えることですが、最近はAPI の使用制限がかなり強くなってきています。特に、Twitter の検索対象が過去1週間という制約があり、このために昔投稿した画像が検索されないという問題があり、より良い解決策を模索しているところです。 (もちろん、お金である程度解決もできるのですけどね…) キーフレーズ(特徴語)抽出にはYahoo テキスト解析(Yahoo様より)を使用しています。

1.3. 会場とキャラクター

3Dモデルのレンダリング及び制御にはUnity を使用しています。 また、3Dモデルの調達はUnity のアセットストアを利用しています。 漫才ジェネレータの動画生成に使っている3Dモデルコンテンツは、具体的には2種類です。 一つ目は会場のために使用したAcademy Theater (Captoonz様)、もう一つはハムスターのキャラクターとして使用しているHamsto (SURIYUN様)で、いずれも漫才ジェネレータ作成のためにアセットを購入しています。 また、バックミュージックにはサウンドバイブル(株式会社データクラフト様)を購入して使用しています。

2. 使用したAPI

API名 企業名 用途 MA提供API
感情解析API メタデータ株式会社 キャラクターの表情・振舞い・声色を決めるための、テキストの感情解析 〇
VoiceText Web API HOYA 株式会社 キャラクターの音声合成 〇
Yahooテキスト解析 Yahoo キーフレーズ(特徴語)抽出 〇
Unity Unity合同会社 CGエンジン 〇
Twitter API Twitter SNS検索・画像検索 〇

3. 生成動画の例

3.1. 漫才ジェネレータ説明(正面映像)

3.2. 漫才ジェネレータ説明(観客席からの360度映像)

席に座っているかと思いきや、実は全員椅子の上に立っているという。。。

3.3. 漫才ジェネレータ説明(演者からの360度映像)

漫才VR-2 への布石!!!

4. 台本の書き方

4.1. フォーマット

台本はテキストファイルで記述してください。文字コードはUTF-8N です。 各行にセリフを順番に書いていきます。 AとBで話をする場合は、1行目には必ず
A&B:セリフ
のように、二人の話者を半角文字&でつなげた後、半角文字コロン(:)を挟んでセリフを記述してください。2行目以降は
A:セリフ2
B:セリフ3
A&B:セリフ4
のように、両者または一方の名前を書いた後、コロンを挟んでセリフを記述してください。

4.2. 台本テキストファイルの置き場所

実行ディレクトリから見て、./SenarioContents というディレクトリを作成し、このディレクトリの中に台本テキストファイル(.txt)を設置してください。

4.3. 例

はむ&あざらしん:どうも動物漫才です。よろしくお願いしまーす。
あざらしん:今日はマッシュアップアワードに向けて開発した漫才ジェネレータを紹介しますね。
はむ:わくわく。
あざらしん:説明に詰まったらフォローお願いね。

5. 動画の生成手順

漫才ジェネレータを起動すると、各種設定を行う画面が出てきます。 漫才ジェネレータの設定

[1] タイトル

動画の最初に表示されるタイトルを入力して下さい。

[2] 台本ファイル名

先述した ./SenarioContents ディレクトリの下に配置されたテキストファイルの一覧が表示されます。生成したい動画の台本を選択してください。

[3] お客さんの入り

スライドバーを動かしてお客さんの数を設定してください。 最も少ない場合はお客さんはいません。最も多い場合は満席になります。

[4] 合成音声の話者名

HOYA - VoiceText の話者がドロップダウンリストに表示されていますので、希望の話者を選択してください。 ボケ・ツッコミ両方に対して設定してください。

[5] 話の速さ

3段階設定できます。好みのスピードを選択して下さい。 最初は「100:普通」を選択するのが無難でしょう。

[6] ハムスターの模様

ドロップダウンリストから項目を選択すると、ハムスターの模様を変えることができます。好みの柄を探し、設定してください。

[7] シナリオをロードして始める

上記の設定で台本を読み込み、動画を再生します。

6. 漫才VRについて

漫才ジェネレータのきっかけになった漫才VRについてここでご紹介します。 漫才VRは2017年MBSハッカソンで吉本芸人のラフ次元(のボケ担当の空さん)らとチームを組み、開発したVR アプリケーションです。 ハッカソンではなんと優勝しました。
ハッカソン時点ではかなり作りが荒かったのですが、ハッカソン後、諸々の活動を通してアプリケーションの磨き上げ、宣伝、調査などを実施し、これらを受けて漫才ジェネレータの開発に取り組んでいます。
↓ MBSハッカソン終了時の風景。HANDS LABさんのサイトより引用。 MBSハッカソン

6.1. Unite Tokyo 展示・講演

2017/5/8, 9 にUnity 最大のカンファレンスUnite Tokyo にて、HTC 様枠での展示・講演を致しました。 HTC 西川さんとVive プロジェクトの皆様, Unity 常名さんに色々お世話になりました!
Unite Tokyo VIVEとUnityで、1週間で作る漫才VRもご覧ください。

6.2. MBS(大阪毎日放送) チャリウッド2017デモ展示

2017/5/13, 14 にMBS(大阪毎日放送) チャリウッド2017にて、漫才VRのデモ展示を実施いたしました。
漫才VR の全体的なブラッシュアップ、採点結果の印刷やクロマキー合成によるリアル芸人とプレイヤーの合成映像生成、youtube への期間限定動画公開など、強力な機能追加をして臨みました。 (東京へ転勤した作者は大阪へ前日入り。)
漫才VRチームメンバーの一人である前田ディレクター及びスタッフの皆様にお世話になりました。Thanks!

採点結果の印刷 ユニフォーム着た作者 ホテルに戻って微調整 作者の高校OBが遊んでるところ

6.3. 吉本漫才劇場 ラフ次元単独ライブ

2017/5/20、よしもと漫才劇場にて、ラフ次元単独ライブ「ラフ次元の九次元」が開催されました。客席は大入り満員でした!ラフ次元にとって漫才劇場での単独ライブは今回初めてだったようで、記念すべき単独ライブでなんと漫才VR をコーナーのネタで取り扱って頂きました! スマイル・瀬戸さん、見取り図・盛山さん、マルセイユ・津田さんが精鋭ゲストとして遊んでくださいました。感謝!
漫才VRと芸人の皆様
吉本ニュースセンターの『MBSハッカソン』最優秀賞に輝いた「漫才VR」で盛り上がるコーナーも!ラフ次元 単独ライブ「ラフ次元の九次元」でも紹介されておりますので、是非ご覧ください。

6.4. ラフ次元と某所にて

東京でもたまに漫才されているので、ちょいちょい足を運んでいます。 今年は調子悪かったようですが、来年もM1頑張れ~(^^;
ラフ次元と某所にて ラフ次元と某所にて ラフ次元と某所にて

7. 漫才VRアンケート


遊んでみた感想

評判は上々。

面白かったポイント

芸人さんと漫才体験ができるのが過半数を占めてました。次が音声認識でツッコミ採点ができるポイント。ここも違和感はなし。

音声認識の使い勝手

ゲームとしては何とか使えそうなレベルでしょうか。ただ、一部の特性を持つお客さんには反応が悪いという課題もまだあります。また、日本語にしか対応していません(と言いつつ、裏でごそごそ英語版にもトライしようとしています。)

モーションコントローラ

実はハッカソン時点でのスティックコントローラを用いたモーション検知方式には問題があって、見直しを考えていました(残念ながら、Unite Tokyo で紹介した検知方法は不十分なものです…)。また、Unite Tokyo のデモで使用した、トラッカーを使った方式も試してみましたが、認識率は問題ないものの、着脱が面倒だという課題が見つかりました。

チャリウッドが終わった時点で急ぎ方式を見直し、スティックコントローラでも高い精度でモーションを検知できるようにしてアンケートを収集しました。 結果、概ね良好な評判だったようです。

漫才のシナリオについて

シナリオ自体は流石、面白いという方が多かったようです。 また、シナリオのテンポは丁度良いという人と、速いと言う人とが半々ですが、これは慣れの問題もありますので、シナリオを増やした時に初心者用と熟練者用とに分けたほうが良いかもしれません。

バージョンアップについて

「芸人さんを他にも増やして欲しい」がダントツでした。ただ、これを実現するのは相当難しいのです。やるなら吉本・松竹あたりを巻き込んで、本気でお互いの商売を考えないといけないでしょう。今、個人活動の規模でこれをやるのは正直難しいところです(作者はしがないサラリーマン…)。

次点は「シナリオを増やして欲しい」。 シナリオを増やすだけなら露出の少ない(作者のような)人でもOKですが、映像にして公開するとなるとなかなかハードルが高いのです(何に転用されるかわからない…) CG化をまじめに検討したほうが良いかもしれません。

アンケートの結果からわかるように、リアル芸人さんを外すというのは正直大きなマイナスポイントでしょう。では実際どのくらいマイナスポイントなのか?影響度合いを知りたいところです。なので、CG版も試してみようと思いました。
少なくとも、応援している芸人さんがいるファンの方にとっては、「リアル芸人ではない」というのは極めて大きなマイナス要因だと思いますが、実際はどうなのでしょう? とにかく試してみよう。意外な発見があれば儲けものだと思って。

そんなことを考えながら、漫才ジェネレータの開発を開始しました。

8. 漫才ジェネレータ 今後の展望

8.1. VRとしての展望

漫才システム戦略

8.1.1. 漫才VRの振り返り:コンテンツの数を増やしたい

漫才ジェネレータの開発を始めたのは、元々漫才VRを拡張するために考え始めたのが発端でした。アンケートの結果にも出ていたように、シナリオを増やして欲しいという声が多かったのですが、一方で現状の漫才VR(MBSハッカソン)は実写映像のみです。コンテンツを増やすにはどうすればよいのか?
芸人さんのコンテンツを扱うのは、権利関係はもちろん難しい話です。ですが、仮に撮影ができたとしても、課題はあります。撮影場所の確保です。芸人さんの動画撮影する際、芸人さんとの漫才体験ができる映像を作らなければなりませんから、芸人さんにはステージに立ってもらう必要があります。つまり、ステージの確保が必要なのです。
数多くのシナリオを準備するために、何度もステージを使用するのは現実的ではありません。そこで、あらかじめステージの360度実写映像を撮って、ステージ以外、例えば部屋などで撮影した芸人さんをクロマキー合成することを考えました。クロマキー合成はMBSチャリウッドでトライ済みだったので、合成処理をすることは選択肢の一つとしてありではないかと考えていました。
しかし、実際にはステージだけでなく、お客さんも集める必要があります。(漫才VRのハッカソンでの開発時は、お客さんがいなくてぬいぐるみを客席に座らせていたくらいです。)ステージの準備に加えてお客さんを集め、さらにお客さんの数を変化させたりリアクションを変えたりすることを考えると、実写で多くのバリエーションを実現するのは現実的ではないなと思いました。いっそリアルな人物CGコンテンツを買うことも考えられますが、漫才を見に来てくれるお客さんとして使えそうなコンテンツを大量に集めるのはなかなか大変そうです(リアル人物のコンテンツはお値段もしますし…)

8.1.2. 漫才ジェネレータ着想:増やしやすいコンテンツ素材とは?

アンケートの結果、リアルな芸人さんとのVR体験が良いという声が最も多かったのですが、現実的にこの路線で突き進むのは現時点では厳しそうです。そこで、少し考え方を変えてみてみました。「リアルな芸人さんとのVR体験が良いに違いない」ではなく、「リアルじゃない芸人さん(?)にしたらどれだけユーザーからの評価が下がるのか?」を考えるのです。もしリアルじゃないコンテンツを使ってもさほど評価が下がらないのであれば、あながち悪い選択肢ではないかもしれません。
さて、リアルではないコンテンツを使うとして、具体的にどんなコンテンツがよいのでしょう?実際に漫才劇場に足を運んでお客さんを見てみたところ、女性客の割合が非常に多かったことを記憶しています。であれば、女性向けに受け入れられそうなコンテンツを作ってみるのがまずはよいのではないか?もしそうなら、動物系の可愛いコンテンツ素材を使ってみるのがよいのではないか?と仮説を立ててみました。 そこで早速Unity のAsset Store を探してみたところ、表情やアニメーション・服装を色々変えることができるハムスターのAsset を見つけました。
続いての課題は、ハムスターの振舞をどうするかということです。淡々と話し続けるのは話に抑揚がなく、つまらないのではないか?と思い、話し方にも変化をつけることを意識しました。この課題に役に立ちそうなものはないか、MA の提供API 一覧を眺めてみました(これがMA の楽しみ方の一つだと思っています)。この時、音声合成向けのAPIに加え、テキストから感情解析をするAPI やキーワードを抽出するAPI が提供されているのに気づきました。そこで、感情解析の結果に合わせて声色を変え、さらにキーワードに合わせて関連する画像を仮想空間上のスクリーンに投影する演出を入れることにしました。まず、このシステムで生成したコンテンツが面白いのかどうかを評価したいと思い、MAではコンテンツを生成するための漫才ジェネレータを応募することにしました。

8.1.3. 漫才ジェネレータの課題

実際に作ってみて、実用の際に問題になりそうだと感じたのは画像の扱いです。漫才ジェネレータを開発し始めた頃、画像検索は最初Google 検索を使うものを作っていました。この結果、著作権的に、グレーではなくほぼブラックな画像しか引っ掛からなかったのです。
そもそも他人のコンテンツを検索して取得し、2次加工してる時点ですでにアウトです。著作権フリーの画像が運よく検索で引っ掛からない限り、著作権の観点で何らかの問題が残ります。実際には著作権NGの動画もみられますが、ツールとして提供する以上、何らかの対策は多少なりとも必要でしょう。
そこで、「公開するものは自分で作った・撮影した画像のみ」が原則だと考えると、アカウント付きのSNSから画像取得するのが妥当だと考え、SNSからの画像取得を試みました。最初はInstagram を候補にしていましたが、API の使用制限が昔に比べてかなり厳しくなっており、MAでは使用を断念しました。MA 2017 では、同様に使用制限はありますが、すぐに使えるTwitter を使用しました。
この対応で多少は著作権の問題をクリアできるようになりましたが、ツイートした画像が全て問題ないかというと、実際には微妙なものも混じっているでしょう。今後さらに目論んでいるのは、自動抽出した複数の候補画像から手軽に最適な画像を選択したり、ツッコミの選択肢や分岐を含む複雑なシナリオを作成できるようなエディタ(漫才エディタ)の開発です。そして、生成された多くのシナリオに対して実写・CG両方に対して仮想的な漫才体験が可能な漫才VR-2 を開発することです。

8.2. AIとしての展望

台本から動画を自動生成するシステムを構築する場合、これをサービスとして展開すれば、多くの台本を収集することが可能となります。また、動画を公開してその面白さの評価をユーザーから得ることも可能となります。つまり、これらの台本テキストデータ群と評価値とを用いて、機械学習(AI)により台本とその評価値との関連を求めることができる可能性があります(もちろん相当大量の台本が必要になりますが・・・) 学習

とにもかくにも、大量の台本と評価値及びその属性データが必要になります。
推定

動画の評価をしてもらう際に、年齢や性別・地域などの属性を入力してもらえば、属性ごとに機械学習パラメータを求めることもできますので、「この台本はどういった人にはウケがよいのか?」を推定することも可能です。 漫才VR を実際のお客さんに使って頂いていた時に出てきた命題「正しいツッコミとは何か?」は、お客さんの属性によって最適値が異なるかもしれません。この命題を解くためにAIを活用し、どこまで解けるのか、エンジニアとして興味深いところです。

9. リーンキャンパス・ビジネスモデル

こちらの資料をご覧ください。