HOG特徴量 (G検定)

HOG特徴量

1. 定義と概要

HOG特徴量(Histogram of Oriented Gradients、勾配方向ヒストグラム)とは、人があらかじめ計算手順を設計した画像特徴量(データの特徴を数値で表したもの)の一つです。画像を小さな領域に区切り、各領域内で明るさが変化する向きを集計した表を、その画像の特徴として扱います。

ダラール(Dalal)氏とトリッグス(Triggs)氏が2005年のCVPR(コンピュータビジョン分野の国際会議)で発表した手法です。輪郭の向きの分布から物体の形状を捉えられる点を生かし、人物検出(歩行者検出)への応用を主眼として提案されました。

ディープラーニングが登場する以前の画像認識では、どの特徴に着目するかをあらかじめ人間が設計する必要があり、HOGはその代表例でした。照明変化やある程度のスケール変化には頑健である一方、回転には弱く、対象の姿勢変化や部分的な隠れであるオクルージョン(対象物の一部が別の物体や画角外に隠れて見えなくなること)が大きい場合には精度が低下する制約がありました。

流れが変わったのは2012年のAlexNet(画像認識コンペティションで従来手法を大きく上回る性能を示し、深層学習の実力を知らしめた代表的なCNNモデル)の登場です。以降、CNN(畳み込みニューラルネットワーク、画像の特徴を自動的に学習する、フィルタを使った深層学習のモデル)がデータから特徴量そのものを学習する方式が主流になりました。その結果、HOGのように人が計算手順を設計する特徴量は徐々に置き換えられていきました。

2. 試験対策ポイント

G検定では、HOGの計算手順とその流れが重要な論点になります。手順は大きく4つの段階に分かれ、順に追うと次のようになります。

段階 処理の中身
1 セルに分割 画像を格子状のセル(画像を細かく区切った小さな正方形の領域)に分ける
2 輝度勾配を求める 各セル内の画素の輝度勾配(隣り合う画素同士の明るさの差から、明るさが変化する向きと強さを表した値)を計算する
3 ヒストグラム化 勾配の向きを9方向に量子化(連続的な角度を、あらかじめ決めた区切りに振り分けて数える処理)し、セルごとにヒストグラム(値の範囲ごとの個数や大きさを棒グラフの形で集計したもの)を作る
4 正規化して結合 複数のセルをまとめたブロック(複数のセルをまとめた、より大きな単位の領域)ごとにヒストグラムを正規化(明るさやコントラストの違いによる影響を抑えるため、数値を一定の範囲にそろえる処理)し、すべてを結合して1つの特徴量ベクトルにする

前半でセルごとの向きの分布を作り、後半でブロック単位にそろえてから1本のベクトルにまとめる流れです。とくに、ブロック単位の正規化が照明変化やコントラストの違いによる影響を抑える役割を担っている点は、各段階の意味を混同しやすい部分です。

応用としては、HOG特徴量と線形SVM(サポートベクターマシン、データを2つのグループに分ける境界線を引いて分類する機械学習の手法)を組み合わせた人物検出(歩行者検出)がセットで扱われます。

処理の流れとしては、スライディングウィンドウ(画像上のさまざまな位置・大きさの枠を機械的にずらしながらしらみつぶしに走査する検出方式)方式で画像内のさまざまな位置・大きさを走査して候補領域を切り出します。各候補領域から抽出したHOG特徴量を線形SVMに入力し、人物か否かを判定します。

G検定では、HOGは人間があらかじめ特徴量を設計していた時代の代表例として位置づけられ、CNNがデータから特徴量そのものを自動的に学習する方式との対比で扱われます。この対比は取り違えやすい点です。あわせて、照明変化やスケール変化には頑健な一方で回転には弱く、姿勢変化やオクルージョンが大きい場合に精度が下がるという限界も見落としやすいポイントです。

3. 関連概念との比較・相違点

HOGは、同じ画像から特徴を取り出す手法どうしで混ざりやすいところがあります。比較対象ごとに、着目する単位と特徴量の作り方を並べると次のように整理できます。

