画像認識 (G検定)

画像認識

1. 定義と概要

画像認識とは、コンピュータが画像や動画データを解析し、そこに何が写っているか、どこにあるか、どのような状態かを判別する技術の総称です。含まれる処理の例として、写真に写る物体の種類を当てる処理、道路上の歩行者や車の位置を検出する処理、写っている領域を画素単位で塗り分ける処理、人物の関節位置を推定する処理などが挙げられます。

これらはいずれも、カメラやセンサーで取得した画像データを入力として、コンピュータが判別結果を出力する点で共通しています。判別の対象や粒度が異なるだけで、根っこにある考え方は共通しているところです。

従来、この分野では人がHOG特徴量(画像の明るさの変化の向きと強さを数値化した特徴量)のような特徴量を設計し、それを機械学習モデルに入力する方式が主流でした。認識したい対象や撮影条件が変わるたびに、どの特徴量を使うかを人が考え直す必要があったとされています。

転機の一つとされるのは2012年のILSVRC(大規模な画像データセットを使って画像認識の精度を競う国際コンペティション)です。CNNを用いたAlexNet(このコンペティションで優勝し、CNNが画像認識に優れた性能を発揮することを示した先駆的なモデル)が、従来手法を大きく上回る精度で優勝しました。以降はCNNをベースにしたディープラーニングが、画像認識の中心的な技術になっています。

2. 試験対策ポイント

まず整理したいのは、画像認識AIに含まれる4つの主要タスクの違いです。判別の粒度と出力の形で並べると、次のように整理できます。

タスク 出力の粒度
一般物体認識(画像全体に対して「何が写っているか」のラベルを1つ出力するタスク) 画像1枚につきラベル1つ
物体検出(物体ごとに位置とラベルを出力するタスク) バウンディングボックス(物体の位置を囲む四角形の領域)と呼ばれる枠ごとに位置とラベル
セグメンテーション(画像を構成する画素ひとつひとつにラベルを割り当てるタスク) 画素ごとにラベル
姿勢推定(人物の関節の位置を推定するタスク) 人物の関節の座標

画像全体をまとめて見るのか、物体ごとに枠で囲むのか、画素まで踏み込むのかという粒度の差が、そのまま4つのタスクの違いになっています。姿勢推定は人の骨格の動きを捉える点で、他の3タスクとは出力の性質が異なります。

出力形式が異なるため、同じ画像データを扱う場合でも、目的に応じて採用するタスクの選び方が変わってきます。この違いをあわせて整理しておきたいところです。

CNNの内部構造としては、畳み込み層(画像にフィルタをかけてエッジや模様などの特徴を検出する層)の役割を理解しておきたいところです。畳み込み層の出力である特徴マップ(畳み込み層の演算結果として得られる、特徴の分布を表すデータ)を縮小し、重要な情報だけを残すのがプーリング層(特徴マップを縮小して重要な情報だけを残す層)の役割です。

畳み込み層とプーリング層を何段も重ねることで、単純な模様から複雑な形状まで段階的に特徴を捉えられるようになります。浅い層で捉えた線や模様のような手がかりが、層を重ねるにつれて物体らしい形へとまとまっていくイメージです。

代表的なモデルの系譜としては、先述のAlexNetに続き、VGG・GoogLeNet・ResNet(AlexNet以降に登場した、CNNをベースとする代表的な画像認識モデル群)が挙げられます。これらのモデルの構造がどのように発展してきたかを知る手がかりになります。層の数や接続の仕方といった構造の工夫を重ねることで、精度が段階的に高められてきた経緯があります。

限られたデータで精度を高める工夫としては、データ拡張(回転や反転などで元の画像に変換を加え、学習データを水増しする手法)や転移学習(別のタスクで学習済みのモデルの知識を新しいタスクに転用する手法)が代表的です。

実務では十分な量の学習データを集めにくい場面が少なくなく、こうした工夫は限られたデータでも精度を確保する手立てとして、あわせて押さえておきたいポイントです。データを増やす工夫と、既存の知識を転用する工夫という、性質の異なる2つのアプローチにあたります。

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

