OpenCVで顔のモーフィングを実装する

映画の視覚効果で初めてモーフィング技術が使われたのは映画「ウィロー」だとILMのドキュメンタリーで見た記憶がある。



ウィロー [Blu-ray]

まだ3DCGはもちろん、デジタルな視覚効果そのものが珍しかった1988年の映画だ。画像を変形させてシームレスに別の画像へ変化させて見せる「モーフィング」という表現は、旧来のオプティカル合成では到底考えられないビジュアルだった。



邦画でも90年代中頃から結構使われていた気がする。「モスラ2 海底の大決戦」でモスラが水中モードへ変身するビジュアルもモーフィングだ。

https://www.youtube.com/watch?v=JxXZjuw-VPI

当時小学生だったオイラでも「あ、モーフィングだ」と思った記憶があるので、当時でももうそれほど目新しい表現ではなかったかもな。
今見ると、いかにも2次元な処理でのっぺりして見える。

モスラ3部作 Blu-ray(3枚組)

時は流れ、2Dの画像加工はそれほど珍しいものではなくなり、モーフィング処理の演算コストも今時のパソコンなら気にならないレベルだ。最近は、モーフィング表現単体で驚くようなことも無い。AfterEffectsなど、この手のアプリケーションでは当たり前のように搭載されている。
http://tv.adobe.com/jp/watch/335/4863/

単純なモーフィング Creative COWのリーダーであるエラン・スターンがタイムリマップとピクセルモーションを使用して単純なモーフィングを作成する方法をご紹介します。

前置きが長くなったけど、OpenCVとDlibを使って顔画像のモーフィングを実装するチュートリアルを見つけた。ソースコードも配布されています。↓
https://www.learnopencv.com/face-morph-using-opencv-cpp-python/



現在は顔の器官を自動で検出することができるから、顔画像同士のモーフィングを自動で処理できるわけですね。

関連記事

コンピュータビジョンの技術マップ

クラスの基本

Point Cloud Utils:Pythonで3D点群・...

ZBrushで作った3Dモデルを立体視で確認できるVRアプリ...

書籍『仕事ではじめる機械学習』を読みました

html5のcanvasの可能性

NumSharp:C#で使えるNumPyライクな数値計算ライ...

Geogram:C++の3D幾何アルゴリズムライブラリ

OpenCVの三角測量関数『cv::triangulatep...

OpenSfM:PythonのStructure from ...

UnityでLight Shaftを表現する

Faceshiftで表情をキャプチャしてBlender上でM...

DensePose:画像中の人物表面のUV座標を推定する

Point Cloud Libraryに動画フォーマットが追...

SSD (Single Shot Multibox Dete...

スーパープレミアム スペシャル時代劇 「荒神」

Blendify:コンピュータービジョン向けBlenderラ...

Adobe MAX 2015

Cartographer:オープンソースのSLAMライブラリ

CGWORLD CHANNEL 第21回ニコ生配信は『シン・...

Unity ARKitプラグインサンプルのドキュメントを読む

WebGL開発に関する情報が充実してきている

OpenMayaのPhongShaderクラス

NeRF (Neural Radiance Fields):...

MFnMeshクラスのsplit関数

統計的な顔モデル

映画『パワーレンジャー』スーツのメイキング

オープンソースのロボットアプリケーションフレームワーク『RO...

Pythonのソースコードに特化した検索エンジン『Nulle...

『ハン・ソロ/スター・ウォーズ・ストーリー』のVFXブレイク...

Facebookの顔認証技術『DeepFace』

UnityのGameObjectの向きをScriptで制御す...

OpenCVで平均顔を作るチュートリアル

Kinect for Windows V2のプレオーダー開始

ROSでガンダムを動かす

チャットツール用bot開発フレームワーク『Hubot』

NeuralNetwork.NET:.NETで使えるTens...

頭蓋骨からの顔復元と進化過程の可視化

Unityで画面タッチ・ジェスチャ入力を扱う無料Asset『...

Unityで学ぶC#

C++の抽象クラス

PythonのHTML・XMLパーサー『BeautifulS...

コメント