mj129/SANet

bbox_reader.py self.crop 函数问题

Opened this issue · 0 comments

作者您好, 我在尝试将SANet 训练另一数据集 LUNA16过程中间遇到了一些问题。在 bbox_reader.py 的 crop 环节,将不同数量的图片都crop 成 128,128,128 大小时遇到了问题,也就是如下代码:

sample, target, bboxes, coord = self.crop(imgs, [], bboxes,isScale=False,isRand=True)
if sample.shape[1] != self.cfg['crop_size'][0] or sample.shape[2] !=
self.cfg['crop_size'][1] or sample.shape[3] != self.cfg['crop_size'][2]:
print(filename, sample.shape)

例如:
某位病人的 260张512,512 图片放入 crop 函数,裁剪后形状不是 128,128,128, 而是 228,149,128 (Batchsize = 1)。
imgs = (1, 260, 512, 512)
sampe = (1, 128, 149, 128)
Shape Inccorect 161855 (1, 128, 149, 128)

又例如:
imgs = (1, 300, 512, 512)
sampe =(1, 351, 128, 128)

因为我注意到您有一个判断语句来print 这类crop 出错图的大小,因此我猜测您可能遇到过这种情况。请问您有空是否能够查看一下,您是否遇到过类似情况,您的解决方式是什么?谢谢~