10

Matlabで数えたいドットでいっぱいのペトリ皿がたくさんあります。これを確実にバッチで実行できますか?

例 このプレートには 352 個のコロニーがあります

ここに画像の説明を入力

私は ImageJ を試しましたが、境界線からかなりの部分を切り取り、さまざまな結果を得る必要があります。

何か提案はありますか?

4

3 に答える 3

2

画像内の異なるオブジェクトを区別するために使用できる連結成分ラベリングと呼ばれる手法を使用できます。

まず、何らかのしきい値処理によって画像をバイナリにする必要があります。ラベル付けは、各ピクセル行を 2 回 (左から右に 1 回、右から左に 1 回) スキャンすることによって行われます。オブジェクト ピクセル、つまり値が 1 のピクセルを探しています。

左から右へのスキャン: 各ピクセルp : pがオブジェクト ピクセルの場合、上または左からラベルをコピーします。pが背景ピクセルであるか、pにラベルがある場合は、何もしません。

右から左へのスキャンの場合: 各ピクセルp : pがオブジェクト ピクセルの場合、ラベルがあれば右からコピーし、そうでない場合は新しいラベルを設定します。pが背景ピクセルであるか、pにラベルがある場合は、何もしません。ラベルが存在し、 pの右側のピクセルに別のラベルがある場合は、これを書き留めます。

例 ( http://webstaff.itn.liu.se/~bjogu/TNM087-2012/Fo7-2012-AH.pdfの講義スライドから):

ラベル付けの例

画像全体をスキャンしたら、メモしたすべてのラベル (同じオブジェクトに接続されている) を結合し、個別のラベルの数を数えると、カウントが得られます。

于 2012-03-31T10:40:32.210 に答える
1

私がすることは次のとおりです。

  1. Intensity のしきい値を使用して、イメージをバイナリ イメージに変換します。ドットが明るいので 、しきい値を取得した後に行うことができます。なぜ黒と言ったのかわかりませんが、何色でも同じ考えです。1-binaryImage

  2. その後、ハフ変換を使用してヒストグラムをプロット できますrho and theta

  3. そのヒストグラムでは、rho == 半径に 2 番目のしきい値を設定できます。

追加した:

ハフ変換によるグレースケール イメージ内のさまざまな半径の円の検出

于 2012-03-31T10:18:48.053 に答える