01まわる写真カード
縦長のカードが、人物のまわりをくるくる回ります。orbit
添付した動画に、演出「orbit」(頭のまわりを回るカード)をつけてください。長さは2.5秒です。 【最初に1回だけ質問してください】 編集を始める前に、次のことを私に1回だけ質問して、答えを待ってください。答えをもらったら、その内容を演出に反映してください。答えが無いときや「おまかせ」と言われたときは、下に書いた標準の内容で進めてください。 質問:「カードに使う画像を、1枚から5枚ほど見せてください。無ければ、この動画のコマを使います。」 (1)道具の用意 Python 3.10以上とffmpegがあるか確かめ、無ければこのパソコンに合う方法で入れてください。作業用のフォルダに仮想環境を作り、opencv-python・numpy・Pillow・mediapipe を入れて、その中のPythonで動かしてください。mediapipeの人物切り抜きモデル(selfie_segmenter.tflite)は、Googleの公式の配布元から取ってください。mediapipeが入らないときは rembg に切り替えてください。日本語の文字は、このパソコンにある太いゴシック体を探して使ってください。 (2)動画の準備 全部のコマを読み込み、1080×1920・30fpsにそろえてください。縦横の比が違うときは、拡大して中央を切り抜きます(黒い帯は付けません)。動画が2.5秒より長いときは、冒頭の2.5秒に演出をかけ、続きは元の映像のままつなげます。つなぎ目は0.2秒で自然に元の映像へ戻してください。2.5秒より短いときは、逆再生を足して長さをそろえます。元の音声はそのまま残してください。 (3)人物の切り抜き 全部のコマで人物のマスクを作り、次の順に整えてください。 ・カメラが動かない動画なら、人物から離れた画素の中央値で「人物のいない背景」を作り、元のコマとの色の差も足して、髪の毛先まで拾います。カメラが動く動画なら、この工程は省きます。 ・ガイドフィルタ(半径3)で、マスクの縁を映像の輪郭に沿わせます。 ・一番大きな塊だけを残して、小さな粒を消します。前のコマと7対3で混ぜて、ちらつきを抑えます。 ・縁を約2ピクセル内側へ削り、縁の色を人物の内側の色で置き換えます。白い線や背景のにじみを残しません。 (4)演出の中身(数字は1080×1920のときの位置です。人物の位置に合わせて動かしてください) ・カード:幅224×高さ400、角丸、細い白の縁で7枚作ります。中身は、画像も添付されていればその画像、無ければこの動画から見た目の違う7コマを切り出して使います。 ・位置:回転の角度をθとして、横 x=515+445×sinθ、縦 y=845+285×cosθ の楕円に並べます。楕円の中心は人物の胸の高さに合わせ、横は人物の中心へ合わせてください。 ・奥行き:z=cosθ として、大きさを 0.84+0.2×z 倍にします。横端へ行くほどカードの幅を細くし(0.72+0.28×|z|倍)、少し台形にして立体に見せます。 ・前後:z<0のカードは人物の後ろ、z≧0のカードは人物の手前に置きます。手前のカードには、ぼかし14ピクセル・濃さ36%の影を付けます。カードの隙間から人物の胴が見えるようにします。 ・回り方:角度は 190度×(1−(1−t/2.5)^2.2)+36度×t です。はじめ速く、なだらかに遅くなり、最後のコマまで止めずに回します。 ・出だし:最初の0.2秒でカードが現れ、0.45秒かけて円の大きさを60%から100%へ広げます。背景は0.4秒で10%暗くします。 (5)確認と書き出し 先に0.6秒・1.6秒・最後のコマだけ作って自分で確かめ、人物の縁の白い線、顔に重なる物、切れた文字があれば直してから、全部のコマを作ってください。大事な物は上下を避けて y285〜1635 の中に置きます。書き出しは 1080×1920・30fps・H.264(yuv420p、CRF 18)・音声AACです。 (6)できた動画は、元の動画と同じフォルダに「元の名前_orbit.mp4」で保存して、場所を教えてください。元の動画は上書きしないでください。