画像処理 中級

画像解析と特徴抽出

中級の概要

中級では、画像から構造や特徴を抽出する解析手法を学ぶ。形態学的処理によるノイズ除去や領域操作、セグメンテーションによる領域分割、輪郭解析による形状特徴の抽出、そして HOG や Haar-like 特徴による古典的(深層学習以前の代表的)な物体検出を習得する。

なお、特徴点検出(SIFT, ORB)やカメラモデルは「画像→3D・意味理解」を扱うコンピュータビジョンの領域であり、そちらで体系的に解説している。

学習目標

  • 形態学的演算(膨張、収縮、オープニング、クロージング)を理解する
  • 画像セグメンテーションの各種手法を習得する
  • 輪郭検出・形状解析(面積、モーメント、凸包)を学ぶ
  • HOG・Haar-like 特徴による古典的な物体検出を理解する

図解:形態学的処理

原画像 ノイズあり 膨張 (Dilation) 領域が拡大 収縮 (Erosion) 領域が縮小 オープニング 収縮→膨張 小さいノイズ除去 構造要素(カーネル)を使って2値画像を操作。ノイズ除去、穴埋め、輪郭抽出に使用。
図 1: 形態学的処理(模式図) — 構造要素で2値画像を操作する。膨張は領域を拡大、収縮は縮小し、オープニング(収縮→膨張)は小さなノイズを除去する。結果の形は構造要素の形・サイズで変わる。

目次

1. 形態学的処理

2値画像の領域操作。

  • 膨張と収縮
  • オープニングとクロージング
  • 構造要素の選択
  • モルフォロジー勾配(輪郭抽出)

2. 画像セグメンテーション

領域分割の手法。

  • 閾値処理(大津の方法)
  • 領域成長法
  • Watershed アルゴリズム
  • GrabCut

3. 輪郭検出と解析

形状の特徴量。

  • 輪郭の検出と近似
  • 面積・周囲長・重心
  • 凸包とモーメント
  • 形状マッチング

4. 特徴点検出 → コンピュータビジョン

特徴点検出・記述子・マッチングはコンピュータビジョンの基盤技術であり、そちらで体系的に解説している。

コンピュータビジョン 初級 を参照

5. 物体検出(古典手法)

機械学習以前の手法。

  • HOG 特徴量
  • Haar-like 特徴
  • カスケード分類器
  • テンプレートマッチング

6. カメラモデルと幾何学 → コンピュータビジョン

カメラモデル・射影幾何学はコンピュータビジョンの基礎理論であり、そちらで体系的に解説している。

コンピュータビジョン 入門 を参照

図解:HOG 特徴量

入力画像 勾配計算 セル分割 8×8 ピクセル/セル(8×10) 方向ヒストグラム 強調セル(赤枠)のヒストグラム 90° 180° 9方向ビン(0–180°)
図 2: HOG 特徴量 — 入力画像(両腕を 45° 下げた人物シルエット)の輝度勾配を Sobel で計算する。各セルの主要な勾配方向を両矢印で示す(向きは 0–180° の符号なしなので両端に矢じり。胴体・脚の縦エッジでは勾配が水平、頭頂・肩では垂直、45° の腕では斜めになる)。次に 8×8 ピクセルのセル(8×10)へ分割する。HOG ではヒストグラムを画像全体ではなくセルごとに作るのが要で、ここでは向かって右の手のひら付近の 1 セル(赤枠=図 3 と同じセル)を強調し、そのセルの方向ヒストグラム(斜め=中心 130° のビンに集中)を示した。作り方の詳細は図 3。全セルのヒストグラムをブロック単位で正規化・連結したものが HOG 特徴ベクトルである。

セル分割の役割は、勾配の向きを「画像のどの場所に、どの向きのエッジが多いか」という局所的な分布として要約することにある。セル内の各画素について勾配の大きさ $m=\sqrt{g_x^2+g_y^2}$ と向き $\theta=\arctan(g_y/g_x)$(符号なし 0–180°)を求め、$\theta$ が入る方向ビンに大きさ $m$ を投票する(ビン境界付近は隣接する 2 つのビンへ線形に按分)。セル内 8×8=64 画素ぶんを積み上げると、そのセルの 9 次元ヒストグラムになる。これを全セルで作り、ブロックごとに正規化して連結したものが HOG 特徴ベクトルである。

