msracver / FCIS

Fully Convolutional Instance-aware Semantic Segmentation
MIT License
1.57k stars 415 forks source link

Error when trying to change the MASK_SIZE in the configuration file #129

Open michaelhuang74 opened 6 years ago

michaelhuang74 commented 6 years ago

I want to increase the MASK_SIZE from 21 to 84 in the resnet_v1_101_vocSDS_fcis_end2end.yaml file to have smoother boundary of segmentation.

However, when I train on the VOC 2012 dataset, I encounter the following error.

infer_shape error. Arguments: im_info: (1L, 3L) proposal_label: (1L, 23814L) proposal_bbox_target: (1L, 36L, 42L, 63L) gt_boxes: (1L, 3L, 5L) proposal_bbox_weight: (1L, 36L, 42L, 63L) data: (1L, 3L, 666L, 1000L) gt_masks: (3L, 666L, 1000L) Traceback (most recent call last): File "experiments/fcis/fcis_end2end_train_test.py", line 13, in train_end2end.main() File "experiments/fcis/../../fcis/train_end2end.py", line 181, in main config.TRAIN.lr, config.TRAIN.lr_step) File "experiments/fcis/../../fcis/train_end2end.py", line 101, in train_net sym_instance.infer_shape(data_shape_dict) File "experiments/fcis/../../fcis/../lib/utils/symbol.py", line 40, in infer_shape arg_shape, out_shape, aux_shape = self.sym.infer_shape(*data_shape_dict) File "/usr/local/lib/python2.7/dist-packages/mxnet-0.9.5-py2.7.egg/mxnet/symbol.py", line 636, in infer_shape res = self._infer_shape_impl(False, args, **kwargs) File "/usr/local/lib/python2.7/dist-packages/mxnet-0.9.5-py2.7.egg/mxnet/symbol.py", line 719, in _infer_shape_impl ctypes.byref(complete))) File "/usr/local/lib/python2.7/dist-packages/mxnet-0.9.5-py2.7.egg/mxnet/base.py", line 78, in check_call raise MXNetError(py_str(_LIB.MXGetLastError())) mxnet.base.MXNetError: Error in operator seg_prob: Expecting (128,441) or (128,21,21). But got (128,1,84,84)

I have two questions. (1) Is it possible to use a different MASK_SIZE other than 21? (2) If it is possible, where else do I need to change the source code in addition to the configuration file?

Thanks.