インスタンス・セグメンテーションとは

共同執筆者

Dave Bergmann

Senior Writer, AI Models, IBM

Cole Stryker

Editorial Lead, AI Models

インスタンス・セグメンテーションとは

インスタンス・セグメンテーションとは、画像内の個々のオブジェクト・インスタンスの正確なピクセル単位の境界を予測する、ディープラーニングを用いたコンピューター・ビジョン・タスクの1つです。

インスタンス・セグメンテーションは、画像セグメンテーションにおけるより大きな分野のサブセットであり、従来の物体検出アルゴリズムよりも詳細で洗練された出力を提供します。その他の画像セグメンテーション・タスクとして、セマンティック・セグメンテーションがあります。これは、画像の各ピクセルを意味クラス、つまりそれが表す「Thing」または「Stuff」などのカテゴリーで分類するものです。また、パノプティック・セグメンテーションは、インスタンス・セグメンテーションとセマンティック・セグメンテーションを組み合わせた方法です。

インスタンス・セグメンテーションには、医療画像の解析から衛星画像内の対象オブジェクトの検出、自動運転車のナビゲーションの有効化に至るまで、さまざまな業界における画像処理に幅広く用いられています。

インスタンス・セグメンテーションと物体検出の比較

インスタンス・セグメンテーション・タスクと従来の物体検出との主な違いは、インスタンス・セグメンテーションは各オブジェクトのピクセル・レベルの境界を予測するのに対し、物体検出はオブジェクトのおおよその位置のみを予測することです。

従来の物体検出方法は、画像分類と物体位置特定を発展的に組み合わせたものです。さまざまな機械学習アルゴリズムで訓練され、関連するカテゴリーのオブジェクトの視覚的なパターンを認識します(たとえば、自動運転モデルは「車」や「歩行者」などを認識するようにトレーニングされます)。物体検出モデルは、入力画像の視覚データを分析して、関連するオブジェクト・インスタンスに注釈を付け、「バウンディング・ボックス」と呼ばれる矩形の領域を生成します。そこに各インスタンスが配置されます。

インスタンス・セグメンテーション・システムも同様に、画像内のオブジェクトを検出しますが、より詳細に検出します。インスタンス・セグメンテーション・アルゴリズムは、オブジェクト・インスタンスの位置に近づけるバウンディング・ボックスではなく、各インスタンスの正確な形状と面積であるピクセル単位の「セグメンテーション・マスク」を生成します。

Mask R-CNNなどの主要なインスタンス・セグメンテーション・モデル・アーキテクチャーの多くは、セグメンテーション・マスクを生成するプロセスの前段階として従来の物体検出を実行します。このような「2段階」モデルは通常、速度は劣るものの、最先端の精度を提供します。

トラック上を転がるボールの3Dデザイン

最新のAIニュース + インサイト 


AIやクラウドなどについて、専門家が厳選したインサイトやニュースを、Thinkニュースレターで毎週お届けします。

インスタンス・セグメンテーションとセマンティック・セグメンテーションの比較

セマンティック・セグメンテーション・タスクは、インスタンス・セグメンテーションほど複雑ではありません。インスタンス・セグメンテーションとは異なり、セマンティック・セグメンテーションは、異なるインスタンスを数えたり区別したりしません。セマンティック・セグメンテーションの唯一の目的は、画像内の各ピクセルにセマンティック・クラス・ラベルで注釈を付けることです。

セマンティック・セグメンテーション・モデルは、Thing(「car」や「person」のような明確な形状を持つ数えられるエンティティーのクラス)と、Stuff(「sky」や「road」のような可変の形状を持つ数えられないエンティティーのクラス)を区別しません。

同じクラスの「Thing」の複数のオブジェクト・インスタンスが互いに近接しているか、互いに重なり合っている場合、セマンティック・セグメンテーション・モデルでは、それらを単一の画像セグメント内にグループ化するだけです。例えば、セマンティック・セグメンテーション・モデルでは、この画像内の道路の両側に密集して駐車している車がどのように処理されるかを考えてみてください。

逆に、インスタンス・セグメンテーション・モデルは、個々の「Thing」のセグメンテーション・マスクの検出と生成にのみ焦点を当てます。インスタンス・セグメンテーション・モデルでは、同じクラスのオブジェクトが密集したインスタンスであっても、それぞれの異なるオブジェクト・インスタンスを描写できる必要があります。

インスタンス・セグメンテーションとパノプティック・セグメンテーションの比較

パノプティック・セグメンテーションには、画像内のすべてのピクセルの意味的分類と、それぞれの異なるオブジェクト・インスタンスの描写の両方が含まれます。

パノプティック・セグメンテーション・モデルは、理論的にはインスタンス・セグメンテーションを実行できますが、(その出力には、インスタンス・セグメンテーション・タスクに必ずしも関連するとは限らない追加情報が含まれるため)はるかに大きな計算コストがかかります。

