1

画像内のセルをカウントするためのマクロを作成しようとしています。ただし、セル間のオーバーラップを削除し、プログラムが塊を区別するのに苦労しています。

run("8-bit", "stack"); 
run("Subtract Background...", "rolling=5 light sliding stack"); 
run("Median...", "radius=1 stack"); 
run("Unsharp Mask...", "radius=0.8 mask=0.50 stack"); 
run("Invert LUT"); 
run("Auto Threshold", "method=Yen white stack"); 
run("Erode"); 
run("Erode"); 
run ("Watershed"); 
run("Analyze Particles...", "size=200-2000 circularity=0.50-1.00 show=[Count Masks] display exclude clear summarize add in_situ");

画像のスタックでマクロを使用しています。

私も GreyscaleReconstruct を使用してみましたが、どちらも成功しませんでした。このコードを使用しました

run("Open..."); 
selectWindow("A.png"); 
setBatchMode(true); 
a=getTitle(); 
run("8-bit"); 
run("Invert LUT"); 
run("Gaussian Blur...", "sigma=2"); 
run("Duplicate...", "title=_seed"); 
run("Minimum...", "radius=3"); 
run("GreyscaleReconstruct ", "mask="+a+" seed=_seed create"); 
imageCalculator("Subtract create", a,"_seed"); 
selectWindow("Result of "+a); 
rename("WhiteTopHatReconstructed"); 
run("Auto Threshold", "method=Otsu white"); 
setBatchMode(false); 
run("Analyze Particles...", "size=200-2000 circularity=0.50-1.00 show=[Count Masks] display exclude clear summarize add in_situ"); 

助けてください(最初または2番目のコードで!)ありがとう!:)

ここに私が分析しているものの画像があります。ここに画像の説明を入力

4

1 に答える 1

3

オブジェクトのオーバーラップは、難しい問題になる可能性があります。セグメンテーションに関するFiji wiki ページでは、画像セグメンテーションにアプローチする 2 つの主な方法について説明しています。Trainable Weka Segmentationプラグインと、より柔軟なマクロベースのワークフローです。これまでのところ、あなたの試みは後者のカテゴリーに分類されます。あなたの場合、前者を試してみることをお勧めします。

私はTrainable Weka Segmentationで少し遊んで、いくつかの潜在的に有望な結果を得ましたが、まだ十分ではありません:

トレーニング可能な Weka セグメンテーション

画像を 4 つのクラスに分けました。背景、中央の暗い領域 (「ブロブ」)、セル自体 (「クラス 1」)、および各セルを通る中央線 (「クラス 2」) です。私の考えは、これらの中央線を分離することでした。中央線から細胞の中心を見つけやすく、細胞の形状が非常に規則的だからです。中心があれば、セルの重なりの問題はほとんどなくなります。また、正中線は方向性があるため、分析に役立つ場合は、セルの向きの角度を計算することもできます。

クラス 2 のみのマスクを次に示します。

マスク

残念ながら、私の最初の試行では、セル境界もクラス 2 としてトレーニングされましたが、もう少し調整すれば、おそらくその問題は解消される可能性があります。ダイアログで分類に使用する画像の特徴を制御することもできますSettings。これは、分類に役立つ場合があります。

十分な分類器ができたら、それを保存して ( Save classifier)、バッチでさらに多くの画像に適用できます ( Apply classifier)。トレーニング可能な Weka セグメンテーションはすべてスクリプトやマクロからも使用できるため、必要に応じて前処理や後処理と組み合わせることができます。

クラス 2 で一般的に膜の識別を停止できない場合は、その特定の形状についてマスク自体を分析して、バイナリ セル アウトライン形状をセル中心に煮詰めることでフォローアップできます。ここで役立つモルフォロジー演算子があるかもしれませんが、私は専門家ではないので、そのような専門家が何人か読んでいるImageJ メーリング リストで質問することをお勧めします。

分析に役立つ可能性のあるチェックアウトできる別のプロジェクトは、CellProfilerです。画像処理モジュールの優れたスイートを提供し、このような特定のデータについて助けを求めることができる優れた応答性の高いフォーラムもあります.

于 2013-09-26T17:31:55.883 に答える