一枚の写真で3D顔モデリングを実現!中国科学院の博士課程学生による ECCV に関する新たな研究 | オープンソース

一枚の写真で3D顔モデリングを実現!中国科学院の博士課程学生による ECCV に関する新たな研究 | オープンソース

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載しています。転載の際は出典元にご連絡ください。

ビデオから 3D 顔モデルを再構築することは珍しいことではありません。

しかし、テスターの静止画像しかない場合はどうなるでしょうか?

中国科学院パターン認識研究所の博士課程学生である郭建柱氏と彼のチームは、新しい3D 高密度顔アライメント法を提案しました。

[[340260]]

新しい3DDFA方式の最も重要な核心は、平面内外の顔の動きをシミュレートし、静止画像を短い動画に変換できる3D 支援の短編動画合成方式です。

これでモデルの識別とトレーニングが完了します。

Guo 氏の論文「Towards Fast, Accurate and Stable 3D Dense Face Alignmen」が ECCV 2020 に掲載されました。

3DDFA-V2: 静的 1 つ、動的 1 つ

これは実際には作者がリリースした 3DDFA の 2 番目のバージョンです。2 年前、チームは 3DDFA の最初のバージョンを公開しました。

新しいバージョンではパフォーマンスと安定性が向上しています。さらに、3DDFA_V2 には、元の Dlib に代わる高速顔検出器 FaceBoxes が統合されており、C++ と Cython で記述されたシンプルな 3D レンダリングも含まれています。

3DDFA はウサギと同じくらい高速です (顔の特徴の認識と位置合わせ):

ダイナミックな 3D 顔モデリングもあります。

3DDFA のもう一つの側面、「処女のように静か」(静止写真からの 3D 顔再構築):

3DDFA は、静的データと動的データに加えて、写真に基づいて人物の姿勢を簡単に推定することもできます。

深度画像推定を実行します。

画像の PNCC および PAF の特徴を抽出することもできます。

3DDFA-V2 は非常に強力な顔の 3D 再構築ツールとみなすことができ、他の多くの機能も統合されています。

では、3DDFA-V2 は、写真を短い動画に変換するという最も重要な機能をどのように実現するのでしょうか?

3D支援による短編ビデオ合成

3D 高密度顔位置合わせ方式をビデオ上で実行する必要があります。これにより、隣接するフレーム間で安定した 3D 再構築結果が得られます。

安定性とは、ビデオの隣接フレームにおける再構成された 3D 画像の変化が、実際のオブジェクトの細かい動きと一致していることを意味します。

しかし、既存の方法のほとんどはこの要件を満たすことができず、ランダムジッタの影響を回避することは困難です。

2D 顔登録では、時空間フィルタリングなどの後処理がジッターを減らすための一般的な戦略ですが、精度が低下し、フレーム遅延が発生します。

さらに、3D 高密度顔登録用の公開ビデオ データベースがないため、事前トレーニングにビデオを使用する方法は実現可能ではありません。

静止画像を動画に変換する際の安定性を向上させる他の方法はあるのでしょうか?

[[340265]]

3DDFA-V2 は、バッチレベルの 3D 支援短編ビデオ合成戦略を採用しています。

静止画像を複数の隣接フレームに拡張して、合成された短いビデオのミニバッチを形成します。

一般的に言えば、ビデオの基本的なモードは次のように分けられます。

1. 騒音。ノイズをP(X)=x+N(0,2)としてモデル化する。ここでE=a2I

2. モーションブラー。モーション ブラーは、M(X) = K*x として表すことができます。ここで、K は畳み込みカーネルです (演算子 * は畳み込みを表します)。

3. 平面内での回転。隣接する2つのフレームxtとxt+1が与えられた場合、xtからxt+1への平面の変化は相似変換T(·)として記述できる。

ここで、Δs はスケール摂動、Δθ は回転摂動、Δt1 と Δt2 は並進摂動です。

人間の顔は類似した三次元構造を持っているため、平面外の顔の動きも合成できます。

顔プロファイルF(-)は、もともと大ポーズ顔アライメント問題を解決するために提案されたものであり、顔のヨー角∆φとピッチ角∆γを徐々に大きくするために使用されます。

具体的には、複数の静止画像が小さなバッチでサンプリングされ、各静止画像 x0 に対してわずかに平滑化された変換が実行され、n 個の隣接するフレームを持つ合成ビデオが生成されます。

3D アシストの短いビデオ合成フレームで 2 つの隣接するフレームを合成する方法:

始め方

現在、チームは 3DDFA-V2 をオープンソース化しており、インストールと使用が非常に簡単です。

インストール手順:

  1. git クローンhttps://github.com/cleardusk/3DDFA_V2.gitcd 3DDFA_V2

インストールが完了したら、NMS と Sim3DR の Cython バージョンをビルドする必要があります。

  1. sh ./build.sh

