@@ -121,25 +121,43 @@ function spots(
121121 stimulus[] = key => Spot (val[3 ], (round (Int, val[1 ] / val[3 ]), round (Int, val[2 ] / val[3 ])))
122122 return false
123123 end
124- val[3 ] <= max_size_frac * length (seg. image_indexmap) || return false
124+ return val[3 ] <= max_size_frac * length (seg. image_indexmap)
125125 # # is the centroid within the segment?
126126 # x, y = round(Int, val[1] / val[3]), round(Int, val[2] / val[3])
127127 # l = seg.image_indexmap[x, y]
128128 # @show l
129129 # l == key || return false
130130 # is the segment lighter than most of its neighbors?
131- dcol, ncol = zero (valtype (seg. segment_means)), 0
132- for (k, n) in nadj
133- if key == k[1 ] || key == k[2 ]
134- l1, l2 = k[1 ], k[2 ]
135- if l1 == key
136- l1, l2 = l2, l1
137- end
138- dcol += n * (segment_mean (seg, l1) - segment_mean (seg, l2))
139- ncol += n
140- end
131+ # dcol, ncol = zero(valtype(seg.segment_means)), 0
132+ # for (k, n) in nadj
133+ # if key == k[1] || key == k[2]
134+ # l1, l2 = k[1], k[2]
135+ # if l1 == key
136+ # l1, l2 = l2, l1
137+ # end
138+ # dcol += n * (segment_mean(seg, l1) - segment_mean(seg, l2))
139+ # ncol += n
140+ # end
141+ # end
142+ # return reducec(+, dcol) < 0
143+ end
144+ return Dict (l => Spot (val[3 ], (round (Int, val[1 ] / val[3 ]), round (Int, val[2 ] / val[3 ]))) for (l, val) in centroidsacc), stimulus[]
145+ end
146+
147+ function spots (
148+ indexmap:: Matrix{Int} ,
149+ istim:: Int ;
150+ max_size_frac= 0.1 ,
151+ kwargs...
152+ )
153+ centroidsacc, nadj = get_centroidsacc (indexmap)
154+ stimulus = Ref {Pair{Int,Spot}} ()
155+ filter! (centroidsacc) do (key, val)
156+ if key == istim
157+ stimulus[] = key => Spot (val[3 ], (round (Int, val[1 ] / val[3 ]), round (Int, val[2 ] / val[3 ])))
158+ return false
141159 end
142- return reducec ( + , dcol) < 0
160+ return val[ 3 ] <= max_size_frac * length (indexmap)
143161 end
144162 return Dict (l => Spot (val[3 ], (round (Int, val[1 ] / val[3 ]), round (Int, val[2 ] / val[3 ]))) for (l, val) in centroidsacc), stimulus[]
145163end
0 commit comments