ディープラーニング(深層学習)を利用して寒天培地の生菌数を自動カウントする方法を考えてみます。
まず、以下のような2通りの方法が考えられます。
(1) 既存のアルゴリズムとは無関係に、ディープラーニングで培地画像と生菌数の関係から学習する場合。
畳み込みニューラルネットワークの応用技術である画像分類と物体検出を利用してできるのではないか?と考えられます。
画像分類は一枚の画像で一つの物体を認識する技術です。
物体検出は一枚の画像に複数の物体が写っていいる場合に何が何処にあるかを検出できます。
これらの技術を応用すれば、細菌のコロニーとその他の物質(例えば、照明の反射なども含む)を区別して、コロニーがいくつあるか検出することが可能ではないかと考えられます。
技術だけではなく大量のデータ(培地の写真)が必要になるのも難点です。
(2) 既存の自動カウンタのアルゴリズムの前処理としてディープラーニングの学習結果を使う場合。
既存のアルゴリズム(主に粒子をカウントするアルゴリズム)をカウントに利用する場合は、培地の写真の写り具合などによって、カウントが正確に行われないことがありえるので写真の調整が必要な場合があります。
CAE(Convolutional Autoencoder)や CAE を利用したノイズ除去技術(DAE)、「超解像」などの技術を応用して画像の自動調整ができるのではないかと考えられます。
従来の自動カウンタで寒天培地の写真がうまくカウントできない場合は、
・解像度・明るさ・コントラスト・光の反射などの写真撮影の問題
・泡、ゴミのような余計なもの
・細菌のコロニーの大きさや色、コロニーの重なり具合
などの原因が上げられます。
CAE(Convolutional Autoencoder)とは畳み込みニューラルネットワークの技術を用いいて、入力画像を圧縮し、圧縮したデータから画像を再現する技術です。
DAE(Denoising Autoencoder)とは、CAEを応用して、入力画像にノイズを加え、ノイズを除去してオリジナルに近い画像を得る技術です。
「超解像」とは写真や動画の解像度を上げる技術です。
これらの技術を応用すれば、従来のアルゴリズムではカウントが正確に行われないような写真でも自動調整できるのではないかと考えられます。
いずれにしても、ディープラーニングでは大量のデータが必要になり、都合の良いデータをうまく集めるのもディープラーニングでは重要な課題と考えられます。
充分な量の培地の写真をあつめるのに結構時間がかかりそうです。
尚、今後の方針としては、今まで「お試し」した TensorFlow に 深層学習ライブラリの Keras を導入して進めたいと思います。
(S.Onda 2018/6/4)