matterport / Mask_RCNN

Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow
Other
24.57k stars 11.69k forks source link

We could not automatically infer the shape of the Lambda's output. Please specify the `output_shape` argument for this Lambda layer. #3038

Open zlao3118 opened 3 months ago

zlao3118 commented 3 months ago

Traceback (most recent call last): File "D:\Mask_RCNN-2.1\Mask_RCNN-2.1\samples\balloon\balloon.py", line 332, in model = modellib.MaskRCNN(mode="inference", config=config, File "D:\Mask_RCNN-2.1\Mask_RCNN-2.1\samples\balloon\model.py", line 1768, in init self.keras_model = self.build(mode=mode, config=config) File "D:\Mask_RCNN-2.1\Mask_RCNN-2.1\samples\balloon\model.py", line 1950, in build fpn_classifier_graph(rpn_rois, mrcnn_feature_maps, config.IMAGE_SHAPE, File "D:\Mask_RCNN-2.1\Mask_RCNN-2.1\samples\balloon\model.py", line 916, in fpn_classifier_graph shared = KL.Lambda(lambda x: K.squeeze(K.squeeze(x, 3), 2), File "D:\python310\lib\site-packages\keras\src\utils\traceback_utils.py", line 122, in error_handler raise e.with_traceback(filtered_tb) from None File "D:\python310\lib\site-packages\keras\src\layers\core\lambda_layer.py", line 95, in compute_output_shape raise NotImplementedError( NotImplementedError: Exception encountered when calling Lambda.call().

We could not automatically infer the shape of the Lambda's output. Please specify the output_shape argument for this Lambda layer.

Arguments received by Lambda.call(): • args=('<KerasTensor shape=(None, 1000, 1, 1, 1024), dtype=float32, sparse=False, name=keras_tensor_428>',) • kwargs={'mask': 'None'}

fata1error404 commented 3 months ago

Same problem here, which appears in the line model = modellib.MaskRCNN(mode="inference", model_dir=MODEL_DIR, config=config)

I am running Tensorflow 2.16.1 TensorRT 8.6.1 Cuda 12.3 Cudnn 8.0

Traceback (most recent call last): File "/home/fata1error404/Mask-RCNN-TF2/samples/test.py", line 36, in model = modellib.MaskRCNN(mode="inference", model_dir=MODEL_DIR, config=config) File "/home/fata1error404/.local/lib/python3.10/site-packages/mrcnn/model.py", line 1831, in init self.keras_model = self.build(mode=mode, config=config) File "/home/fata1error404/.local/lib/python3.10/site-packages/mrcnn/model.py", line 2029, in build fpn_classifier_graph(rpn_rois, mrcnn_feature_maps, input_image_meta, File "/home/fata1error404/.local/lib/python3.10/site-packages/mrcnn/model.py", line 938, in fpn_classifier_graph shared = KL.Lambda(lambda x: K.squeeze(K.squeeze(x, 3), 2), File "/home/fata1error404/.local/lib/python3.10/site-packages/keras/src/utils/traceback_utils.py", line 123, in error_handler raise e.with_traceback(filtered_tb) from None File "/home/fata1error404/.local/lib/python3.10/site-packages/keras/src/layers/core/lambda_layer.py", line 97, in compute_output_shape raise NotImplementedError( NotImplementedError: Exception encountered when calling Lambda.call().

We could not automatically infer the shape of the Lambda's output. Please specify the output_shape argument for this Lambda layer.

Arguments received by Lambda.call(): • args=('<KerasTensor shape=(None, 1000, 1, 1, 1024), dtype=float32, sparse=False, name=keras_tensor_393>',) • kwargs={'mask': 'None'}

kumbarisagar3011 commented 3 months ago

is this solved?

kumbarisagar3011 commented 3 months ago

Because i am also getting same errror

kumbarisagar3011 commented 3 months ago

Anyone solved this please tell me i am trying to train it on custom dataset

userwatch commented 3 months ago

Hello I was able to run it in colab. I also encountered the same errors. It was very difficult.

https://github.com/z-mahmud22/Mask-RCNN_TF2.14.0 I used the repo here.

zlao3118 commented 3 months ago

still not solved

userwatch commented 2 months ago

Hello @zlao3118 zlao3188 Which versions do you use? tensorflow==2.5.0 keras==2.3.1 python 3.8.0 Have you tried?

knutsona commented 2 months ago

I was able to solve it with python 3.11 and tensorflow 2.12.0