一般物体認識・物体検出・セグメンテーション・姿勢推定という個々のタスクとの最大の違いは、画像認識がこれら4タスクを束ねる総称であるという点にあります。それぞれのタスクは出力形式によって区別され、ラベルのみを出す一般物体認識、位置とラベルを組み合わせて出す物体検出、画素単位でラベルを出すセグメンテーション、関節座標を出す姿勢推定という具合に、目的に応じて使い分けられます。

どのタスクを選ぶかによって、必要な計算量や求められる出力の細かさも変わってきます。個々のタスクの詳細な仕組みは、それぞれ別のテーマとして掘り下げられることが多いところです。

従来型の画像処理との最大の違いは、特徴量を人が設計するか、CNNがデータから自動的に学習するかという違いにあります。HOG特徴量に代表される従来手法では、画像のどこに着目すべきかを人があらかじめ定義していました。一方でCNNをベースとした手法は、畳み込み層とプーリング層を積み重ねる過程で、どの特徴に着目すべきかをモデル自身がデータから学習します。

この違いにより、対象や撮影条件が変わっても人が特徴量を設計し直す手間が減り、認識精度や汎用性の差につながっているとされています。設計する側から、データに語らせる側へと重心が移った変化といえます。

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

製造業では、生産ラインに設置された外観検査カメラが、画像認識によって製品表面の傷や汚れを検出する事例が広がっています。人による目視検査には集中力の限界や個人差が伴いますが、画像認識を組み合わせることで、検査の見落としを減らしながら検査工程を補完できます。24時間稼働するラインでも一定の基準で検査を続けられる点が、この技術が求められる理由の一つです。

医療の分野では、CTやMRIの画像を画像認識で解析し、病変の疑いがある領域を医師の読影支援として提示する取り組みが進められています。膨大な画像データの中から異常が疑われる箇所を絞り込めるため、医師が診断そのものに集中しやすくなります。見落としのリスクを減らしながら診断の質を支える役割が期待されている分野です。読影という専門性の高い作業の負荷を、技術面から補う関わり方といえます。

小売・物流の分野では、店舗内カメラの映像から来店客の動線や商品の陳列状態を画像認識で捉え、需要予測や棚卸しの効率化に活用する動きがあります。人の目では追い切れない店内全体の状況を数値データとして把握できる点が、この分野で画像認識が使われる理由です。得られたデータを在庫管理や売り場づくりに反映させることで、日々の運用改善につなげる動きも見られます。

5. 要点まとめ

  • 画像認識は画像・動画から「何が」「どこに」「どんな状態で」写っているかを判別する技術の総称で、G検定ではCNNを中心としたディープラーニングの応用分野として扱われます。
  • 一般物体認識・物体検出・セグメンテーション・姿勢推定という4つの主要タスクは、出力形式の違いで区別されます。
  • 特徴量を人が設計する従来手法から、CNNが特徴を自動的に学習する手法への転換が、精度向上の背景にあります。

6. 確認問題

問1画像認識は、一般物体認識・物体検出・セグメンテーション・姿勢推定など複数のタスクを含む総称である。

解答・解説をみる

○ 正しい

画像認識は特定の1タスクだけを指す言葉ではなく、複数のタスクをまとめた総称にあたります。それぞれのタスクが出力形式で区別される点も、あわせて整理しておきたいところです。

問2物体検出タスクは、画像内の物体の位置を求めず、画像全体に対して1つのクラスラベルを出力する。

解答・解説をみる

× 誤り

画像全体に1つのラベルを出力するのは一般物体認識の説明にあたります。正しくは、物体検出は物体ごとに位置(バウンディングボックス)とクラスを同時に推定する点で、一般物体認識とは異なります。

問32012年のILSVRCでCNNを用いたモデルが従来の特徴量設計型の手法を大きく上回る精度を示したことは、画像認識におけるディープラーニング普及の転機の一つとされる。

解答・解説をみる

○ 正しい

AlexNetの優勝がこの転機として知られており、以降はCNNをベースとした手法が画像認識の中心的な技術になっています。