43
2012/06/23 CV勉強会@関東 CVPR読み会 発表資料 takmin

Face Alignment by Explicit Shape Regression

Embed Size (px)

DESCRIPTION

「第20回コンピュータビジョン勉強会@関東 CVPR2012論文読み会」発表資料

Citation preview

Page 1: Face Alignment by Explicit Shape Regression

2012/06/23 CV勉強会@関東

CVPR読み会 発表資料

takmin

Page 2: Face Alignment by Explicit Shape Regression

紹介する論文

Face Alignment by Explicit Shape Regression

Xudong Cao, Yichen Wei, Fang Wen, Jian Sun

Microsoft Research Asia

回帰ベース/ノンパラメトリックな顔ランドマーク抽出手法

認識率高い+効率良い

この論文を選んだ理由

回帰による形状当てはめというのをそもそも知らなかった。

え?本当にこんな単純なモデルでうまくいくの?という感想。

でも、理解するのには手間取った。。。

そしてイマイチ腹に落ちた感じがしない。。。

Page 3: Face Alignment by Explicit Shape Regression

実験結果(LFPWデータセット)

Page 4: Face Alignment by Explicit Shape Regression

実験結果(LFW87データセット)

Page 5: Face Alignment by Explicit Shape Regression

実験結果(BioIDデータセット)

Page 6: Face Alignment by Explicit Shape Regression

顔の形状当てはめ

2

ˆmin SS

正解データ 推定した形状

fp

fp

N

N

y

x

y

x

S 1

1

(1)

Page 7: Face Alignment by Explicit Shape Regression

従来法

Optimization-based

AAMなど、(1)と相関する誤差関数を使用

Regression-based

パラメトリックなモデルで、間接的に(1)を最小化

個々のランドマークの見えからリグレッサーを学習

2

ˆmin SS

正解データ 推定した形状

(1)

目的: ランドマーク間の相関も考慮し、直接(1)を最小化す るリグレッサーを求める!

Page 8: Face Alignment by Explicit Shape Regression

回帰による形状当てはめ

T

t

t IRSS1

