Keras-retinanet: Error in retinanet.py->default_regression_model->keras.layers.Reshape

Created on 14 Nov 2017  路  2Comments  路  Source: fizyr/keras-retinanet

Hi,

I am trying to test your code on my system using the instructions given under "Generate RetinaNet model" at https://github.com/fizyr/keras-retinanet/blob/master/examples/ResNet50RetinaNet%20-%20COCO%202017.ipynb

But, I am getting following error during the call of keras.layers.Reshape function from retinanet.py->default_regression_model

I am attaching the traceback. Could you please help me in fixing the issue.

Code:

image = keras.layers.Input((None, None, 3))
model = keras_retinanet.models.ResNet50RetinaNet(image, num_classes=90, weights='imagenet')

compile model

model.compile(
loss={
'regression' : keras_retinanet.losses.smooth_l1(),
'classification': keras_retinanet.losses.focal()
},
optimizer=keras.optimizers.adam(lr=1e-5, clipnorm=0.001)
)

print(model.summary())

Traceback (most recent call last):

File "", line 2, in
model = keras_retinanet.models.ResNet50RetinaNet(image, num_classes=90, weights='imagenet')

File "E:\PythonCode\spyderprojects\keras-retinanet-master\keras-retinanet-master\keras_retinanet\modelsresnet.py", line 38, in ResNet50RetinaNet
model = keras_retinanet.models.retinanet_bbox(inputs=inputs, backbone=resnet, args, *kwargs)

File "E:\PythonCode\spyderprojects\keras-retinanet-master\keras-retinanet-master\keras_retinanet\modelsretinanet.py", line 193, in retinanet_bbox
model = retinanet(inputs=inputs, num_classes=num_classes, args, *kwargs)

File "E:\PythonCode\spyderprojects\keras-retinanet-master\keras-retinanet-master\keras_retinanet\modelsretinanet.py", line 175, in retinanet
submodels = default_submodels(num_classes, anchor_parameters)

File "E:\PythonCode\spyderprojects\keras-retinanet-master\keras-retinanet-master\keras_retinanet\modelsretinanet.py", line 139, in default_submodels
default_regression_model(anchor_parameters.num_anchors()),

File "E:\PythonCode\spyderprojects\keras-retinanet-master\keras-retinanet-master\keras_retinanet\modelsretinanet.py", line 87, in default_regression_model
outputs = keras.layers.Reshape((-1, 4), name='pyramid_regression_reshape')(outputs)

File "C:\Program Files\Anaconda3\envs\py35\lib\site-packages\keras\engine\topology.py", line 596, in __call__
output = self.call(inputs, **kwargs)

File "C:\Program Files\Anaconda3\envs\py35\lib\site-packages\keras\layerscore.py", line 391, in call
target_shape = self.compute_output_shape(input_shape)[1:]

File "C:\Program Files\Anaconda3\envs\py35\lib\site-packages\keras\layerscore.py", line 376, in compute_output_shape
input_shape[1:], self.target_shape)

File "C:\Program Files\Anaconda3\envs\py35\lib\site-packages\keras\layerscore.py", line 364, in _fix_unknown_dimension
original = np.prod(input_shape, dtype=int)

File "C:\Program Files\Anaconda3\envs\py35\lib\site-packages\numpycorefromnumeric.py", line 2492, in prod
out=out, keepdims=keepdims)

File "C:\Program Files\Anaconda3\envs\py35\lib\site-packages\numpycore_methods.py", line 35, in _prod
return umr_prod(a, axis, dtype, out, keepdims)

TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'

Most helpful comment

Thanks @hgaiser , now it is working

All 2 comments

Seems that you're running keras 2.0.8 or lower. Try updating to keras 2.0.9. Note: keras 2.0.10 was released a few hours ago, I haven't tested this properly yet.

Thanks @hgaiser , now it is working

Was this page helpful?
0 / 5 - 0 ratings

Related issues

mayur-who picture mayur-who  路  5Comments

ztf-ucas picture ztf-ucas  路  3Comments

fernandocamargoti picture fernandocamargoti  路  4Comments

aaronBioBot picture aaronBioBot  路  5Comments

remcova picture remcova  路  4Comments