画像処理プログラムからのデータがあり、それらをつなぎ合わせる必要があります。私の画像データは元々、顕微鏡スライド上の18(6 x 3)ウェルの配列です。後で各ウェルに何が入っていたかを識別できるように、これらのウェルに一貫して番号を付ける必要があります。ウェルのおおよそのx位置とy位置(ピクセル単位)があり、それらを左から右、次に上から下(最も単純に見える)に並べ替え、1から18の番号を付けたいと思います。
このような:
     [,1] [,2] [,3] [,4] [,5] [,6]
[1,]    1    2    3    4    5    6
[2,]    7    8    9   10   11   12
[3,]   13   14   15   16   17   18
警告:
-すべてのウェルが画像処理プログラムによってピックアップされたわけではないため、18未満のウェルがある場合があります。
-同じ行または列のすべてのウェルがまったく同じxまたはyにあるわけではなく、20〜40ピクセル以内で浮かんでいるように見えます。
-すべての画像が同じポイントまたはまったく同じ倍率で中央に配置されるわけではないため、適切な位置は範囲をコード化するのに十分な信頼性がありません。
データの例:
   Well BBXLeft BBYTop
1     0      39    637
2     1      43   1218
3     2     596    630
4     3     610   1212
5     4    1161    633
6     5    1164   1207
7     6    1710    623
8     7    1715   1202
9     8    2267    620
10    9    2271   1199
11   10    2824    617
12   11    2845   1197
13   12      35     57
14   13     593     53
15   14    1709     45
16   15    2262     41
17   16    2820     38
またはから再現可能な形式でdput:
wells <- structure(list(Well = 0:16, BBXLeft = c(39L, 43L, 596L, 610L,1161L, 1164L, 1710L, 1715L, 2267L, 2271L, 2824L, 2845L, 35L, 593L, 1709L, 2262L, 2820L), BBYTop = c(637L, 1218L, 630L, 1212L, 633L, 1207L, 623L, 1202L, 620L, 1199L, 617L, 1197L, 57L, 53L, 45L, 41L, 38L)), .Names = c("Well", "BBXLeft", "BBYTop"), class = "data.frame", row.names = c(NA, -17L))
ウェルが画像解析プログラムから故障していますこの例ではウェル#15(または0からカウントする場合は14)がありません
理想的な出力は、左右、上下のウェル番号(または「戦艦」座標)を含む新しい列です。
これがちょっとした宿題の質問である場合は申し訳ありませんが、カットオフをハードコーディングせずにこれを効率的に行う方法が本当にわかりません。Rを使用しているのは、Rが私が把握している唯一の言語であり、この問題を回避するために他のコードを作成する準備ができているためです。
