katabombのアイコン画像
katabomb 2021年01月12日作成 (2021年02月24日更新)
製作品 製作品 閲覧数 4158
katabomb 2021年01月12日作成 (2021年02月24日更新) 製作品 製作品 閲覧数 4158

任意の人が「八幡浜の三瀬医院」と喋っているようにみせる装置

任意の人が「八幡浜の三瀬医院」と喋っているようにみせる装置

はじめに

愛媛県八幡浜市にある診療所の院長です.micro:bitと100均アイテムでディープフェイク技術を模した野心的,且つ,安価な装置を開発しました.micro:bit v2.0で新たに搭載されたスピーカーから出るイントネーションのついた音と,言葉に対応した顔写真の開口状態の変化が補完し合うことで,任意の人が「八幡浜の三瀬医院(やわたはまのみせいいん)」と喋っているようにみせます.
単に口をパクパクさせているのではなく,五十音にならった開口状態を実現しています.この装置の新規性はサーボモーター1個で口の縦幅と横幅を独立して変化させている点です.
この装置が広まることで,少しでも当院の宣伝になれば幸甚です.

ここに動画が表示されます

装置に使用した写真は「ぱくたそ」のフリー素材(モデル:茜さや,河村友歌,塩田みう,八木彩香)です.

仕組み

あたかもディープフェイク動画のようにモデルの口が動く機構について解説します.背板の傾斜で口の縦幅を,竹串の開閉で口の横幅を調節しています.

ここに動画が表示されます

背板をクリアファイルにして機構部分を可視化しました(映り込んでいる人影は無視して下さい).背板の傾斜はサーボモータの回転そのもの,竹串の開閉は2つの両てこ機構で動きます.

ここに動画が表示されます

この機構による口の開閉に,microbit v2.0に搭載されたスピーカーの音を同期させた装置です.

材料

1. 通販で購入

材料 数量
micro:bit v2.0 1個
サーボモータ SG90 1個
DC-DC 降圧型モジュール AMS1117-3.3 1個
3ピンスライド スイッチ SS12D00G5 1個
単4電池ボックス(2本用) 2個
ピンヘッダ 2.54mmピッチ 3ピン分
ジャンプワイヤ 10cm 3本
ジャンプワイヤ 10mm 1個
ブレッドボード(小) 1個

2. 100均で購入

材料 数量
竹のおはし 適量
木製スティック 適量
竹串 適量
ストロー 適量
ミニストロー 適量
つまようじ 3本
段ボール紙 適量
コピー用紙 3枚+モデルの人数分

3. その他

浮き止めゴム 3個(釣具店で購入)
10円玉 2枚

作り方

1. 本体

本体の骨格は竹のおはしとストローで作ります.おはしの長さは20cmですが,先が細くなっているので横棒として18.5cmに切って使います.写真のように適当な長さに切ったおはしをグルーガンで接着し,サーボモータ用のソケットを作ります.サーボモータをはめて斜めに渡したおはしで固定します.2本の竹のおはしを縦に接着します.段ボール紙を適当なサイズに切ってコピー用紙を貼り,おはしに接着します.
本体を裏から見たところ(サーボモータの固定)
裏側から見えるリンク機構の図です.10cmと書いてあるスティックはサーボモータの軸と干渉するため実際には上の写真のように迂回するように作る必要があります.
裏から見た開閉機構
本体を表から見ると背板の傾斜を調節するTの字になったスティックが見えます.Tの横棒に相当するスティックの長さは7.5cm,そこから垂直に出ているおはしの長さは8.8cmです.その他のサイズに関しては下にある手書きの図を参考にして下さい.サーボモータを取り外しやすいようにホーンをリンク機構に接着して,そこにサーボモータの軸を差し込む仕様です.このためホーンを接着するためだけのスティックが飛び出しています.
本体を表から見たところ
表から見た背板と開閉機構
竹串をつかって幅25cm,高さ17cmの凧の骨のような物をつくり20cmのおはしに接着します.20円は振動防止のおもりとして写真のようにセロテープで留めます.このおはしをあらかじめ先ほどの18.5cm幅のおはしで組んだ台に留めたストローに差し込んで,背板の骨が扉のように動くよう取り付けます.
背板の骨組み
動画を参考にモデルの写真を準備して背板と写真を取り付ければ本体は完成です.モデルの写真は縦16cm,横16cmで準備し,縦方向を12cmに縮めてからA4サイズのコピー用紙の中央に印刷します.動画のように折り,竹串を通す穴を開けます.背板は2枚のコピー用紙をのりで貼り合わせ,袋状にして竹串の骨にかぶせます.この後,ずれないように袋の口をセロテープで留めても構いません.最後に写真を本体に取り付けます.

ここに動画が表示されます

2. 制御装置

写真の通りです.外れそうなところはグルーガンで接着しました.途中にスイッチを挟んで直列につないだ電池ボックスのプラス極をAMS1117-3.3のVIN,マイナス極をGNDに接続します.サーボモーターの端子はそれぞれmicro:bitの1,AMS1117-3.3のVIN,GNDに接続します.micro:bitの3V端子はAMS1117-3.3のOUT,GND端子はGNDに接続します.
制御装置

3. プログラム

micro:bitはMakeCodeのブロックでプログラミングしました.「八幡浜の三瀬医院」という言葉を子音と母音に分解して24個の要素とし,それぞれに対応するサーボモータの角度,イントネーションを表す周波数を配列変数に設定します.ボタン操作で順番にサーボモータの角度が変わり開口状態が変化します.同時にマイクロビットに付属したスピーカからイントネーションのついた音が出ます.
プログラムは以下のリンクからダウンロードできます.
任意の人に八幡浜の三瀬医院と喋らせるプロジェクト

操作方法

  1. 制御装置のスイッチを入れます.
  2. micro:bitのAボタンを押すと写真が動き,スピーカーからイントネーションのついた音が出て,冒頭の動画のように任意の人が「八幡浜の三瀬医院」と喋っているようにみせます.
  3. Bボタンで初期状態に戻ります.

終わりに

イントネーションと開口状態が補完しあうことで,音声合成とはまた違った「喋る」という動作の実現に一歩前進したようなしないような.

katabombのアイコン画像
マイクロビット等で簡単な電子工作をしています。
ログインしてコメントを投稿する