デモを実行します:

  1. # 静止画像で実行、4 つのオプション: 2d_sparse、2d_dense、3d、depthpython3 demo.py -f examples/inputs/emma.jpg
  2. # videospython3 で実行 demo_video.py -f examples/inputs/videos/ 214 .avi
  3. # `n_next` で先読みしてビデオをスムーズに実行する framespython3 demo_video_smooth.py -f examples/inputs/videos/ 214 .avi

例えば、ランニング

  1. python3 デモ.py -f examples/inputs/emma.jpg -o 3d

次の結果が得られます:

顔の動きの追跡は、位置合わせするだけで実現できます。

ただし、頭の角度が 90° を超えていたり、動きが速すぎたりすると、位置合わせに失敗する可能性があります。しきい値を使用して追跡ステータスを微調整することを検討してください。

読み込んだら、任意の画像を入力として使用してアルゴリズムを実行できます。

  1. python3 main.py -f サンプル/test1.jpg

ターミナルに出力ログが表示された場合は、操作が成功したことを意味します。結果を待つだけです。

  1. samples/test1_0.ply にダンプします。68個の3D ランドマークを samples/test1_0.txt に保存します。サンプリングしたテクスチャを含む obj を samples/test1_0.obj にダンプします。samples/test1_1.plyにダンプします。68個の3D ランドマークを samples/test1_1.txt に保存します。サンプリングしたテクスチャを含む obj を samples/test1_1.obj にダンプします。samples/test1_pose.jpg にダンプします。samples/test1_depth.png にダンプします。samples/test1_pncc.png にダンプします。視覚化結果を samples/test1_3DDFA.jpg に保存します。

3DDFA-V2 には、コンピューターのハードウェアとソフトウェアに関するいくつかの要件があります。

PyTorch 0.4.1 以降

Python 3.6 以上 (Numpy、Scipy、Matplotlib ライブラリ付き)

システム: Linux または macOS

研究チームが推奨するハードウェア条件は、NVIDIA GTX 1080 GPU とi5-8259U CPU です。

もちろん、Lao Huang のカードだけでなく、Google Colab で直接体験することもできます。

このツールが役に立つなら、ぜひ試してみてください。

3DDFA-V2 Google コラボ:
https://colab.research.google.com/drive/1OKciI0ETCpWdRjP-VOGpBulDJojYfgWv

Github プロジェクト アドレス:
https://github.com/cleardusk/3DDFA_V2

<<:  よりスマートに:人工知能とエネルギー産業の革命

>>:  技術的負債の高利クレジットカード: 最もよく知られているエンドツーエンドの機械学習プラットフォームを詳しく調べる

ブログ    
ブログ    

推薦する

イラストレーターが10年後の情景を描く、ロボットが人間に取って代わり、38%の人が解雇に直面

科学技術の発展にはいつも驚かされます。携帯電話がいつからこんなにスマートになったのか、コンピューター...

世界を変えた10人のアルゴリズムマスター

ドン・E・クヌース[[236633]]アルゴリズムとプログラミング技術の先駆者。ああ、神様!海外のウ...

27回の機械学習インタビューの後、重要な概念を強調しましょう

機械学習面接のためのハンドブック。これだけあれば十分です。 [[348502]]機械学習やデータサイ...

ルート計画、経路探索アルゴリズムの導入とコード実装

経路探索アルゴリズムは、コンピュータグラフィックスや人工知能の分野で一般的に使用されるアルゴリズムの...

...

重複ページの検索エンジンアルゴリズム分析

検索エンジンは一般的に、各 Web ページに対して一連の情報フィンガープリントが計算されるという考え...

AI のゴッドファーザーであるヒントンは、なぜ自らが作り出した人工知能を恐れているのでしょうか?

ジェフリー・ヒントンは、コンピューターに学習方法を教えることに生涯を費やしてきました。今、彼は人工脳...

人工知能はサイバー犯罪をより容易かつ頻繁にしている、と研究が指摘

8月10日、サイバーセキュリティ企業SlashNextが発見した一連の証拠から、違法目的で開発された...

スマートビルディングにおけるエッジAIの役割を解明

仕事や住居のための物理的な空間として機能することから、入居者に活気ある建築体験を提供することまで、近...

...

...

2月10日に職場復帰ラッシュが到来し、北京は「急速AI温度検出器」の配備を開始した。

新型コロナウイルスによる肺炎の流行は依然として続いており、中国のさまざまな省や市では2月10日に大規...

Google とスタンフォード大学が共同で記事「なぜ大規模なモデルを使用する必要があるのか​​?」を発表しました。

言語モデルは、自然言語処理の分野における研究と実践に大きな変化をもたらしました。近年、大型モデルは多...

アンサンブル法からニューラルネットワークまで:自動運転技術で使用される機械学習アルゴリズムとは?

現在、機械学習アルゴリズムは、自動運転車業界で増加している問題を解決するために大規模に使用されていま...

...