パノプティック・セグメンテーションの初期の試みでは、単純にインスタンス・セグメンテーションとセマンティック・セグメンテーションの両方を別々に行い、後処理の段階でそれらの出力を組み合わせていました。この方法は計算効率が低く、セマンティック・モデルからのデータ出力とインスタンス・モデルからのデータ出力の不一致を解決するのに苦労することになります。

最近のアプローチでは、セマンティック・セグメンテーションの「ヘッド」とインスタンス・セグメンテーションの「ヘッド」を、特徴抽出のための共有「バックボーン」(多くの場合、Feature Pyramid Networks(FPN))に接続し、関連する視覚データを分離します。これにより、効率が向上し、不一致が解消されます。

インスタンス・セグメンテーションのユースケース

インスタンス・セグメンテーションは、さまざまなコンピューター・ビジョン・タスクに不可欠です。

  • 医用画像処理:インスタンス・セグメンテーションは、腫瘍のような組織や病理の特定の境界を検出するために使用される。
  • 自動運転:インスタンス・セグメンテーションにより、自動運転車は車、物体、人、道路の特徴(信号機など)を正確に検出し、分類することができる。
  • 衛星画像:インスタンス・セグメンテーションは、GPS向けに道路沿いの複数の建物を区別するなど、対象オブジェクトの識別と分離に役立つ。
  • ロボティクス:インスタンス・セグメンテーションにより、物品の分類や欠陥の検出が可能になる。また、自動運転車と同様に、ロボットが環境内のオブジェクトを識別し、それを避けて移動できるようにする。
Mixture of Experts | ポッドキャスト

AIを解読する:1週間のニュースのまとめ

エンジニア、研究者、製品リーダーなど、世界をリードするパネリストがAIに関する最新のニュースとインサイトをお届けします。

インスタンス・セグメンテーションはどのように機能するのか

ディープラーニングはインスタンス・セグメンテーションに欠かせないものとなっています。最新の画像セグメンテーション手法のほとんどすべてがニューラル・ネットワークを利用しています。近年、Transformerモデルが実行可能な代替手段として登場していますが、ほとんどの画像セグメンテーション手法(インスタンス・セグメンテーションに使用されるものを含む)は、何らかの形式の畳み込みニューラル・ネットワーク(CNN)を利用しています。

CNNベースのインスタンス・セグメンテーション・モデルは、次の2つのカテゴリーに分類されます。

  • Mask R-CNNのような2段階モデルでは、最初に物体検出を実行し、次にオブジェクト・セグメンテーション・マスクを生成する。
  • YOLACTのようなワンショット(またはシングル・ステージ)モデルは、両方のタスクを並行して実行する。

CNNベースのインスタンス・セグメンテーション・モデルも、Transformerベースのインスタンス・セグメンテーション・モデルも、エンコーダー・デコーダー構造を採用しています。これは、エンコーダー・ネットワークが入力画像から関連データを抽出し、デコーダー・ネットワークがその抽出された特徴データを使用して、セグメンテーション・マップで画像を再構成するというものです。

インスタンス・セグメンテーション・モデルを理解するには、それを構成する部分を理解することが役立ちます。

畳み込みニューラル・ネットワーク(CNN)

単純なCNNは、画像分類と(単一のオブジェクトを含む画像の場合は)物体分類を実行できます。

数学的アルゴリズムと画像が互換性を持つためには、画像を数値形式で表現する必要があります。CNNは、RGB入力画像をピクセルの3次元(3D)配列として処理します。ピクセルの3次元は、それぞれR(ed)、G(reen)、および (B)lueという値を表します。

従来のCNNには、次の3種類の層があります。

  • 畳み込み層 は、カーネルと呼ばれる2次元フィルターを使用し、畳み込みを実行することで画像から関連する特徴を抽出する。畳み込みを実行するたびに、カーネルは隣接する領域に移動(ストライド)し、画像全体を走査するまでこのプロセスを繰り返す。この特徴抽出の出力は、特徴マップである。

  • プーリング層は、特徴マップ・データを圧縮する。このプロセスは、ダウンサンプリングまたは次元削減とも呼ばれており、計算効率を高め、モデルのトレーニングにおける 過学習(オーバーフィッティング)のリスクを軽減する。

  • 全結合層は、ニューラル・ネットワーク内のすべてのノードから視覚データを受信して照合(つまり「全結合」)し、画像と、その画像が認識するようにトレーニングされたカテゴリーが一致するかどうかを予測する。

畳み込み層を追加すると精度は向上しますが、層を増やしすぎると勾配が消えてしまい、モデルの最適化ができなくなります。ResNetアーキテクチャーはこの問題を解決し、数百(または数千)の層を持つCNNへの道を開きました。

