Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Pythonで画像処理をやってみよう!第8回 - Scale-space 第7回 -

1,344 views

Published on

二次元画像を用いた Scale-space の作成について。Morning Project Samurai 第39回 ミーティング資料。

Published in: Software
  • Be the first to comment

Pythonで画像処理をやってみよう!第8回 - Scale-space 第7回 -

  1. 1. 2015/11/29 MPS定例ミーティング Python で画像認識をやってみよう! 第8回 - Scale-space 第7回 - 金子純也 Morning Project Samurai 代表
  2. 2. 目次 • Gaussian Convolution (前回の復習) • DoG (Difference of Gaussian) • Scale-space の作成 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  3. 3. Gaussian Convolution 画像の平滑化 - 画像中の細かい特徴やノイズの除去
 - 数学的には重み付き平均 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  4. 4. 二次元の Gaussian Convolution (出典: [2]) * = 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  5. 5. 離散化 離散化 (出典: [2]) 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  6. 6. 離散化 Gaussian Convolution Step 1 ⭐ 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  7. 7. 離散化 Gaussian Convolution Step 2 ⭐ 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  8. 8. 離散化 Gaussian Convolution Step 3 ⭐ 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  9. 9. 離散化 Gaussian Convolution Step m*n ⭐ m行 n列 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  10. 10. 離散化 Gaussian Convolution の式 m行 n列 s行 t列 * = m行 n列 添字は全て0からスタートするケロ [] はガウス記号だケロ G が Mi に収まらない場合について考慮していないケロ 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  11. 11. 高速化離散化 Gaussian Convolution 一次元のGaussian Convolutionを 全ての行に適用した画像 計算量: m * n * s * t → m * n (s + t) *α(k) = k - [2/s], β(l) - [2/t] 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  12. 12. 高速化離散化 Gaussian Convolution ステップ1. 一次元のGaussian Convolutionを全ての行に適用 ステップ2. ステップ1で得た画像に対して、一次元のGaussian Convolution を全ての列に適用 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  13. 13. 作ってみよう!! 1. 離散化した Gaussian Convolution を用いて
 画像を平滑化するプログラムを書いてみよう !
 
 - まずは “lenna image processing” と 
 google で検索してテスト用画像をゲット !
 
 - σ の値を任意の値に変更していつでも画像を
 平滑化できるようモジュール化してみよう ! 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  14. 14. 目次 • Gaussian Convolution (前回の復習) • DoG (Difference of Gaussian) • Scale-space の作成 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  15. 15. DoG (Difference of Gaussian) スケールの異なるガウシアンカーネルの差分 DoG * = LoG (Laplacian of Gaussian) と同様の効果 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  16. 16. キーポイント • DoG を適用した画像の集合から得られた
 極値点 (x, y, σ) の集合にさらにふるいをかけたもの • SIFT では画像からキーポイントに関する情報を
 さらに導出し画像の特徴とする 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  17. 17. DoG を画像に適用するプログラム を作ってみよう ! 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  18. 18. ちょっと待った! 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  19. 19. Q: この式を見た感想は? 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  20. 20. この式のままじゃ、 Scale-space が有効活用できないんですけど。。。 今までの苦労はどうしてくれるケロか !!! 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  21. 21. Scale-space を有効活用した DoG の 適用方法 Convolution の性質: 適用方法の導出: 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  22. 22. Scale-space を有効活用した DoG の 適用方法 Convolution の性質: 適用方法の導出: Scale-space 中に既に存在する画像 !第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  23. 23. DoG を適用した画像の求め方 Scale-space 中のG(x, y, kσ) で平滑化した画像と 
 G(x, y, σ) で平滑化した画像の差分を取るだけ !! ー それを早くいうケロ 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  24. 24. でも待って! 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  25. 25. なんでこれで エッジの抽出や強調が できるの? 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  26. 26. LoG (Laplacian of Gaussian) • 画像からエッジの強調や抽出をするために
 使用される • Gaussian kernel と Laplacian の合わせ技
 - 下記作業を一括して行うオペレータ
 1. Gaussian Kernel を画像に適用して平滑化
 2. その後 Laplacian を用いてエッジの抽出 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  27. 27. Laplacian ある点における関数の曲がり度合いを表す値
 を求めるためのオペレータ 使い方: 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  28. 28. LoG の式とグラフ 具体的な式の形が気になる人は、 Gaussian Kernel を x と y について 二回微分してみるケロ ! 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  29. 29. LoG 1次元の例 (出典: [2])第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  30. 30. LoG と DoG の関係 (出典: [1]) DoG は LoG の定数倍 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  31. 31. DoG を用いる利点 • LoG は 計算量が大きい
 - Gaussian Convolution のように x 軸と y 軸に
 分けて計算できない 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  32. 32. 作ってみよう!! • DoG が適用された画像を出力するモジュールを
 作ってみよう !!
 
 - Step 1. 
 前の演習で作った平滑化モジュールを用いて
 平滑化された画像を異なる二つのσについて出力
 
 - Step 2. 
 出力された二枚の画像の差分を出力 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  33. 33. 目次 • Gaussian Convolution • DoG (Difference of Gaussian) • Scale-space の作成 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  34. 34. Scale-space and Octave (出典: [1])第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  35. 35. SIFTのための Scale-space 作成時のパラメータ • σ0: ベースとなるσの値 (1.6) • 分割数s: 2σ0 となるまでに作る画像の個数 (3) • スケール増加率k: k = 2^(1/s) • オクターブ数: n 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  36. 36. 手順 • σ = 1.6, s = 3 として、σ, kσ, (k^2)σ, … (k^5)σ
 で平滑化された画像で Scale-space を作成 • できた Scale-space の画像を用いて DoG を適用した
 画像で構成される空間を作成 • (k^3) σ の画像を1/4の大きさにダウンサンプリング • ダウンサンプリングした画像を元に Scale-space
 をもう一つ構成する (2nd octave) 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  37. 37. 今後の予定 • 次回:
 SIFT による画像の特徴の作成 • 次次回
 SIFT で作成した特徴量を用いた物体の認識 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko
  38. 38. 参考文献 1. David G. Lowe. 2004. Distinctive Image Features from Scale-Invariant Keypoints. Int. J. Comput. Vision 60, 2 (November 2004), 91-110. 2. M. Alex O. Vasilescu: http://alumni.media.mit.edu/~maov/classes/ vision09/lect/09_Image_Filtering_Edge_Detection_09.pdf 第39回 (2015/11/28) MPS 定例ミーティング (c) Junya Kaneko

×