一般的な細胞の画像解析の流れとは(具体例で解説)
公開:2020.09.30
「細胞画像における画像解析」にて、画像解析手法には、「マニュアルベース」「ルールベース*」「機械学習 ベース」「ディープラーニング ベース」の 4種類があるとご説明しました。ここでは、細胞画像に対する「ルールベース」の画像解析手法の基本的なプロセスを説明します。
*)ルールベースとは:AI技術を用いた画像解析技術の一つ(ここではソフトウェアで動作するものをAIと定義する)。解析者が、解析目的に寄与する細胞の形態特徴を設定(ルール設定)し、その設定により作成されたアルゴリズムによって自動的に解析すること。詳しくは、「細胞画像における画像解析」をご参照ください。
目次
1前提
画像撮影時の条件設定や解析対象内画像間のばらつきの少なさは、画像解析手法と同じくらい重要です。撮影条件の設定方法は、別ページの「画像解析に適した細胞の位相差画像撮影において留意すべきポイント」をご覧ください。
2画像解析の流れ ~ルールベースの場合~
前ページにおいて、顕微鏡で画像取得した後、統計解析するまでの流れを紹介しました(図1(上段))。この項では、図1(上段)中の画像解析プロセスと計測プロセスに焦点を絞り、ルールベースの画像解析について具体例を用いながら説明します(図1(下段))。
ルールベースの画像解析は一般的に図 2 の流れで行われ、大きく分けると、細胞の画像取得、画像解析、計測(処理された画像データを数値化するプロセス)があります。図1(上段)では、画像解析の目的を細胞のセグメンテーションとした場合の処理について説明します。セグメンテーションとは、画像中の解析対象領域(ピクセル)を指定する処理を指します。
今回は、解析対象が細胞の場合についてご説明します。
解析対象が細胞の場合、セグメンテーションの結果として、細胞が存在する画素(=ピクセル)を白色で、それ以外の背景などを黒色で表示する二値(=バイナリ)画像を作成することがゴールとなります。二値画像が得られれば、どこまでを細胞の存在領域とするかが明確になります。セグメンテーションのプロセスは大きく分けると前処理、二値化、後処理から成ります。
- 前処理
前処理は、次の二値化処理をより効果的に行う目的で、必要であれば行います。
例えば、画像の明るさを補正する、ノイズをとる、などが一般的です。 - 二値化
最も単純な二値化方法は、前処理がない状態で輝度に関して閾値(しきいち)を設定することです。一定以上(もくしは以下)は細胞の領域、それ以外は背景とするというように設定します。二値化によりグレースケール画像は白黒のピクセルのみで構成される二値のマスク画像に変換されます。 - 後処理
二値化処理した結果をそのまま利用できる場合は必要ありませんが、一般的には誤検出(=検出すべきでない対象を二値化処理で検出してしまうこと)、未検出(=検出すべき対象を二値化処理で検出しないこと)が発生します。これに対処するために後処理を行うことが一般的です。
以降の説明では、より具体的な例を用いて説明します。
3画像処理 ~二値化によるマスクの作成~
2 章でご説明したとおり、二値化の過程では画像中の解析対象を明確に指定するためにマスクを作成します。基本的なマスクの作り方は、画像の輝度のしきい値を使用する方法です。
例えば 8 bit の画像を用いてマスクを作成しようとした場合、8 bit はそれぞれのピクセルが 28=256 段階(0~255)の明るさ情報を有しているので、輝度値のしきい値は 0~255 の間で調節ができます。今、輝度値 150 以上の領域を指定してマスクを作成し、撮影画像とマスクを重ね合わせると、図 3 のようになります。
図 3 では、コロニー内の明るい部分とマスクが対応していることがわかります。しかし、バックグラウンドに写っている小さな粒々(図 3 黄矢印)や、位相差画像の性質上現れる細胞の周囲に生じたハロー(図 3 青矢印)を同時にマスクしてしまっています。また、画像全体の明るさにムラがある場合、位置によってコロニー内の明るい部分にマスクを当てるためのしきい値を変えなければならないこともあります。マスクを作成した後に正しくマスクが作成されているかを目で見て確かめることは非常に重要であり、もしマスクが意図通りに作成できていない場合は、画像全体に前処理や後処理をおこなって目的のマスクを作成します。また、解析したい対象に対して、ある画像でマスクをうまく作成できるアルゴリズムができたとしても、同じ条件で撮影した他の画像では適切に処理できないこともよく見られるケースです。特に明るさやフォーカス等の条件は撮影時にできるだけ統一し、画像ごとのばらつきを許容できる汎用性のあるアルゴリズムを作成することが求められます。
4画像処理 ~マスクの編集~
2 章でご説明したとおり、画像中の解析したい領域にうまくマスクを作成できない場合に後処理としてマスクの編集をすることがあります。前処理では撮影した画像に対して処理を加えることが多いのに対し、本章で説明する後処理では作成されたマスクに対して処理を加えることが多いです。マスク自体への操作の代表例として、下記の4 つの処理をご紹介します(図 4)。
- 膨張(Dilation)処理
その名の通り既に存在するマスクを膨張させる処理です。 - 収縮(Erosion)処理
その名の通り既に存在するマスクを収縮させる処理です。 - クロージング処理
マスクを膨張させた後収縮させる処理で、マスクに開いた穴を塞いだり、マスクとマスクの間を埋めたりする効果が期待できます。 - オープニング処理
マスクを収縮させた後膨張させる処理で、小さなマスクを取り除いたり、小さな点や細い線のようなマスクを取り除きマスク同士を分離したりするような効果が期待できます。
図 5 ではクロージング処理とオープニング処理の結果を拡大して示しています。クロージング処理をおこなうと、小さな点のように散在していたマスク同士がつながり、また、オープニング処理をおこなうと、小さなサイズのマスクは消失し、わずかにつながっていたマスク同士が分離したことがお分かりいただけるかと思います。このように、マスク間の小さな隙間を埋めたい場合にはクロージング処理、つながってほしくないマスクが細い線でつながってしまった場合はオープニング処理を使用することでマスクを目的の形状へ編集します。クロージング(10)等の数値は各処理のパラメータを表しており、処理の強さに関連しています。各処理のパラメータは画像解析ソフトによって調整することができ、目的に応じて最適な値を指定します。
マスク編集方法の応用として、複数のマスクを利用して 1 つのマスクを作成するものがあります(図 6)。これは、1 つのマスクでは解析対象をうまくマスクできない場合等に用いる操作です。例えば、蛍光物質 A、B が光っている画像中の領域をそれぞれ抽出するマスクを作成し、マスクが重なった部分のみに存在するマスクを新たに作成すれば、蛍光物質が共局在している位置を表すマスクを作成できます(図 6 - ii)。他にも、膨張させたマスクから膨張させる前のマスクを減算(subtract)することで、マスクの輪郭を抽出することができます(図 6 - iv)。以上のように、工夫次第でさまざまな応用が可能となります。
5マスクの計測(セグメンテーション結果の数値化)
マスクされた領域は、さまざまな数式を用いて数値化することにより、その特徴を数値で表現することができます。表現できる特徴の代表例には以下があります。
- 面積
- 形状
- 輝度
- 移動度(タイムラプス撮影の場合)
個別の細胞の観察対象領域を表現する際によく使われる計測項目について、①面積、②形状の一例を図 7 に示します。マスクが正しく解析対象に当たっていることが前提ですが、多様な解析が可能となります。