本文へスキップ
NextCode.ltd
開発記録

AIで描いた漫画CMを「生きて見える」ようにした記録。スマホ画面のずれは19.5pxから1.1pxへ、動く人と犬はのべ13から25へ

AIで描いた漫画CMを「生きて見える」ようにした記録。スマホ画面のずれは19.5pxから1.1pxへ、動く人と犬はのべ13から25へ

話している1人だけが動くと、隣の人は人形に見える。直すのに要ったのは派手な演出ではなく、まばたきと呼吸でした。

AIで描いた絵を並べて、声とBGMを付けた「ショート漫画のCM」を作っています。自社サービスのスタンプ119(写真からLINEスタンプを作るサービス)の宣伝用です。

ただ、出来上がりを通しで見ると、どこか紙芝居っぽい。原因を探したら、大きく2つありました。1つは、登場人物が持っているスマホの画面に、あとから重ねた画面がきちんと収まっていないこと。もう1つは、話している1人しか動いていないこと。

今回はこの2つを、見た目の印象ではなく数字で比べてから直しました。見比べるための動画も作ったので、そのまま載せます。

この記事に出てくる人物・犬・部屋は、すべてAIで描いた絵です。実在の人物は出てきません。

1スマホの画面を、描かれた画面にぴったり合わせる

CMの1カット目は、女性が犬を抱いて、出来上がったスタンプをスマホで見せる場面です。絵の中のスマホもAIが描いたもの。その画面の上に水色の画面とスタンプを重ねて、スタンプがポンと飛び出す動きを付けています。

問題は重ね方でした。これまでは、画面の四隅の位置をAIに答えてもらい、その四角形を塗っていました。AIの答えは少しずれます。右の縁では、水色がスマホの黒い縁(ベゼル)の上に19.5px乗っていました。1080pxの動画でこの量は、見れば気づきます。

そこで作り方を4つ用意し、絵・声・カメラの動きはそろえたまま、画面の扱いだけを変えて比べました。どれも5.84秒の同じカットです。

A直す前(これまでの作り方)

四隅をAIの答えから決めて、四角く塗る。右の縁で19.5pxは⁠み出し、右上には暗い帯が残ります。

A′画面を当て直す(採用)

絵の画素から、画面の縁・角の丸み・上の切り⁠欠きを測り直して、その形のとおりに塗る。いちばんずれた所(右上の角)でも2.4pxです。

Bスタンプだけを貼る

画面は塗り直さず、背景が透明のスタンプだけを重ねる。は⁠み出しは0。ただ、元の絵の画面に犬の写真が描かれていて、犬が2匹重なって見えます。

C動画の道具 Remotion で作る

A′と同じ形で切り抜き、切り⁠替えと飛び出しにバネのような動きを付けました。縁の合い方はA′⁠と同じです。

角と縁を4倍にして見る

完成動画の0.3秒目(スタンプが飛び出す前)を切り出して、左上の角・右上の角・右の縁を4倍にしました。黒い縁の内側に、水色がぴったり入っているかを見てください。

A 直す前。左から左上の角・右上の角・右の縁で、右の縁では水色が黒い縁に乗っている
A 直す前。左から左上の角・右上の角・右の縁で、右の縁では水色が黒い縁に乗っている
A′ 当て直し。同じ3か所とも、水色が黒い縁の内側に収まっている
A′ 当て直し。同じ3か所とも、水色が黒い縁の内側に収まっている
B スタンプだけ。左上の角・右上の角・右の縁とも描かれたままで、縁には手を加えない
B スタンプだけ。左上の角・右上の角・右の縁とも描かれたままで、縁には手を加えない
C Remotion。左上の角・右上の角・右の縁の合い方は、A′と同じになった
C Remotion。左上の角・右上の角・右の縁の合い方は、A′と同じになった

測った数字

175コマすべてで、描かれた画面の縁と、重ねた画面の縁の差を測りました。C(Remotion)の縁のずれは、どの場所もA′と同じでした。単位は1080×1080の動画の画素です。「は⁠み出し」は水色が黒い縁に乗った幅、「すき間」は元の画面が見えている幅です。