1つのセル(8×8 画素) 各画素の勾配(矢印=向き・長さ=大きさ) 9 方向ビン 90° 180° 向き(0–180°)で仕分け 大きさで投票(隣接ビンへ按分) このセルのヒストグラム 10 30 50 70 90 110 130 150 170 度(方向ビンの中心)
図 3: セル内の勾配を方向ヒストグラムにする — 1 つのセル(8×8 画素)の各画素で勾配の向きと大きさを求め、向き(0–180°)で 9 方向ビンに仕分けて大きさを投票すると、そのセルの方向ヒストグラムになる。図は向かって右の手のひら付近(腕の 45° 斜めエッジ)のセルの実データで、勾配が斜め(中心 130°)のビンに集中している。

主要な手法・公式

大津の2値化

クラス間分散を最大化する閾値を自動決定: $\sigma_b^2(t) = \omega_0(t)\omega_1(t)[\mu_0(t) - \mu_1(t)]^2$

HOG 特徴量

セル内の勾配方向ヒストグラムを連結し、ブロック正規化で照明変動に頑健な特徴ベクトルを構成する。

副読本(読み物)

解析・特徴抽出の発展トピックを、図解中心にまとめた読み物。

距離変換

距離変換が「各前景画素の最近接背景までの距離マップ」だと理解し、用途を知る。

スケルトン化(細線化)

スケルトンが「形を表す1画素幅の中心軸」であり、連結性を保つことを理解する。

適応的二値化

大域閾値が照明ムラで破綻すること、局所閾値がそれを救うことを理解する。

スーパーピクセル(SLIC)

スーパーピクセルが「境界に沿った小領域への過分割」であり、処理の前段になることを理解する。

能動輪郭モデル(Snakes)

Snakesが「滑らかさと画像エッジのエネルギーを最小化する曲線」だと理解する。

マルコフ確率場と画像

MRFが「データ整合性+近傍の滑らかさ」のエネルギー最小化であることを理解する。

テクスチャ解析(GLCM と LBP)

GLCMとLBPがテクスチャを数値特徴に変える2つの代表手法だと理解する。

フーリエ記述子

輪郭をフーリエ変換すると少数の係数で形を表せ、照合に使えることを理解する。

Top-hat変換とモルフォロジー再構成

Top-hatが背景ムラ除去、再構成がマーカーからの形状復元であることを理解する。

色クラスタリングによる領域分割

色クラスタリングによる領域分割の仕組みと、色空間・kの選び方を理解する。

Hough変換

直線や円を「パラメータ空間での投票」で検出する仕組みを理解する。

前提知識

  • 初級レベルの内容(フィルタリング、エッジ検出)
  • 線形代数(固有値、行列分解)
  • 基礎的な確率・統計

よくある質問

中級の画像処理では何を学ぶか

形態学的処理(膨張・収縮・オープニング・クロージング)、画像セグメンテーション(大津の二値化・領域成長・Watershed・GrabCut)、輪郭検出と形状解析(面積・モーメント・凸包)、そして HOG・Haar-like 特徴による古典的な物体検出を扱う。特徴点検出やカメラモデルはコンピュータビジョンで扱う。

形態学的処理(モルフォロジー)とは何か

構造要素(カーネル)を使って主に二値画像の領域を操作する処理である。膨張は領域を広げ、収縮は縮める。収縮の後に膨張するオープニングは小さなノイズを除去し、膨張の後に収縮するクロージングは穴や隙間を埋める。

HOG 特徴量はどのように物体を捉えるのか

画像を小さなセルに分割し、各セル内の輝度勾配の方向ヒストグラムを作る。それをブロック単位で正規化して連結したベクトルが HOG 特徴量で、照明変動に頑健な形状(輪郭の向き)の記述になる。歩行者検出などに使われる。