Skip to content

Commit f04d2ea

Browse files
author
donglaiw
committed
update syn compute
1 parent f03acf7 commit f04d2ea

File tree

3 files changed

+18
-13
lines changed

3 files changed

+18
-13
lines changed

connectomics/data/dataset/dataset_volume.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,8 @@ def __init__(self,
138138
self.valid_mask = valid_mask
139139
self.valid_ratio = valid_ratio
140140
# precompute valid region
141-
self.valid_pos = [None] * len(self.valid_mask)
142141
if self.valid_mask is not None:
142+
self.valid_pos = [None] * len(self.valid_mask)
143143
for i, x in enumerate(self.valid_mask):
144144
if x is not None:
145145
self.valid_pos[i] = get_valid_pos(x, sample_volume_size, valid_ratio)

connectomics/engine/trainer.py

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -284,21 +284,20 @@ def test_singly(self):
284284

285285
num_file = len(img_name)
286286
start_idx = self.cfg.INFERENCE.DO_SINGLY_START_INDEX
287+
digits = int(math.log10(num_file))+1
287288
for i in range(start_idx, num_file):
288-
dataset = get_dataset(
289-
self.cfg, self.augmentor, self.mode, self.rank,
290-
dir_name_init=dir_name, img_name_init=[img_name[i]])
291-
self.dataloader = build_dataloader(
292-
self.cfg, self.augmentor, self.mode, dataset, self.rank)
293-
self.dataloader = iter(self.dataloader)
294-
295-
digits = int(math.log10(num_file))+1
296289
self.test_filename = self.cfg.INFERENCE.OUTPUT_NAME + \
297290
'_' + str(i).zfill(digits) + '.h5'
298291
self.test_filename = self.augmentor.update_name(
299292
self.test_filename)
300-
301-
self.test()
293+
if not os.path.exists(self.test_filename):
294+
dataset = get_dataset(
295+
self.cfg, self.augmentor, self.mode, self.rank,
296+
dir_name_init=dir_name, img_name_init=[img_name[i]])
297+
self.dataloader = build_dataloader(
298+
self.cfg, self.augmentor, self.mode, dataset, self.rank)
299+
self.dataloader = iter(self.dataloader)
300+
self.test()
302301

303302
# -----------------------------------------------------------------------------
304303
# Misc functions

connectomics/utils/process.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -269,10 +269,14 @@ def polarity2instance(
269269
thres = int(255.0 * thres)
270270
temp = (volume > thres) # boolean array
271271

272-
syn_pre = np.logical_and(temp[0], temp[2])
272+
del volume
273+
syn_pre = temp[0]
274+
syn_pre &= temp[2]
273275
syn_pre = remove_small_objects(syn_pre,
274276
min_size=thres_small, connectivity=1)
275-
syn_post = np.logical_and(temp[1], temp[2])
277+
278+
syn_post = temp[1]
279+
syn_post &= temp[2]
276280
syn_post = remove_small_objects(syn_post,
277281
min_size=thres_small, connectivity=1)
278282

@@ -291,7 +295,9 @@ def polarity2instance(
291295
# Since non-zero pixels in seg_pos and seg_neg are subsets of temp[2],
292296
# they are naturally subsets of non-zero pixels in foreground.
293297
seg_pre = (foreground*2 - 1) * syn_pre.astype(foreground.dtype)
298+
del syn_pre
294299
seg_post = (foreground*2) * syn_post.astype(foreground.dtype)
300+
del syn_post
295301
segm = np.maximum(seg_pre, seg_post)
296302

297303
# Report the number of synapses

0 commit comments

Comments
 (0)