縁のずれ(は⁠み出し/すき間・単位px。Aは直す前、A′は当て⁠直した後。上の⁠辺は切り⁠欠きのあたり。◎は良い⁠値、✕は目で見て分かるずれ)

場所A(前)A′(後)
上の辺✕0/29.2◎1.2/0.5
右✕19.5/2.2◎1.1/0.5
下2.0/0◎0.2/1.0
左3.8/2.2◎0.6/0.5
右下の角✕18.0/0◎0.3/0.2

4つの作り方のまとめ(◎はその行でいちばん良い⁠値)

項目AA′(採用)BC
いちばん大きいずれ✕29.2px◎2.4px—◎2.4px
画面の外に塗った画素✕8,710258◎0259
作る時間(1カット)◎5.0秒◎5.0秒5.4秒✕13.3秒

いちばん大きいずれの場所は、Aが上のすき間、A′とCが右上の角です。Bは画面を塗らないので、縁のずれは測れません(表では「—」)。

意外だったのは、C(Remotion)で縁がきれいに合ったのが、道具のおかげではなかったことです。CでもA′と同じ「絵の画素から縁を測り直す」処理を使っていました。ずれを直したのは測り方のほうで、道具を変えただけでは縁は合いません。

動きのなめらかさはCがいちばんでした。正直、かなり迷いました。ただ、作る時間が約2.7倍になり、サーバー側の準備も要ります。見た目の差が小さいうちはA′で十分と判断して、A′を採用しました。

B(スタンプだけ)は、は⁠み出しが絶対に起きない安全な方法です。でも今回の絵のように、画面の中に写真や文字が描かれていると重なって読みにくい。画面が無地の絵のときだけ使える、という結論です。

2映っている全員を動かす

2つ目の問題。これまでは、話している1人だけが口パクしていました。聞いている人や犬は、まばたきもせずに止まったまま。1枚の絵に2人いると、片方が人形のように見えるんですよね。

そこで、映っている全員に次の動きを付けました。

付けた動き

動き(誰に)中身
口パク(話し手)声の大きさで「閉じる・半分・開く」を切り⁠替える。横顔でも、横顔用の口を描き直して動かす
まばたき(人も犬も全員)人ごとに違う時刻。2人が同じ瞬間に目を閉じないよう、5コマ以上ずらす
呼吸(全員)肩から上だけが、3.4⁠〜⁠4.4秒でゆっくり上下する(最大⁠2px、犬は1.2px)。画面全体は動かさない
話し始めの頭の動き(話し手)声の出だしで頭が2.5px沈んで戻る。驚きの台詞では逆に少し上がる
うな⁠ずき(聞き手)相手の言い⁠終わりに合わせて4pxう⁠なずく(2回まで)
笑い(聞き手)笑う場面では、肩が小さく3回弾む
漫画の記号(話し手の顔の横)驚きは「!」、笑い声は「♪」、ため息は汗。見出し・字幕・スマホ・ほかの人の顔に重なる所には出さない

いちばん気を付けたのは、聞いている人の口です。相手の声に合わせて聞き手の口まで動くと、腹話術のようになって一気に不自然になります。聞き手の口は、声には合わせません。

前と後を並べて見る

横に並んで見えるときは左が直す前、右が直した後。縦に並んで見えるときは上が直す前、下が直した後です。呼吸やうな⁠ずきは小さな動きなので、音を出して、動画を大きくして見てください。

ペット編:男性が話す・女性は笑って聞いている

前は女性が止まっていました。後は呼吸と、笑って肩が揺れる動きが入ります(目を閉じて笑った顔で描かれているので、まばたきはしません)。

ペット編:女性が話す・男性と犬

男性と犬が、それぞれ別の時刻にまばたきします。男性は女性の言い⁠終わりでうな⁠ずきます。

ペット編:横顔の女性が話す

前は横顔だったので、全員が止まっていました。後は横顔の口パクとまばたき、犬のまばたき、全員の呼吸が入ります。

家族編:女性が話す・おじいちゃんが聞く

おじいちゃんが呼吸し、女性の言い⁠終わりでうな⁠ずきます。女性の横にハートの記号が出ます。

家族編:女性と赤ちゃん

