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

カーネギーメロン大学が公開している2D画像からの人体骨格推定ライブラリOpenPoseの元の研究である”Realtime Multi-Person 2D Pose Estimation using Part Affinity Fields“が発表されて以降、2D画像・動画からの骨格推定の研究とソースコードの公開が活発な印象。

DensePoseは、骨格ではなく、動画中の人物領域の3DサーフェスのUV座標を推定するという、とても具体的なタスクの研究。面白そうなので論文がarXivに公開されてからすぐに読んだのでした。
ただ、CGに詳しくない人には課題設定がピンと来ないんじゃないかな。

DensePose: Dense Human Pose Estimation In The Wild


Dense human pose estimation(密な人体姿勢推定)は、画像中の人物のRGB画素全てを3Dの人体サーフェスへマッピングすることを目的としています。


スポンサーリンク
  • 5万枚のCOCOデータセットの画像に対して人力で2D画像と3Dサーフェスの対応関係をアノテーションした大規模なground-truthデータセット「DensePose-COCO」を提案します。
  • Mask-RCNNを改良し、動画の毎秒複数フレームに写るそれぞれの人物領域の各人体パーツのUV座標を密に回帰推定する「DensePose-RCNN」を提案します。

DensePose-COCOデータセットも公開予定だそうです。
https://github.com/arXivTimes/arXivTimes/issues/638


スポンサーリンク


ソースコードがGitHubで公開されましたね↓
https://github.com/facebookresearch/DensePose

Dockerfileもあるので試すのは楽か?
2018年12月 追記:試した方がいます↓
http://whoopsidaisies.hatenablog.com/entry/2018/12/03/193759

これって、顔画像で言うところのFace Alignmentに近い役割ができて、Body Alignmentって言っても良さそう。
画像中から人物表面のUV座標が推定できれば、身体の模様(つまり服装)を比べたり、入れ替えたり、描き替えたりできるんですよね。

著者にFacebook AI Researchの人が2人入ってるけど、やっぱり目指すのは画像からの個人識別なんですかね。
https://research.fb.com/facebook-open-sources-densepose/
https://shiropen.com/seamless/facebook-ai-densepose

論文では、データセットを作るためのアノテーションツールを設計と、アノテーションの質の評価についても載っている。



ちゃんと解きたいタスクに適したデータセットを用意して、タスクに適したネットワークを設計する、ってのが機械学習の良いアプローチなのだろうか。
機械学習でOverfitting(過学習)と呼ばれる現象は、データセットとタスクのギャップと言えるのかもしれない。

2019年追記:最近はRunway MLというツールで手軽にDensePoseを試すことができるぞ↓
Runway ML:クリエイターのための機械学習ツール
表現のための機械学習(というかディープラーニング)がじわじわと来ている、と勝手に思っている。実際、グラフィックス系のカンファレンスでもディープラーニングのセッションが大盛況だし。クリエイターが機械学習の恩恵を受けられるアプリケーション...


スポンサーリンク

関連記事

ラクガキの立体化 1年半ぶりの続き
ハリウッド版「GAIKING」パイロット映像
日本でMakersは普及するだろうか?
機械学習に役立つPythonライブラリ一覧
ZBrushでアヴァン・ガメラを作ってみる 頭頂部の作り込み・舌の追加
タマムシっぽい質感
Russian3DScannerのトポロジー転送ツール『WrapX』
Raspberry PiのGPIOを操作するPythonライブラリ『RPi.GPIO』の使い方
第1回 3D勉強会@関東『SLAMチュートリアル大会』
ドットインストールのWordPress入門レッスン
KelpNet:C#で使える可読性重視のディープラーニングライブラリ
.NETで使えるTensorFlowライクなニューラルネットワークライブラリ『NeuralNetwo...
OpenGV:画像からカメラの3次元位置・姿勢を推定するライブラリ
BGSLibrary:OpenCVベースの背景差分ライブラリ
Phongの表現力パネェ 材質別のPhong Shader用パラメータ一覧
ZBrushでアヴァン・ガメラを作ってみる 甲羅のバランス調整
PythonでMayaのShapeノードプラグインを作る
OpenCVで顔のランドマークを検出する『Facemark API』
SSII2014 チュートリアル講演会の資料
昔Mayaでモデリングしたモデルをリファインしてみようか
ラクガキの立体化
OpenCV 3.1とopencv_contribモジュールをVisual Studio 2015で...
『ピクサー展』へ行ってきた
Python2とPython3
ラクガキの立体化 目標設定
Zbrushでメカ物を作るチュートリアル動画
オープンソースの物理ベースレンダラ『Mitsuba』をMayaで使う
TVML (TV program Making language)
ヒーローに変身なりきりアーケードゲーム『ナレルンダー』
Pythonの自然言語処理ライブラリ『NLTK(Natural Language Toolkit)』
ブラウザ操作自動化ツール『Selenium』を試す
ZBrush4新機能ハイライト 3DCG CAMP 2010
まだ続くブログの不調
ZBrushのZScript入門
映画『ジュラシック・ワールド』のVFXメイキング
生物の骨格
WordPress on Windows Azure
機械学習手法『Random Forest』
3D映画のポストプロダクション 2D-3D変換
ZBrushで仮面ライダー3号を造る 仮面編 PolyGroup作成に再挑戦
HerokuでMEAN stack
OpenGVの用語

コメント