比較対象 特徴量の作り方 着目する単位
HOG 人が設計した計算手順で輝度勾配の向きをヒストグラム化 格子状のセルとブロックで領域を密に集計
CNN 畳み込み層のフィルタの重みを学習データから自動的に獲得 学習によって獲得したフィルタが反応する部分
SIFT 拡大縮小や回転に頑健な局所特徴量を抽出 画像中の特徴的な点であるキーポイント

CNNとの最大の違いは、特徴量の作り方にあります。人が計算手順を設計するか、データから自動的に学習するかという対比が、この2つを比較するうえでの軸になります。

SIFT(画像内の特徴的な点に着目して、拡大縮小や回転に強い特徴量を抽出する手法)との違いは、着目する単位にあります。HOGは画像を格子状のセルとブロックに区切って密に勾配を集計するため、物体の輪郭全体の形状を捉えやすい半面、回転には弱いという特性があります。点に着目するか、領域全体を密に集計するかという違いが、両者を使い分けるうえでの判断材料になります。

4. ビジネス・実務での活用シナリオ

自動車のADAS(先進運転支援システム)分野では、車載カメラの映像から歩行者候補領域のHOG特徴量を抽出する歩行者検知システムが使われてきました。抽出した特徴量を線形SVMに入力して人物か否かを判定するこの手法は、ディープラーニングが普及する以前の実用例として広く採用されました。

現在はCNNベースの物体検出モデルに置き換わっている領域が多いものの、HOGとSVMの組み合わせは比較的軽量な処理で動作するため、限られた計算資源で歩行者検知を行う用途の土台として位置づけられています。

防犯・監視カメラの分野でも、映像内の人物候補をHOGとSVMの組み合わせで検知する手法が使われています。この手法は演算負荷が比較的軽く、計算資源が限られる機器でも動作する実装として採用されました。常時稼働が前提となる監視システムにとって、負荷の軽さは重要な要件のひとつでした。

研究・教育の分野では、HOGが計算過程を数式やヒストグラムで追いやすく、特徴量設計の考え方を学ぶ教材として使われ続けています。画像処理ライブラリのOpenCV等に組み込まれた人物検出器も、その一例です。計算の各段階を追える透明性は、特徴量を自動的に学習するCNNとは対照的な学びの入り口としても位置づけられています。

5. 要点まとめ

  • HOG特徴量は画像を格子状のセルに分割し、各セルの輝度勾配の向きを9方向に量子化してヒストグラム化し、ブロック単位で正規化してから結合した、人が設計した画像特徴量です。
  • ダラール氏とトリッグス氏が2005年に提案し、線形SVMと組み合わせた歩行者検出(人物検出)への応用が代表例として扱われます。
  • CNNが特徴量そのものをデータから自動的に学習するのに対し、HOGは人間があらかじめ計算手順を設計する特徴量であり、深層学習以前の画像認識を代表する手法として位置づけられます。

6. 確認問題

問1HOG特徴量は、画像を格子状のセルに分割し各セル内の輝度勾配の向きをヒストグラム化した後、複数セルをまとめたブロック単位で正規化して特徴量ベクトルを作成する。

解答・解説をみる

○ 正しい

HOGの計算手順そのものを説明した記述です。ブロック単位の正規化によって、照明変化やコントラストの違いによる影響を受けにくくしています。

問2HOG特徴量は、ダラール氏とトリッグス氏が2005年に提案し、線形SVMと組み合わせた歩行者検出(人物検出)への応用で広く知られている。

解答・解説をみる

○ 正しい

2005年のCVPR(コンピュータビジョン分野の国際会議)で発表された手法です。スライディングウィンドウで走査した候補領域のHOG特徴量を線形SVMに入力し、人物か否かを判定する用途で広く使われました。

問3HOG特徴量は、CNNと同様にデータから特徴量そのものを自動的に学習する手法である。

解答・解説をみる

× 誤り

正しくは、HOGは人間があらかじめ計算手順を設計する特徴量であり、CNNのように学習データから特徴量を自動的に獲得するわけではありません。両者を同一視する記述は、取り違えやすい典型です。