0 )(

Boosting Regressor

形状を弱いリグレッサーの和とする。

弱リグレッサー

(形状の変化分)

推定形状

平均形状

画像

TtSIRSS tttt ,,1 ),,( 11 (2)

弱リグレッサー

(形状の変化分)

更新形状

現在の形状

Page 9: Face Alignment by Explicit Shape Regression

回帰による形状当てはめ

TtSIRSS tttt ,,1 ),,( 11 (2)

弱リグレッサー

(形状の変化分)

更新形状

現在の形状

2

ˆmin SS (1)

N

i

t

ii

t

iiR

t SIRSSR1

11 )),((ˆminarg (3)

Boosting Regressor

各学習サンプルの形状誤差の和が最小となるリグレッサーを算出

訓練サンプルの誤差

Page 10: Face Alignment by Explicit Shape Regression

回帰による形状当てはめ

N

i

t

ii

t

iiR

t SIRSSR1

11 )),((ˆminarg (3)

Boosting Regressor

各学習サンプルの形状誤差の和が最小となるリグレッサーを算出

訓練サンプルの誤差

… 1R 2R TR

学習の順番

0S

iS

1

iS 2

iS 1T

iST

iS

正解形状

Page 11: Face Alignment by Explicit Shape Regression

Two-level cascaded regression

リグレッサーを2段階のBoostingで構成する

収束性向上&性能向上のため

N

i

t

ii

t

iiR

t SIRSSR1

11 )),((ˆminarg (3)

K

k

k

ii

kt

i

t

ii

t SIrSSIR1

111 ),(),(

2段目の弱リグレッサー

(Primitive Regresser)

Page 12: Face Alignment by Explicit Shape Regression

Two-level cascaded regression

リグレッサーを2段階のBoostingで構成する

収束性向上&性能向上のため

N

i

t

ii

t

iiR

t SIRSSR1

11 )),((ˆminarg (3)

K

k

k

ii

kt

i

t

ii

t SIrSSIR1

111 ),(),(

KkSIrSS kkkk ,,1 ),,( 11

10 tSS

Page 13: Face Alignment by Explicit Shape Regression

Two-level cascaded regression

リグレッサーを2段階のBoostingで構成する

収束性向上&性能向上のため

N

i

t

ii

t

iiR

t SIRSSR1

11 )),((ˆminarg (3)

KkSIrSS kkkk ,,1 ),,( 11

10 tSS

N

i

k

ii

k

iir

k SIrSSr1

11 )),((ˆminarg

Page 14: Face Alignment by Explicit Shape Regression

Two-level cascaded regression

リグレッサーを2段階のBoostingで構成する

収束性向上&性能向上のため

学習の順番

… …

… 1R 2R TR

1r 2r Kr …

0S 1

iS2

iS 1T

iST

iS

0S1

iS 1

iS 2

iS1T

iS T

iS

fern

Page 15: Face Alignment by Explicit Shape Regression

Primitive Regressor

2段目の弱リグレッサー = fern

F個の特徴を持ち、各特徴は閾値で2つに分類

全部で2のF乗のグループに分ける

krfern

Tfffff 54321 ,,,,

T1,0,1,1,0

F次元特徴ベクトル

出力

F2 個の各binに

を割り当てる

bS

Page 16: Face Alignment by Explicit Shape Regression

Primitive Regressor

b

i ii

bb

SSS

)ˆ(

bi

iiS

b SSSS )(ˆminarg

b :このbinの訓練

サンプル集合 (4)

(5)

bと判別された訓練サンプルの形状と正解形状の誤差の平均

Page 17: Face Alignment by Explicit Shape Regression

Primitive Regressor

bi

iiS

b SSSS )(ˆminarg

b :このbinの訓練

サンプル集合 (4)

データ数が少なかった時のOverfittingを避けるため

b

i ii

b

bb

SSS

)ˆ(

/1

1

(6)

Page 18: Face Alignment by Explicit Shape Regression

Shape-indexed (image) features

krfern

Tfffff 54321 ,,,,F次元特徴ベクトル

出力 T1,0,1,1,0

どんな画像特徴?

どうやって作る?

Page 19: Face Alignment by Explicit Shape Regression

Shape-indexed (image) features

どんな画像特徴?

x

x x

x

x

x

x

x

x

x

x

5

4

3

2

1

f

f

f

f

f

2つの画素の値の差

Page 20: Face Alignment by Explicit Shape Regression

Shape-indexed (image) features

顔の向き/大きさに不変な特徴にしたい

現在の顔形状 を標準顔 にフィッティングする

画素の位置をそれに合わせて変換

座標系の原点を最近傍のランドマークに取ることで、表情の変化にもロバストにする。

tS 0S

○ ×

Page 21: Face Alignment by Explicit Shape Regression

Correlation-based feature selection

krfern

Tfffff 54321 ,,,,F次元特徴ベクトル

出力 T1,0,1,1,0

どうやって作る?

どの場所の画素のペアを使う?

閾値はどう決める?

Page 22: Face Alignment by Explicit Shape Regression

Correlation-based feature selection

シンプルな方法(n-Best)

1. n個のfernをランダムに生成する

2. 訓練画像からランダムにP個の画素を選択し、 個の特徴を作る

3. (4)式を評価し、最も誤差の少ないものを選択する

2P

bi

iiS

b SSSS )(ˆminarg

b :このbinの学習

サンプル集合 (4)

非効率!

Page 23: Face Alignment by Explicit Shape Regression

Correlation-based feature selection

CBFS(Correlation-based feature selection)

個の特徴の中から、目標(正解形状と現在の形状の差分)と相関の高いものを取ってくる

N

i

t

ii

t

iiR

t SIRSSR1

11 )),((ˆminarg (3)

11 ˆ),( t

ii

t

ii SSSIR

ターゲット

2P

Page 24: Face Alignment by Explicit Shape Regression

Correlation-based feature selection

1. 回帰目標ベクトルをランダムな方向へ投影し、スカラー値を取得

1ˆ t

ii SS

ランダムなベクトル

i

Page 25: Face Alignment by Explicit Shape Regression

Correlation-based feature selection

2. 個の特徴の中から取得したスカラー値と最も相関の高いものを1つ選ぶ

TNi ,,,,1

2P

x x

x

x

x x

TNi fff ,,,,1

N=学習サンプル数

訓練サンプル

相関

Page 26: Face Alignment by Explicit Shape Regression

Correlation-based feature selection

3. 1と2をF回繰り返し、F個の特徴を取得

4. F個の特徴にランダムに閾値を設けることで、fernを作成

1ˆ t

ii SS

ランダムなベクトル i

TNi ,,,,1

TNi fff ,,,,1

相関

Page 27: Face Alignment by Explicit Shape Regression

Non-parametric shape constraint

本手法での形状は、以下の式で表せる

N

i

iiSwSS1

0 ˆ(6)

訓練形状 初期形状

訓練形状の線型部分空間内のため、顔の形状に制約が自動的につく

人の顔として不自然な形に歪むことがない!

Page 28: Face Alignment by Explicit Shape Regression

Non-parametric shape constraint

本手法での形状は、以下の式で表せる

N

i

iiSwSS1

0 ˆ(6)

訓練形状 初期形状

AAMやCLMの場合

n

i

ii IDRQ1

);()()( xpp

パラメータ誤差関数

顔の変形の大きさに対するペナルティ

(正則化項)

アピアランスの類似度

顔の変形へのペナルティがいらない!

Page 29: Face Alignment by Explicit Shape Regression

Non-parametric shape constraint

徐々に顔形状がFittingされていく様子

Page 30: Face Alignment by Explicit Shape Regression

Non-parametric shape constraint

Fernリグレッサーの各bin ( )個に格納されている形状 を主成分分析し、95%までのエネルギーを持つ主成分の数をプロットしたもの。

bSKF 2

tR

(ステージが上がるほど形状の微調整が必要になり、主成分が増える)

Page 31: Face Alignment by Explicit Shape Regression

Non-parametric shape constraint

最初のステージ と最後のステージ における上位3

つの主成分

1R TR

最初のステージ 最後のステージ

Page 32: Face Alignment by Explicit Shape Regression

学習方法の擬似コード

学習データから平均顔形状 を算出

While (T):

画像からP個の画素をランダムに取得し の画素ペアを作成

While (K):

と の特徴ベクトルでfernを学習(CBFS)

fernで学習画像を のグループに分離

分離した各グループから各binの を(6)で決定

0S0SS

2P

b

i ii

b

bb

SSS

)ˆ(

/1

1

SS

2PF2

S

(6)

bS

),( ikii SIrSS

SS

Page 33: Face Alignment by Explicit Shape Regression

実装の詳細

訓練データの拡張

初期形状として平均だけでなく、訓練形状からランダムに選んで、それも初期形状としてトレーニングに使用

複数の初期形状による検出

平均形状だけでなく、複数の初期形状を用いて検出を行い、得られた形状の中間値を取ることで、精度向上

Page 34: Face Alignment by Explicit Shape Regression

実装の詳細

処理時間

Intel Core i7 2.93GHz / C++ implementation

訓練画像: 2000枚

パラメータ

5F 1000 10T 500K 400P

Page 35: Face Alignment by Explicit Shape Regression

実験

従来法との比較のため、以下のデータセットで実験

BioID

LFPW

LFW87

Page 36: Face Alignment by Explicit Shape Regression

LFPWデータセットの結果

丸の半径が本手法のエラーの平均。Greenが従来法と比べ10%以上精度が上がった箇所

[1]P.Belhumeur et al, ”Localizing parts

of faces using a concensus of

exemplars”, CVPR2011

Page 37: Face Alignment by Explicit Shape Regression

LFW87データセットの結果

[12]L. Liang et al., “Face Alignment via component-based discriminative search”,

ECCV2008

Page 38: Face Alignment by Explicit Shape Regression

BioIDデータセットの結果

Page 39: Face Alignment by Explicit Shape Regression

アルゴリズムの検証

アルゴリズムの検証にはLPFWデータセットを用いた

Two-level cascaded regression

1段目の弱リグレッサーと2段目の弱リグレッサーの数を変更して、精度を確認

Page 40: Face Alignment by Explicit Shape Regression

アルゴリズムの検証

Shape indexed feature

2つの特徴用座標系で比較

平均誤差: 0.033 平均誤差: 0.059

Page 41: Face Alignment by Explicit Shape Regression

アルゴリズムの検証

Feature selection

特徴抽出手法(fernの構築方法)について、n-BestとCorreleation-based feature selection method(CBFS)との比較

Page 42: Face Alignment by Explicit Shape Regression

アルゴリズムの検証

各訓練ステージ毎に、選択された特徴間の距離の平均をプロット

学習が進むほど小さくなる。(微調整になる)

Page 43: Face Alignment by Explicit Shape Regression

結論

顔画像に形状を陽に、回帰的に割り当てる手法を提案。

全体への形状の割り当てと、局所的な誤差の最小化を同時に回帰的に扱うことで、形状が自動的に制約される。

高速、高精度。

リアルタイム追跡も可能

この形状当てはめのフレームワークは関節を持つ物体の認識など、他の分野への応用も期待できる。