赤ちゃんもまばたきします。写真立ての中のおじいちゃんは、写真なので動かしません。

横顔の口パクと、記号の出方

横顔のときも、横顔用の口を描き直して口パクさせています。台詞の気持ちに合わせて、顔の横に漫画の記号も出ます。見る場所は、それぞれの説明に書きました。

ペット編:後ろ寄りの横顔の男性

男性の口元を見てください。前は横顔なので止まっていました。後は声に合わせて口が開き、まばたきもします。

「めっちゃ笑った」で♪が出る

終わりぎわ、男性の顔の右横に♪が出ます。

「はやっ!」で!が出て、頭が少し上がる

「はやっ!」のところで、女性の右上に!⁠が出て、頭がわずかに上がります。

顔だけを描き替える

動かすために、1人ずつ顔の部分だけを描き替えています。目を閉じた顔、口を閉じた顔、半分開いた顔。描き替えた絵は検査にかけて、元の顔からずれたものは使いません。

顔の描き替えの例。各段の左端は、描いたままの元の顔です。上から、正面の女性(口を閉じる・口を半分・口を開く)、横顔の男性(目を閉じる・口を閉じる・口を半分)、横顔の女性と犬(目を閉じる・口を半分)
顔の描き替えの例。各段の左端は、描いたままの元の顔です。上から、正面の女性(口を閉じる・口を半分・口を開く)、横顔の男性(目を閉じる・口を閉じる・口を半分)、横顔の女性と犬(目を閉じる・口を半分)

数字で見ると

直す前と直した後(「15」は絵のカットの数。人数はカットごとに数えたのべ人数)

項目前後
ペット編:動くカット13/15◎15/15
ペット編:動く人・犬13人◎25人
ペット編:口パクするカット12◎15
家族編:動くカット14/15◎15/15
家族編:動く人14人◎17人
家族編:口パクするカット13◎14

スマホの画面を録画したカットと、最後の案内の画面は、前と同じです。

口パクが本当に話し手に付いているか

全員を動かすついでに、これまでの口パクが正しい人に付いていたかも確かめました。CM6本・絵コンテ86カットを1カットずつ見て、別の人の口を動かしていたカットは0件でした。横顔の口パクは4カット中4カットで成功。一方、口の描き替えが検査に落ちていた6カットを描き直してみたら、成功は1カットだけ。残りの5カットは口を動かさず、まばたきと呼吸だけを入れています。

3正直に言うと

よくなった分、1本を作る時間は延びました。ペット編は125秒から225秒、家族編は121秒から277秒(初回の準備42秒を含む)です。

まだ分からないことも残っています。

  • スマホ画面の当て直しは、この1カットで比べたあと、演出が入る全10場面で確かめてから本番に入れました(場面ごとのいちばん大きいずれは、3.3〜31.3px から 0.9〜10.3px へ)。この10場面に無い絵、たとえば明る⁠い⁠色のスマホの絵でうまくいくかは、まだ確かめていません
  • 右上の角は丸みを測りきれず、下の角の丸みを借りました。最大2.4pxのずれはここです
  • この記事の動画は、比べるために作った試作の版です。本番のCM6本は、スマホ画面の当て直しと全員の動きの両方を入れて作り直し、YouTubeの動画も差し替えました(ペット編はこちら)
  • 笑った口の描き替えも用意しましたが、今回の6本では一度も使われませんでした。笑う場面の聞き手が、もともと口を開けて描かれていたためです

AIで作る映像は、1枚1枚の絵はきれいでも、つなげると「止まっている感じ」が出やすい。そこを埋めたのは、派手な演出より、まばたきや呼吸のような小さな動きでした。

AIで作る漫画動画やショート動画の相談は、お問い合わせからどうぞ。ほかの開発の記録はブログに、作ったものは実績一覧にまとめています。

この記事を書いた人

NextCode(沖縄県宜野湾市)は、iOSアプリ・ホームページ/LP・NFCデジタル名刺・AI業務自動化を作っている開発スタジオです。ここで書いているのは、実際に作って公開したものと、その過程で詰まったことだけです。

お問い合わせフォームは24時間受け付けています。

この記事が役に立ったらシェアしてください