【連載】

機械の目が見たセカイ -コンピュータビジョンがつくるミライ

35 領域分割(2) - Mean Shift法を用いたImage Segmentation

35/37

前回、画像の領域分割(Image Segmentation)、Semantic Image Segmentationとは何かを説明しました。今回からは、もう少し詳しく説明していきたいと思います。

領域分割技術

領域分割の技術を大別すると、3つに分けることができます(著者注:この分類は一例です)。

  • 1つ目は、物体が何かは特定せずに、近傍の画素の輝度値(色)が類似している場合に同じ領域に属すると判定するものです。
  • 2つ目は、前景と背景に分類するものです。例えば、海辺に立っている人の写真で、人の領域のみを切り出したい場合は、人が前景、海や砂浜を背景として領域を分割します。
  • 3つ目は、物体の種別(人、道路、建物、空、車など)の識別と同時に、領域分割を行うものです。前回紹介したSemantic Image Segmentationがこれにあたります。

近傍の画素の輝度値と類似している場合に同じ領域に属すると判定する手法

ある1画素に注目し、注目画素とその近傍の画素の輝度値(または色)が類似していれば、同じ領域に属すると判定し同一のラベルを付与します。そして注目画素を1画素ずつシフトして同様の処理を繰り返すことで画像全体の画素にラベルを付与していきます。

OpenCVには、pyrMeanShiftFiltering()という手法が実装されています。これは関数名の通りMean Shift法を用いた手法です(参考文献[1])。この手法で領域分割した結果が図1です。同じ領域には同じ色(ラベル)が割り当てられています。机や床のタイルが複数の領域に分割されてしまっていたり、椅子がカーペットと同じ領域となってしまっています。

図1 OpenCVのpyrMeanShiftFiltering()による領域分割の例

Mean Shift法を用いたImage Segmentation

Mean Shift法の処理の概要は次の通りです(図2)。あるデータxを選択しそのxを中心とする半径hの球(超球)を考え、球内にあるデータの重心xcを求めます。このとき、重心xcはxよりも密度の高い場所に存在します。xcを x に代入し同様の処理を繰り返すと、球の中心xは 密度の極大値へ向かって収束していきます。このように重心(平均値)への移動を繰り返すことで、密度分布関数の極大値を検出する手法がMean Shift法です。

図2 Mean Shift法の概要

OpenCVに実装されているpyrMeanShiftFiltering()の処理の概要は、以下の通りです。

  1. 入力画像からL段階のピラミッド画像を作成します。ピラミッド画像のサイズは、1倍、1/2倍、1/4倍、…、1/2L-1倍となります。
  2. 注目画素の所定範囲内の画素で、かつ前回求めた色の平均値xから所定の半径以内のデータのみを抽出します。
  3. 抽出したデータから色情報の平均値xcを求め、xにxcを代入し色の平均値を更新します。

ステップ2、3を、終了条件を満たすまで繰り返します。そして最終的に求まった色情報の平均値xcが、近傍の画素で同様の処理をした際に得た平均値xcと同じだった場合に、同じ領域に属すると判定します。

そして、ピラミッド画像の解像度を上げ、同様の処理を行うことで、荒い領域分割結果から徐々に詳細な領域分割結果を生成します。

今回、紹介したOpenCVに実装されているpyrMeanShiftFiltering()という手法は、影や、テクスチャなどによって過剰に分割されるケースや、領域が結合されてしまうケースが頻繁に発生します。領域分割が正しくない場合に、領域の外接矩形で切り出した画像中に写っている物体を機械学習により識別しようとしても、正しく物体の種別を識別することができません。この手法を用いるときは、照明条件が一定で撮像対象が既知の場合や、他の処理の前処理などが良いと思います。

参考文献

[1] Comaniciu, D., Meer, P. Mean Shift: A Robust Approach Toward Feature Space Analysis. IEEE Transaction on Pattern Analysis and Machine Intelligence, 603-619, (2002).

著者プロフィール

樋口未来(ひぐち・みらい)
日立製作所 日立研究所に入社後、自動車向けステレオカメラ、監視カメラの研究開発に従事。2011年から1年間、米国カーネギーメロン大学にて客員研究員としてカメラキャリブレーション技術の研究に携わる。

日立製作所を退職後、2016年6月にグローバルウォーカーズ株式会社を設立し、CTOとして画像/映像コンテンツ×テクノロジーをテーマにコンピュータビジョン、機械学習の研究開発に従事している。また、東京大学大学院博士課程に在学し、一人称視点映像(First-person vision, Egocentric vision)の解析に関する研究を行っている。具体的には、頭部に装着したカメラで撮影した一人称視点映像を用いて、人と人のインタラクション時の非言語コミュニケーション(うなずき等)を観測し、機械学習の枠組みでカメラ装着者がどのような人物かを推定する技術の研究に取り組んでいる。

専門:コンピュータビジョン、機械学習

35/37

インデックス

連載目次
第37回 コンピュータビジョン分野で活躍する企業・フリーランサー インタビュー(3)
第36回 領域分割(3) - CRFを用いたSemantic Image Segmentation
第35回 領域分割(2) - Mean Shift法を用いたImage Segmentation
第34回 領域分割(1) - 概要編
第33回 見えないものを観る(3) - 目に見えない光「赤外線」を観る
第32回 見えないものを観る(2) - 絵画の下書きを観る
第31回 見えないものを観る(1) - 映像から音を復元する
第30回 動く人・物を追跡する(4) - OpenCVのトラッキング手法(後編)
第29回 動く人・物を追跡する(3) - OpenCVのトラッキング手法(中編)
第28回 動く人・物を追跡する(2) - OpenCVのトラッキング手法(前編)
第27回 動く人・物を追跡する(1) - OpenCVによるトラッキング
第26回 インターネット上の画像群からTime-lapse映像を自動生成する手法の概要
第25回 一人称視点(3) - Social Saliency
第24回 一人称視点(2) - Social Interaction
第23回 一人称視点(1) - 概要
第22回 行動認識(3) - Two-stream ConvNets
第21回 行動認識(2) - 動きの特徴量(HOF、MBH)
第20回 行動認識(1) - Dense Trajectories
第19回 視線計測(3) - カメラのみを用いた視線計測
第18回 視線計測(2) - 近赤外の点光源を用いた視線計測
第17回 視線計測(1) - 導入編
第16回 コンピュータビジョン分野における機械学習(4) - Deep Learning
第15回 コンピュータビジョン分野における機械学習(3) - 識別器
第14回 コンピュータビジョン分野における機械学習(2) - 顔検出・人検出
第13回 コンピュータビジョン分野における機械学習(1) - 導入編
第12回 コンピュータビジョン分野の市場分析(1) - 自動車編
第11回 コンピュータビジョン分野で活躍する企業・フリーランサー インタビュー(2)
第10回 カメラを用いた3次元計測(4) - Structure from Motion
第9回 カメラを用いた3次元計測(3) - サブピクセル推定
第8回 カメラを用いた3次元計測(2) - ステレオカメラ
第7回 コンピュータビジョン分野で活躍する企業・フリーランサー インタビュー(1)
第6回 カメラを用いた3次元計測(1)
第5回 意外と知らないカメラキャリブレーション
第4回 ハードウェアの基礎知識
第3回 コンピュータビジョンの要素技術と応用範囲(後編)
第2回 コンピュータビジョンの要素技術と応用範囲(前編)
第1回 普及期に入ったコンピュータビジョン

もっと見る



人気記事

一覧

イチオシ記事

新着記事