Upload
vantuyen
View
242
Download
11
Embed Size (px)
Citation preview
意味的マルチメディア処理意味的マルチメディア処理第A2回(2013年10月15日)
ー 視覚メディアの分析,分類,比較,検索 (第1回)ー
教員:大渕 竜太郎
2013/10/28 意味的マルチメディア処理特論(視覚メディア) 1
SIFT特徴: 顕著点による局所特徴量特徴 顕著点 よる局所特徴量
Scale Invariant Feature Transform (SIFT)Scale Invariant Feature Transform (SIFT)• David Loweによる• 顕著な特徴点を抽出し,その点で局所特徴量を計算.• 特許あり• 特許あり.• http://www.cs.ubc.ca/~lowe/papers/ijcv04.pdf
– 特徴画像の線形変換に対し頑強• 画像の線形変換に対し頑強
– 不変性の実現• スケール(大きさ)不変性
多重解像度解析– 多重解像度解析
• 線形(回転,スケール, 軽い射影など)変換不変性– 顕著点の局所特徴
特徴量– 特徴量• Difference of Gaussian (Gabor特徴量)などから抽出• 向き,スケール,位置,...• おのおの128次元ベクトル x 特徴点の数
SIFT処理のステップ処理 テッ
1 スケールスペースで極値を検出1. スケールスペースで極値を検出
– Difference-of-Gaussians (DoG)を利用.
キ ポイント(顕著点)の決定2. キーポイント(顕著点)の決定
– 不安定な顕著点を消去.
3. 明度勾配の向きの検出
– 顕著点の近傍(位置とスケールについて)の画像パッチを用いる.
4. 顕著点における記述子の計算
– 顕著点の近傍(位置とスケールについて)における輝度勾配の向きとスケールを,128次元ベクトルで記述.
3/50
SIFT特徴特徴
特徴点抽出 特徴点抽出
– 元画像をガウスぼかしして多重解像度画像群を作成像度画像群を作成.
• 複数のσ値でフィルタ.
スケールスペースの極値を求める– スケールスペースの極値を求める.
特徴量計算 特徴量計算
– 特徴点ごとに特徴量を計算する.
• 位置,スケール,特徴の向き,...
SIFTにおける多重スケール空間とDoGおける多重 ケ ル空間
ボケ大
大スケール画像(次のオクターブ)
ボケ小
(次のオクターブ)
次に詳細な画像群ダウンサンプリング
(間引き)して縮小.
ボケ大
より大スケールの変化のみ残す.
1辺の画素数1/2(画像 画素数 )
小スケール画像(最初のオクターブ)
(画像の画素数1/4)
Gaussぼかし
Gaussぼかし
(最初のオクタ ブ)
最も詳細な画像群
ボケ小
Gaussぼかし
Gaussぼかし
ボケ小
SIFTにおける多重スケール空間おける多重 ケ ル空間
Gaussぼかし ボケ大ボケ小 Gaussぼかし
ダウンサンプリング
ダウダウンサンプリング
ダウンサンプリングサンプリング
ダウンサンプリング
Scale space (スケール・スペース)p ( ケ ル )
ケ (解像度) 階層(ピ ド)スケール(解像度)の階層(ピラミッド)
ぼかし(low-pass filtering)とダウンサン
プリング(画素の間引き)で生成プリング(画素の間引き)で生成.
ぼGauss ぼかし
間引き
間引き
7/50
間引き
SIFTにおける多重スケール空間とDoGおける多重 ケ ル空間
ボケ大
大スケール画像(次のオクターブ)
ボケ小
(次のオクターブ)
次に詳細な画像群ダウンサンプリング
(間引き)して縮小.
ボケ大
より大スケールの変化のみ残す.
1辺の画素数1/2(画像 画素数 )
小スケール画像(最初のオクターブ)
(画像の画素数1/4)
Gaussぼかし
Gaussぼかし
(最初のオクタ ブ)
最も詳細な画像群
ボケ小
Gaussぼかし
Gaussぼかし
ボケ小
Gaussフィルタィルタ
Gauss(ガウス)フィルタ Gauss(ガウス)フィルタ– Gaussian low-pass filter (ガウス低域通過フィ
ルタ)等とも呼ばれる.
2
2( ) exp2xg x
2 2
( ) i ji j
2
2( , ) exp2jg i j
• 2次元だと,縦横で大きさの違うGaussianもある.
2013/10/28 9local.wasp.uwa.edu.au/~pbourke/other/functions/
Difference-of-Gaussian (DoG)ガウス関数の差分ガウス関数の差分
ガウス関数の差分は2階微分として働く.
2 4 21
2
21 42 21
2
10/50
特定の帯域を通過より低域を通過低域を通過特定スケールの輪郭を抽出
Difference-of-Gaussian (DoG)は帯域通過フィルタ帯域通過フィルタ
Gaussぼかしは低域通過フ Gaussぼかしは低域通過フィルタ
その差分(difference)は帯 その差分(difference)は帯域通過(band-pass)フィルタになる
– 特定の周波数(細かさ・粗さ,またはスケール)の成分だけを抽出できるを抽出できる.
通過
度
過度
通通
11/50周波数(細かさ)周波数(細かさ)
SIFTにおける多重スケール空間とDoGおける多重 ケ ル空間
ボケ大
大スケール画像(次のオクターブ)
ボケ小
(次のオクターブ)
次に詳細な画像群ダウンサンプリング
(間引き)して縮小.
ボケ大
より大スケールの変化のみ残す.
1辺の画素数1/2(画像 画素数 )
小スケール画像(最初のオクターブ)
(画像の画素数1/4)
Gaussぼかし
Gaussぼかし
(最初のオクタ ブ)
最も詳細な画像群
ボケ小
Gaussぼかし
Gaussぼかし
ボケ小
SIFT顕著点検出顕著点検出
ケ ペ (多重解像度ピ ド)内 画像がスケールスペース(多重解像度ピラミッド)内で,DoG画像が極小値(Minima),極大値(Extrema)をとる点を探す:
1) あるスケールで極値を検出スケール
1) あるスケールで極値を検出.
2) その極値が近くのスケールでも(安定に)存在するかを,3近傍のスケールでチェック.(合計,3x3x3-1=26近傍)近傍の ケ ルでチ ック (合計, 近傍)
高解像度Gaussボケ小 Gaussボケ大
多重解像度の多重解像度のDoG画像群
13/50
低解像度
Scale-spaceにおける極値検出p おける極値検出
「安定」な顕著点のみを選別 「安定」な顕著点のみを選別.
– 雑音,照明の変化,等の影響を受けにくい,安定したもの.
閾値を決めて切り捨てる– 閾値を決めて切り捨てる.
14/50
顕著点ごとの特徴の記述子の計算顕著点 特徴 記述子 計算
キ ポイントごとに 例え キーポイントごとに,例えば8x8の領域で,以下を計算算
– 明度勾配の向き
• 領域内の向きヒストグラムで• 領域内の向きヒストグラムで最大の向きが,その記述子の向き
– 明度勾配のスケール
• 「明度変化の影響領域の大きさ」さ」
記述子は128次元のベクトル
明度勾配の強さ
ル
15/50
向き
顕著点ごとの特徴の記述子の計算顕著点 特徴 記述子 計算
顕著点周りに16x16の窓を設定 顕著点周りに16x16の窓を設定.
その窓を,計16個の4x4の小窓に分割.
各小窓で 8区間(方向)の向きヒストグラムを計算 各小窓で,8区間(方向)の向きヒストグラムを計算.– 明度勾配を8方向でヒストグラム化.
ヒストグラムと勾配の強度を 16個の小窓全体で補間 ヒストグラムと勾配の強度を,16個の小窓全体で補間– 最も勾配が強く,頻度の高い向きが,その顕著点の記述子の向き.
– 記述子は,16個の小窓 × 8方向 = 128次元ベクトル.
16x16画素の窓 SIFT記述子は8方向×16小窓=128次元ベクトルキーポイント
主要な勾配方向
16/50
顕著点ごとの特徴の記述子の計算顕著点 特徴 記述子 計算
顕著点周りの16x16の窓で記述子を計算 顕著点周りの16x16の窓で記述子を計算.
– 4x4画素の小窓ごと,8方向の向きヒストグラムを計算.
顕著点周りの16x16画素の窓 8方向×16小窓=128次元ベクトル
キーポイント
17/50主要な勾配方向
Examplep
顕著点は(有る程度)幾何変換不変
18/50
SIFT特徴量例1例1
グレースケール画像 グレ スケ ル画像から計算.
特徴点1,091個– 矢の元が特徴点
– 長さがスケール長さがスケ ル
– 向きが特徴の向き
SIFT特徴量例2例2
特徴点 160個 特徴点 160個
特徴点 230個 特徴点 230個
SIFT特徴マッチングの例(1)マッチングの例(1)
Ddd Ddd
SIFT特徴量マッチングの例マッチングの例
異なる画像だが 十分類似 ほぼ成功どことマッチングしていいかわからない...
異なる画像だが,十分類似.ほぼ成功.
3次元モデルの深さ画像から抽出したSIFT特徴 (1)SIFT特徴 (1)
多重解像度の「中心軸」もある程度捉える
特徴 = スケール + 向き特徴 スケ ル + 向き
窪みの特徴も取る窪みの特徴も取る
3次元モデルの深さ画像から抽出したSIFT特徴 (1)SIFT特徴 (1)
SIFT特徴量の例特徴量 例 OpenCVにおける局所特徴p おける局所特徴
OpenCVには「SIFTもどき」のSURFがある! OpenCVには「SIFTもどき」のSURFがある!
– うたい文句は,「SIFTより高速で,SIFTなみの性能」
• Herbert Bay Tinne Tuytelaars Luc Van Gool "SURF:• Herbert Bay, Tinne Tuytelaars, Luc Van Gool, SURF: Speeded Up Robust Features", Proceedings of the 9th European Conference on Computer Vision, Springer LNCS volume 3951, part 1, pp 404--417, 2006.
– cvExtractSURF()関数.
SURFについては,find_obj.cppを参照!
– ...OpenCV¥OpenCV2.0¥samples¥c に有ります.p p p– http://opencv.jp/opencv-
1.1.0/document/opencvref_cv_gradients.html– http://gihyo.jp/dev/feature/01/opencv/0004
局所特徴をどうする?局所特徴を うする
位置 大きさ 形 等の変化に 位置,大きさ,形,等の変化に強い
– 局所特徴の位置を無視して比較すると,視点の変化や変形等に不変性を持つ.
SIFTは 回転 スケール 位置に Yannis A rithis et al ACM MM 2010– SIFTは,回転,スケール,位置に不変.
しかし...
Yannis Avrithis, et al., ACM MM 2010
比較の手間が大変!– M個とN個の局所特徴の比較M個とN個の局所特徴の比較
O(MN)
– 全体でL組の画像対の比較
…
O(LMN)
Bag-of-features法による局所特徴の統合
ObjectObject Bag of ‘ ords’Bag of ‘ ords’ObjectObject Bag of ‘words’Bag of ‘words’ Bag-of-featuresモデルg デル
局所特徴群を袋詰め!を袋詰め!
Fei-Fei Li, Rob Fergus, and Antonio Torralba のスライドからもらってきた.
Bag-of-features法:概要g 法 概要
1 特徴抽出1. 特徴抽出
• 画像の局所から特徴を抽出する.
物体の部分部分の特徴を捉えた特徴• 物体の部分部分の特徴を捉えた特徴.
Bag-of-features法:概要g 法 概要
1 特徴抽出1. 特徴抽出
2. “visual vocabulary” (視覚的ボキャブラリ)を学習.
Bag-of-features法:概要g 法 概要
1 特徴抽出1. 特徴抽出
2. “visual vocabulary” (視覚的ボキャブラリ)を学習.
ボ ブ づ3. 視覚的ボキャブラリに基づき,特徴を量子化する.
• Vector quantization (ベクトル量子化)
• 音信号の量子化は,振幅方向の1次元で量子化.
• ここでは,多次元の特徴を,多次元空間(ベクトル空間)で量子化するため,ベクトル量子化と呼ぶ.
局所特徴 視覚単語 ヒストグラムコードブック BF
13
画像ベクトル量子化
局所特徴集合
視覚単語集合
ヒストグラムコードブック BF特徴ベクトル
21
Bag-of-features法:概要g 法 概要
1 特徴抽出1. 特徴抽出
2. “visual vocabulary” (視覚的ボキャブラリ)を学習.
ボ ブ づ3. 視覚的ボキャブラリに基づき,特徴を量子化する.
4. 画像を“visual words”(視覚単語)の頻度で表現( )
画像1 画像2 画像3
画像の物体認識とBag-of-features法画像 物体認識 g 法
ある画像を その構成要素の集合として記述する ある画像を,その構成要素の集合として記述する.
– その要素がどのくらいの頻度で現れるか,だけを気にする.
要素の位置は無視する– 要素の位置は無視する.
顔,花,植物,建物
Csurka et al. (2004), Willamowski et al. (2005), Grauman & Darrell (2005), Sivic et al. (2003, 2005)
顔,花,植物,建物
Bag-of-features法は物体認識に効果的!g 法は物体認識 効果的
Bag of features法は物体認識に効果的! Bag-of-features法は物体認識に効果的!
– 星座モデル(Parts-and-shapeモデル)より性能が良かった
bag of features bag of features Parts-and-shape model
Caltech6 データセットで評価
1. 特徴抽出特徴抽出
局所特徴の記述子を計算
局所特徴抽出の場所・領域を選択
記述子を計算
例:SIFT [Lowe’04],画像そのまま,等.
局所特徴抽出の場所・領域を選択
検出したパッチ
検出した顕著点検出した顕著点
正規格子点
ランダム点
Slide credit: Josef Sivic
1. 特徴抽出特徴抽出
…
特徴群(集合)
1. 特徴抽出
規則格子
特徴抽出
規則格子– Vogel & Schiele, 2003– Fei-Fei & Perona 2005Fei Fei & Perona, 2005
1. 特徴抽出
規則格子
特徴抽出
規則格子– Vogel & Schiele, 2003– Fei-Fei & Perona 2005Fei Fei & Perona, 2005
顕著点– Csurka et al. 2004– Fei-Fei & Perona, 2005– Sivic et al. 2005
1. 特徴抽出
Regular grid
特徴抽出
Regular grid– Vogel & Schiele, 2003– Fei-Fei & Perona 2005Fei Fei & Perona, 2005
Interest point detector– Csurka et al. 2004– Fei-Fei & Perona, 2005– Sivic et al. 2005
Furuya CIVR2009 その他
– ランダムサンプリング (Vidal-Naquet & Ullman, 2002)セグメンテ シ ンした領域 (B d D l F th d
Furuya, CIVR2009
– セグメンテーションした領域 (Barnard, Duygulu, Forsyth, de Freitas, Blei, Jordan, 2003)
局所特徴を抽出する局所特徴を抽出する
特徴の配置 特徴の配置
– 格子?,ランダム?,顕著点?,それとも組み合わせ?
どんな局所特徴?
– テクスチャ系?
• SIFT系(SURF等)?やHOG?,それとも,小画像そのもの?
– 色?色
• 逆効果の場合もある.(色の異なる自転車,花,...)
Discriminative Training for Object Recognition Using Image Patches, Thomas Deselaers, Pascal Workshop 2006
クラスタリングの例:色空間のクラスタリングによる画像の減色色空間のクラスタリングによる画像の減色
減色 減色
– 画像を表現する色の数を減らす.
減色後の画像が 極力 元の画像に近いように– 減色後の画像が,極力,元の画像に近いように.
元の画像 4色の画像
クラスタリングの例:色空間のクラスタリングによる画像の減色色空間のクラスタリングによる画像の減色
1 元画像の色空間を学習して代表色を決定1. 元画像の色空間を学習して代表色を決定.
– 元の画像の全ての画素の色ベクトルをクラスタリング.
減色後の色数がクラスタ(領域 類)数• 減色後の色数がクラスタ(領域,類)数.
• 色は3次元の特徴ベクトル!
代表色の集合が 符号表( ドブ ク)• 代表色の集合が,符号表(コードブック)
– 通常,減色後の色数(例えば,16色)は与えられる.
画像 各画素 色をベクト 量子化2. 元画像の各画素の色をベクトル量子化.
– 与えられた色を,それに一番近い代表色で近似.
• 基本アルゴリズム
– 与えられた画素の色と,代表色全ての間の距離を計算し,最も距離の小さい代表色を代表ベクトル(符号)として選択距離の小さい代表色を代表ベクトル(符号)として選択.
OpenCVサンプルクラスタリングによる減色処理cvkmeans2クラスタリングによる減色処理cvkmeans2
1600万色 4色1600万色 4色
2. 視覚辞書(visual vocabulary)の学習視覚辞書( y) 学習
…
特徴集合特徴集合
特徴空間
2. 視覚辞書(visual vocabulary)の学習視覚辞書( y) 学習
…
クラスタリング
Slide credit: Josef Sivic
Clustering; グループに分類
2. 視覚辞書(visual vocabulary)の学習
Visual vocabulary
視覚辞書( y) 学習
… Visual vocabulary
クラスタの
符号ベクトル視覚辞書=クラスタの代表点
クラスタリング
Slide credit: Josef Sivic
クラスタリングとはクラ タリング は
データの類似性に基づいたグループ(クラスタ)化 データの類似性に基づいたグループ(クラスタ)化
クラスタリングとはクラ タリング は
データの類似性に基づいたグループ(クラスタ)化 データの類似性に基づいたグループ(クラスタ)化
クラスタを代表する特徴
クラスタリングの結果のコードブック(符号化辞書)を用いてベクトル量子化(VQ)を用いてベクトル量子化(VQ)
視覚ボキャブラリをクラスタリングで(教師無し)学習 視覚ボキャブラリをクラスタリングで(教師無し)学習– クラスタを代表する特徴がベクトル量子化の符号ベクトル
• code vector(符号ベクトル),代表ベクトル,などと呼ぶ
例 タをなす特徴集合 重 を符 す• 例:クラスタをなす特徴集合の重心を符号ベクトルとする.
– 視覚ボキャブラリ(visual vocabulary), コードブック(符号化表,codebook)などと呼ぶ.
– 視覚ボキャブラリは,識別・検索対象以外のデータから学んでも良い.
• ただし,教示データが識別対象と十分に似ているのが条件.
コードブックを用い,特徴をベクトル量子化.– Vector quantizer(ベクトル量子化器)で,与えられた特徴ベクトルを,そ
の特徴に最も近い符号ベクトル(視覚単語 visual word)に量子化の特徴に最も近い符号ベクトル(視覚単語,visual word)に量子化.
• 特徴の多次元空間における最近点探索.
– その符号ベクトルの符号(単語)を出力.
視覚ボキャブラリ(コードブック)の例視覚ボキャ ラリ( ック) 例
これら視覚単語を張りこれら視覚単語を張り合わせると,いろんな画像が近似できる.
Fei-Fei et al. 2005
画像を単語群(符号語群)の頻度で表現画像を単語群(符号語群) 頻度 表現頻度
…..
符号語(視覚単語)
画像を単語群(符号語群)の頻度で表現画像を単語群(符号語群) 頻度 表現
局所特徴の局所特徴の
位置は無視してヒストグラム化ヒストグラム化
頻度
…..
符号語(視覚単語)
ちなみに...「ジガゾ パズル」は視覚単語のパズル?「ジガゾーパズル」は視覚単語のパズル?
“自分の顔”ができる不思議なパズル「ジガゾーパズル」 自分の顔 ができる不思議なパズル「ジガゾ パズル」– http://plusd.itmedia.co.jp/lifestyle/articles/0907/18/news004.html– 手順
• 携帯電話(など)で自分の顔を撮影,専用Webサイトに送信.
• 300ピースで顔を表現する.それぞれのピ スには視覚単語のような模様が– それぞれのピースには視覚単語のような模様が...
– 顔画像の部分をベクトル量子化して,最も類似したピースに対応付け.
• 携帯電話(PC)に返送された設計図の記号の通りにピースを並べる.
視覚単語が画像の部分である例視覚単語 画像 部分 ある例
Sivic et al. 2005
Bag-of-Words法の起源1 テクスチャ識別1:テクスチャ識別
テクスチャはtextonと呼ばれる基本要素の反復 テクスチャはtextonと呼ばれる基本要素の反復.
統計的テクスチャでは,個々のtextonの性質が重要.
複数 がどう並ぶ か は重 はな– 複数のtextonがどう並ぶのか,は重要ではない.
Julesz, 1981; Cula & Dana, 2001; Leung & Malik 2001; Mori, Belongie & Malik, 2001; Schmid 2001; Varma & Zisserman, 2002, 2003; Lazebnik, Schmid & Ponce, 2003
Bag-of-Words法の起源1 テクスチャ識別1:テクスチャ識別
histogram
Universal texton dictionary
Julesz, 1981; Cula & Dana, 2001; Leung & Malik 2001; Mori, Belongie & Malik, 2001; Schmid 2001; Varma & Zisserman, 2002, 2003; Lazebnik, Schmid & Ponce, 2003
Bag-of-Words法の起源2 テキスト検索におけるBag of wordsモデル2:テキスト検索におけるBag-of-wordsモデル
辞書にある単語の出現頻度で文書を表現する [S lt 辞書にある単語の出現頻度で文書を表現する.[Salton & McGill,1983]
US Presidential Speeches Tag Cloudhttp://chir.ag/phernalia/preztags/
Bag-of-Words法の起源2 テキスト検索におけるBag of wordsモデル2:テキスト検索におけるBag-of-wordsモデル
辞書にある単語の出現頻度で文書を表現する [S lt 辞書にある単語の出現頻度で文書を表現する.[Salton & McGill,1983]
US Presidential Speeches Tag Cloudhttp://chir.ag/phernalia/preztags/
Bag-of-Words法の起源2 テキスト検索におけるBag of wordsモデル2:テキスト検索におけるBag-of-wordsモデル
辞書にある単語の出現頻度で文書を表現する [S lt 辞書にある単語の出現頻度で文書を表現する.[Salton & McGill,1983]
US Presidential Speeches Tag Cloudhttp://chir.ag/phernalia/preztags/
画像の識別?画像 識別
Bag of features表現(「統合した」ヒストグラム特徴) Bag-of-features表現(「統合した」ヒストグラム特徴)から,どうやって,ある画像を識別する?
ある画像のBag of features表現を特徴ベクトルと考えて こ– ある画像のBag-of-features表現を特徴ベクトルと考えて,これを識別器にかける.
• 「ベクトル空間モデルによる比較」で識別• 「ベクトル空間モデルによる比較」で識別
• 例:1クラスを識別するSupport Vector Machineを利用.
画像の検索?画像 検索
Bag of features表現(「統合した」特徴)から どうやっ Bag-of-features表現(「統合した」特徴)から,どうやって類似した画像を見つける?
ある画像のBag of features表現を特徴ベクトルと考え そ– ある画像のBag-of-features表現を特徴ベクトルと考え,それと近い順に画像を検索し提示する?
得られたBoW特徴(ヒストグラム)の使い方得られた 特徴( グラ ) 使 方
大域BoW特徴ベクタ:画像全体から 大域BoW特徴ベクタ:画像全体から– 画像の識別.
• K-NN,Support Vector Machine, 等で判別.pp ,– 画像の検索.
• 距離(類似度)の昇順(降順)に表示. Pascal VOC 2005
局所BoW特徴ベクタ:画像の一部から– 画像の一部に窓を設定し,その窓でBoWを計算.
– 窓ごとにBoW特徴ベクタを類別し,
• 物体検出(detection)に使う藤吉, PCSJ/IMPS2008
• 物体検出(detection)に使う.– 位置を検出.
• 部品(顔,タイヤ,手,等)を検出,階層モデル(後 使後出)に使う.
Pascal VOC 2007
クラスタリングの例:色空間のクラスタリングによる画像の減色色空間のクラスタリングによる画像の減色
減色 減色
– 画像を表現する色の数を減らす.
減色後の画像が 極力 元の画像に近いように– 減色後の画像が,極力,元の画像に近いように.
元の画像 4色の画像
クラスタリングの例:色空間のクラスタリングによる画像の減色色空間のクラスタリングによる画像の減色
1 元画像の色空間を学習して代表色を決定1. 元画像の色空間を学習して代表色を決定.
– 元の画像の全ての画素の色ベクトルをクラスタリング.
減色後の色数がクラスタ(領域 類)数• 減色後の色数がクラスタ(領域,類)数.
• 色は3次元の特徴ベクトル!
代表色の集合が 符号表( ドブ ク)• 代表色の集合が,符号表(コードブック)
– 通常,減色後の色数(例えば,16色)は与えられる.
画像 各画素 色をベクト 量子化2. 元画像の各画素の色をベクトル量子化.
– 与えられた色を,それに一番近い代表色で近似.
• 基本アルゴリズム
– 与えられた画素の色と,代表色全ての間の距離を計算し,最も距離の小さい代表色を代表ベクトル(符号)として選択距離の小さい代表色を代表ベクトル(符号)として選択.
OpenCVサンプルクラスタリングによる減色処理cvkmeans2クラスタリングによる減色処理cvkmeans2
1600万色 4色1600万色 4色
減色の例減色 例
色空間を 非連続なクラスタ(小領域)に分ける 色空間を,非連続なクラスタ(小領域)に分ける.
クラスタの中心が,代表色.
代表色の選択代表色 選択
画像の色の分布を解析して代表色を選択 画像の色の分布を解析して代表色を選択.
– 解析対象となる多数の画像を解析して偏りをなくす.
教師無し学習アルゴリズム と見ることもできる– 教師無し学習アルゴリズム,と見ることもできる.
色の3次元ベクタの特徴空間でクラスタリング 色の3次元ベクタの特徴空間でクラスタリング.
– 分割型(partitioning clustering)• k-means法,Mean-shift法• パラメトリック学習
– 階層型(hierarchical clustering)• 凝集型(agglomerative clustering)• 分割型(divisive clustering)
ベクトルとしての特徴量ク ル し 特徴量
特徴は多次元ベクトル 特徴は多次元ベクトル– 特徴点は多次元空間の点.
• 例:3次元色特徴ベクトル
G
例:3次元色特徴ベクトル
(R,G,B)
n個のデータ xi (i = 1, ・・・, n)
B
個のデ タ i ( , , )– X = {x1 , x2 , ・・・ , xn }
xi はm次元ベクトル Rxi はm次元 クトル– xi = ( wi1, wi2, ・・・ , wim)– wij : ベクトル i の j 番目の要素ij j
k-means法による特徴点のクラスタリング法 よる特徴点 クラ タリング
1 特徴点を(ランダムに)k個のクラスタC={c c ・・・ c }1. 特徴点を(ランダムに)k個のクラスタC={c1, c2, , ck}
に分け,それらのクラスタiの重心 を求める.
icxi
i xc
m 1
2. すべての特徴点x∈Dについて
a. その点xから各クラスタの重心への距離d(x, mi)を求め
ii
る.
b. その点xを距離 d(x, mi)が最小のクラスタ iに追加.i
3. 新たなクラスタの重心を計算しなおす.
4 クラスタ(に属する点)や重心に変化がなくなるまで(つまり4. クラスタ(に属する点)や重心に変化がなくなるまで(つまり,局所最適解に達するまで)上記2, 3を繰り返す.
k-means法による特徴点のクラスタリング法 よる特徴点 クラ タリング
1 特徴点を(ランダムに)k個のクラスタC={c c ・・・ c }1. 特徴点を(ランダムに)k個のクラスタC={c1, c2, , ck}
に分け,それらのクラスタiの重心 を求める.
icxi
i xc
m 1
2. すべての特徴点x∈Dについて
a. その点xから各クラスタの重心への距離d(x, mi)を求め
ii
る.
b. その点xを距離 d(x, mi)が最小のクラスタ iに追加.i
3. 新たなクラスタの重心を計算しなおす.
4 クラスタ(に属する点)や重心に変化がなくなるまで(つまり4. クラスタ(に属する点)や重心に変化がなくなるまで(つまり,局所最適解に達するまで)上記2, 3を繰り返す.
k-means法による特徴点のクラスタリング法 よる特徴点 クラ タリング
実現するには 実現するには...
– クラスタ数 Kを決める.事前にクラスタ数を選ぶ必要があるのは k means法の• 事前にクラスタ数を選ぶ必要があるのは,k-means法の弱点でもある.
特徴ベクトルを決める– 特徴ベクトルを決める.• ここでは,画素の色.
• 画像の分割なら 模様 位置 向き 等• 画像の分割なら,模様,位置,向き,等.
• 画像から抽出したSURF特徴(例えば64次元)かも.
特徴ベクトル間の距離(類似度)尺度を決める– 特徴ベクトル間の距離(類似度)尺度を決める.
• L2距離(Euclid距離),L1距離(Manhattan距離),等.
k 法を特徴ベクトルに適用– k-means法を特徴ベクトルに適用.
k-meansクラスタリングクラ タリング
k-meansクラスタリングクラ タリング k-meansクラスタリングクラ タリング
k-meansクラスタリングクラ タリング k-meansクラスタリングクラ タリング
k-meansクラスタリングクラ タリング k-meansクラスタリングクラ タリング
k-meansクラスタリングクラ タリング k-meansのクラスタ重心の軌跡クラ タ重心 軌跡
2次元特徴空間におけるクラスタ重心の軌跡の例2次元特徴空間におけるクラスタ重心の軌跡の例
Duda et al.
k-meansクラスタリングによる画像の減色クラ タリング よる画像 減色
減色, Color Quantization(色量子化)
– 例:GIF画像のルックアップテーブル.
k-meansで少数の代表色を選ぶ.
色空間(例えばRGB)でK クラスタリング– 色空間(例えばRGB)でK-meansクラスタリングする.
– 例:1600万色から256色に減色.
• ある画像に含まれる色(>>256色)をK=256でK-meansクラスタリング.
• 256個のクラスタの重心を減色後の256代表色とする.
• 256個の代表色をカラールックアップテーブルに登録する.録
x j i2
k means法では右の目的関数を最小化 x j i
jelements of i'th cluster
iclusters
k-means法では右の目的関数を最小化
K-meansクラスタリングによる,減色の例クラ タリング よる,減色 例
色空間を 非連続なクラスタ(小領域)に分ける 色空間を,非連続なクラスタ(小領域)に分ける.
クラスタの中心が,代表色.
OpenCVサンプルクラスタリングによる減色処理cvkmeans2クラスタリングによる減色処理cvkmeans2
1600万色 4色1600万色 4色
OpenCVサンプルクラスタリングによる減色処理cvkmeans2クラスタリングによる減色処理cvkmeans2
1600万色 16色1600万色 16色
OpenCVサンプルクラスタリングによる減色処理cvkmeans2クラスタリングによる減色処理cvkmeans2
1600万色 32色1600万色 32色
k-meansクラスタリングによる画像分割色だけを使用色だけを使用
例例
– 画像の色によるセグメンテーション(分割) = 減色処理
像 K 11元画像 K=5 K=11
k-meansクラスタリングによる画像分割色のみ色のみ
色色
色のみによるセグメンテーション
– 特徴ベクトルは(R,G,B)の3次元.
K=20で得られた20個のクラスタのうち,4クラスタを表示.
k-meansクラスタリングによる画像分割色と座標色と座標
色+座標色+座標
距離と色によるセグメンテーション
– 特徴ベクトルは(R,G,B,X,Y) K=20で得られた20個のクラスタのう
ち,4クラスタを表示.