cv勉強会@関東 3巻3章4節 画像表現
DESCRIPTION
TRANSCRIPT
3章4節画像表現
@yu4u@yu4u
OverviewOverview
• Bag‐of‐Visual Words– 転置インデックスによる高速なマッチングが可能に(5節)
– Visual Wordsの数 = 再現性‐識別性のトレードオフ
• Hamming EmbeddingHamming Embedding– 再現性‐識別性のトレードオフの改善
S ft A i t (M lti l A i t)• Soft Assignment (Multiple Assignment)– 再現性の改善
• スカラ量子化・直積量子化
– 高次元ベクトルの符号化、高速な近似最近傍探索
Bag of WordsBag‐of‐Words
章を単 単位 ば• 文章を単語単位にばらし、各単語の頻度で文章を表現
http://www.atmarkit.co.jp/fsecurity/special/107bayes/bayes02.html
Bag‐of‐Features (BoF)Bag‐of‐Keypoints (BoK)
所特徴領域 位 情報を捨• 局所特徴領域の位置情報を捨て、特徴ベクトルの集合で表現
座標: (xi, yi)スケール: siスケ ル: si
オリエンテーション: oi特徴ベクトル: pi
局所特徴領域i 特徴ベクトル: p1, p2,..., pN
画像
Visual Words (VWs)Visual Words (VWs)
練 像集合 抽 された• 訓練画像集合から抽出された特徴ベクトル集合をクラスタリング (k‐means)( )
• 代表ベクトル集合V = Visual Words
特徴ベクトル集合: {pi}{pi}
特徴抽出 クラスタリング(k means)
Visual Words:
(k‐means)
訓練画像集合Visual Words:
}1|{ mii vV
Bag of Visual Words (BoVW)Bag‐of‐Visual Words (BoVW)
像中 各特徴ベ を• 画像中の各特徴ベクトルpiをVisual Wordに割り当て(ベクトル量子化)
• 各Visual Wordの頻度 f = (f1, f2,..., fm)f/|f| 画像を特徴付ける 次元ベクトル• f/|f|:画像を特徴付けるm次元ベクトル
「一般物体認識の現状と今後」
IDFによる重み付けIDFによる重み付け
重 度• VWiのIDF(重要度):idfi = log(N/dfi)– N:画像の枚数、dfi:VWiが出現した画像数画像 枚数、 i i 出現した画像数
– 色々な画像に満遍なく出現するVW=重要度低
( )• w = (w1, w2,..., wm)= (f1*idf1, f2*idf2,..., fm*idfm)
• w/|w|:画像を特徴付けるm次元ベクトル
mが大きい時のクラスタリング手法mが大きい時のクラスタリング手法
※特徴ベクトル空間• Vocabulary Tree (VT)
– 階層的k‐means
※特徴ベクトル空間
階層的
– VTばかり取り上げられるが階層的スコアリングも重要階層的スコアリングも重要
• Approximate k‐means– Randomized kd‐trees上でのpriority search
• See “Fast Approximate Nearest NeighborsSee Fast Approximate Nearest Neighbors with Automatic Algorithm Configuration”(FLANN論文)(FLANN論文)
Visual Wordsの数mVisual Wordsの数m
性大 識 性• m小: 再現性大 識別性小m大: 再現性小 識別性大
トレードオフ
“Improving bag‐of‐features for large scale image search,” Jegou+, IJCV, 2010
Hamming EmbeddingHamming Embedding
特徴ベク を ダム直交変換( )• 特徴ベクトルをランダム直交変換(ROP)+閾値処理によりバイナリ符号化
• 同じVWに属し、かつバイナリ符号が閾値以下の特徴ベクトル同士のみ「マッチ」
• 前述のトレードオフを改善(再現性を保ちつつ、識別性を改善)(再現性を保ち 、識別性を改善)
• コサイン類似度との等価性も保たれる (5.2)初出はECCV’08だが 大規模な特定物体認識で• 初出はECCV’08だが、大規模な特定物体認識でこれより筋の良い手法はまだ無いと感じる
Hamming EmbeddingHamming Embedding
□ある特徴領域から抽出された特徴ベクトル• □ある特徴領域から抽出された特徴ベクトル×他の画像の対応する特徴領域から抽出された特徴ベクト抽出された特徴ベクトル
Hamming EmbeddingHamming Embedding• 前述の画像表現 f では同じVWに属する特徴ベクトルを区別しないが、HEでは区別する
f f f f
VW1 1 0
f1 f2
VW1 1 0
f1 f2
VW2 1 1 9112311
|||||||| 21
21
ff
ff
VW2 1 1
VW 3 2 VW 3 27
等価等価
VW3 3 2 VW3 3 2911
7
VW4 0 2 VW4 0 2
Hamming EmbeddingHamming EmbeddingVW1VW1
VWVW2
VW1VW1
VWVW2VW2VW2 VW2VW2
※特徴ベクトル空間 ※特徴ベクトル空間
VW3VW3 VW4VW4 VW3VW3 VW4VW4
VW1 1 0VW1 1 0
※特徴ベクトル空間 ※特徴ベクトル空間
各投票でidf2の重みを付けることでidfも考慮!
VW2 1 1VW2 1 1
付けることでidfも考慮!
VW3 3 2VW3 3 2
VW4 0 2VW4 0 2
9117
9110
Multiple AssignmentMultiple Assignment
特徴ベ を 近傍 なく 近傍• 特徴ベクトルを最近傍ではなくk近傍のVWに割り当て = 再現性↑識別性↓
特徴ベクトル 特徴ベクトル
Single Assignment Multiple Assignment
特徴ベクトルの(バイナリ)符号化特徴ベクトルの(バイナリ)符号化
量• スカラ量子化
– (射影変換後)各次元を量子化(2値化が多い)(射影変換後)各次元を量子化( 値化 多 )
• VariantsC 閾値処理– PCA + 閾値処理
– LSH (Sim‐Hash)– Spectral Hashing– http://www.ee.columbia.edu/~jwang/p // / j g/– http://d.hatena.ne.jp/tb_yasu/20100513/1273754177
直積量子化を用いた近似最近傍探索[Jegou+, TPAMI'11]
• 特徴ベクトルをS個の部分ベクトルに分割しそれぞれ量子化
– 量子化誤差:ベクトル量子化<直積量子化<スカラ量子化
– 距離計算効率:スカラ量子化≧直積量子化>ベクトル量子化
• 参照テーブルを用いた距離計算
ベクトル分割
部分ベクトルリファレンスベクトルy 参照テーブルT[s][cs]:xsとcs番目の代表ベクトルとの
距離計算×
xsとcs番目の代表 クトルとの二乗距離を計算しておく(リファレンスベクトル数>>直積量子化のコードブック数)
14 34 19 2
直積量子化
Short code(c1,…,cS)
直積量子化コードブック
距離計算 ]][[T||||1
2s
S
scsyx
x1 xS部分ベクトル
1st subvec. S‐th subvec.クエリベクトルx
s
OverviewOverview
• Bag‐of‐Visual Words– 転置インデックスによる高速なマッチングが可能に(5節)
– Visual Wordsの数 = 再現性‐識別性のトレードオフ
• Hamming EmbeddingHamming Embedding– 再現性‐識別性のトレードオフの改善
S ft A i t (M lti l A i t)• Soft Assignment (Multiple Assignment)– 再現性の改善
• スカラ量子化・直積量子化
– 高次元ベクトルの符号化、高速な近似最近傍探索