領域ベースのCNN(R-CNN)

R-CNNは、標準的なCNNでは達成できないマルチクラスの物体検出タスクを解決するために開発されました。後に進化したFaster R-CNNは、多くのインスタンス・セグメンテーション・モデルに不可欠なコンポーネントです。

(画像レベルではなく)オブジェクト・レベルで予測を行うために、R-CNNは領域提案を導入しました。R-CNNは選択的検索を使用して、オブジェクトを含む可能性のある重なり合った約2,000個のボックスを提案し、次にそれぞれの「物体提案」をCNNに送り込んで特徴抽出を行います。次に、サポート・ベクター・マシン(SVM)アルゴリズムがオブジェクトを分類し、バンディング・ボックスを生成します。

Fast R-CNNは、まず画像全体をCNNに送り込んで特徴抽出を行い、次に得られた特徴マップを使って関心領域(ROI)を特定することで、R-CNNの速度を劇的に向上させました。その後まもなく、Faster R-CNNは、トレーニング可能なResion Proposal Network(RPN)を導入し、低速でトレーニング不可能な選択的検索アルゴリズムに取って代わることで、速度と精度をさらに向上させました。

完全畳み込みネットワーク(FCN)

FCNは、単純なCNNの固定された全結合層を、追加の畳み込み層とプーリング層で置き換えます。これにより、「完全畳み込み」になります。FCNの登場により、現代の画像セグメンテーションの時代が到来しました。

従来のCNNと同様に、FCNは特徴抽出とダウンサンプリングにResNetやVGGなどのエンコーダー・ネットワークを使用します。しかし、FCNは画像全体を分類するために、エンコードされたデータを全結合層に渡すのではなく、「デコーダー」ネットワークの層を通してエンコードされたデータを渡します。デコーダー・ネットワークでは、圧縮された特徴データが分類およびアップ・サンプリングされ、ピクセル単位のセグメンテーション・マスクで元の画像が再構成されます。

当然、ダウンサンプリングの過程で失われるデータもあります。U-Netのような、その後に登場したFCNのバリエーションでは、より詳細な情報を保持するために、いくつかの畳み込み層を選択的にバイパスするスキップ接続が導入されました。

Mask R-CNN

Mask R-CNNアーキテクチャーは、Faster R-CNNの物体検出とFCNのセグメンテーション機能を組み合わせて、インスタンス・セグメンテーションにおける画期的な進歩を実現しました。

RPNが提案されたオブジェクトのバウンディング・ボックスを生成し、残りのFaster R-CNNネットワークが、どの領域提案にオブジェクトが含まれるのかを確認した後(そして、回帰を実行して、オブジェクトのバウンディング・ボックスの精度を向上させた後)、FCNはそれぞれのバウンディング・ボックスに含まれるオブジェクトのセグメンテーション・マスクを作成します。

Faster R-CNNネットワークは、各オブジェクト・インスタンスが個別にセグメンテーションされるようにそれぞれ区別できるため、このプロセスは、オブジェクトが密集している場合でも効果的です。

ワンショット(シングル・ステージ)モデル

製造組立ラインでの欠陥品の検出など、特定の用途のインスタンス・セグメンテーションでは、リアルタイムの結果が必要です。シングル・ステージ・モデルは、速度が最優先されるユースケース向けに開発されました。

Mask R-CNNのような2段階モデルでは、精度は高くなりますが、本質的に逐次的なアプローチを高速化することは困難です。YOLACT(You Only Look At Coefficients)のようなワンショット・インスタンス・セグメンテーション・モデルは、代わりにYOLO(You Only Look Once)のようなシングル・ステージの物体検出モデルをベースにして構築されています。

YOLACTでは、FPNが高解像度の特徴マップを作成し、それを2つの並列ブランチに供給します。FCNブランチは、潜在的なオブジェクト・インスタンスのk個の「プロトタイプ・マスク」を提案します。同時に、全結合層の分岐により、領域提案に似た多くの「アンカー・ボックス」が生成され、k個の「マスク係数」(プロトタイプ・マスクごとに1つ)も予測されます。これは、提案されたオブジェクトが、提案されたセグメンテーション・マスクと一致する可能性を表します。最も高いマスク係数を持つ提案されたインスタンスをフィルタリングするために、非極大値抑制(NMS)が使用されます。

6.Transformerモデル

インスタンス・セグメンテーションやパノプティック・セグメンテーションにおける最近のイノベーションでは、自然言語処理などの分野での成功に触発されて、Transformerモデルが研究されています。Vision Transformer(ViT)のようなモデルは、畳み込みの代わりにSelf-Attentionを使用し、画像の視覚的コンテキストの全体的な分析を可能にしています。

克服すべき主な課題は、計算量でした。Self-Attentionの計算の複雑さは画像サイズに応じて二次関数的に増加します。Swin Transformerは、(従来のスライディング・ストライドの代わりに) Shifted Windowを使用して、重なり合わないSelf-Attentionを作成します。これで、計算の複雑さは画像サイズに比例して二次関数的ではなく、線形関数的に増加することになります。Swinベースのモデルは、今や主要なCNNベースのフレームワークの精度に匹敵しています。

トレーニング・インスタンス・セグメンテーション・モデル

インスタンス・セグメンテーションに使用される、ディープラーニング・アルゴリズムなどの機械学習アルゴリズムには、トレーニングが必要です。CNNベースのモデルもTransformerベースのモデルもバックプロパゲーションでトレーニングされます。モデルは、注釈付きのトレーニング画像をリバース・エンジニアリングして、当面のタスクに対して適切な重みとバイアスを学習します。

トレーニング・データの注釈は、適切な機械学習を最大限に利用し、トレーニングされたモデルを評価および最適化するために、非常に正確である必要があります。人間の能力は最も正確なコンピューター・ビジョン・モデルをもはるかに超えているため、この注釈は手作業で行われ、コストと労力のかかるプロセスです。

カスタム・データセットの時間とコストを回避するために、ほとんどのモデルは大規模なオープンソース・トレーニング・データセットを利用するか、事前トレーニングされたエンコーダー・ネットワークをより具体的な視覚タスクに合わせて微調整します。一般的なオープンソース画像データセットには次のものがあります。

  • COCO(Common Objects in Context):80個のThingカテゴリーと91個のStuffカテゴリーにわたる注釈付きセグメントを含む、約33万枚の画像の大規模なデータセット

  • ADE20K:MITが作成したシーン・セグメンテーション・データセット。150以上の意味クラスを持つ、20,000を超える画像が含まれている

  • Cityscapes : 都市の街路に焦点を当てた大規模なデータセット。さまざまな時間帯、季節、気象条件にわたる50都市の画像が含まれている。

インスタンス・セグメンテーション・モデルの評価

インスタンス・セグメンテーションと物体検出の性能の最も一般的な評価基準は、 Intersection over UnionIoU)とAverage PrecisionAP)です。これらの指標は通常、「COCOデータセットではAP 54.4」など、ベンチマーク・データセットに対する性能の観点から表されます。

Intersection over Union(IoU)

IoUは、Ground Truthマスクとモデルの予測値とのピクセル単位の重なりを測定し、パーセンテージまたは0~1の整数で表します。複数のインスタンスを持つ画像では、平均IoU(mIoU)が使用されます。

IoUは直感的に操作できますが、次の重要な制限があります。

  • 大雑把な予測に報酬が与えられる。セグメンテーション・マスクが大きすぎる場合でも、その中にGround Truthマスクが含まれていれば、IoUのスコアは満点の1になる。
  • 損失関数として使用できる。重なりのない悪い予測の場合(わずかにずれている場合でも、かけ離れている場合でも)、IOU=0となる。IoUは微分できないため、アルゴリズムはモデルを最適化できない。一般化和集合(またはGIoUは、IoUを修正して微分可能にする。

平均精度(AP)

APは、精度 x 再現率曲線の下の面積として計算されます。これは、真陽性(TP)、真陰性(TN)、偽陽性(FP)、偽陰性(FN)のような離散的な結果値を使用して計算される、適合率と再現率という2つの測定基準の間のトレードオフのバランスをとります。

  • 適合率は、肯定的な予測(この場合は、セグメント化されたインスタンスのピクセル)が正しい頻度を測定する:TP/(TP+FP) 。適合率には、偽陰性を返すという欠点がある。
  • 再現率は、肯定的な予測が取得される頻度を測定する:TP/(TP+FN) 。再現率には、偽陽性を返すという欠点がある。

関連性を最大化するために、多くの場合APは、特定のIoUしきい値内で計算されます。例えば、「AP50」は、IoUが50パーセントを超える予測に対してのみAPを計算します。mean Average Precision(mAP)は、計算されたすべてのしきい値にわたる平均AP値として、状況に応じて使用されます。

関連ソリューション
IBM watsonx.ai

AI開発者向けの次世代エンタープライズ・スタジオであるIBM watsonx.aiを使用して、生成AI、基盤モデル、機械学習機能をトレーニング、検証、チューニング、導入しましょう。わずかなデータとわずかな時間でAIアプリケーションを構築できます。

watsonx.aiをご覧ください。
人工知能ソリューション

業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。

AIソリューションはこちら
AIコンサルティングとサービス

AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。

AIサービスはこちら
次のステップ

AI開発ライフサイクル全体にわたる機能にワンストップでアクセスできます。使いやすいインターフェース、ワークフロー、業界標準のAPIやSDKを利用して、強力なAIソリューションを構築できます。

watsonx.aiの詳細はこちら デモを予約