Skip to content
This repository was archived by the owner on Nov 3, 2022. It is now read-only.

Commit 85c4954

Browse files
committed
Removes reliance on engine Keras module, in preparation for Keras 2.2.1. Maintains compatibility with Keras 2.2.0.
1 parent d0c13ac commit 85c4954

File tree

11 files changed

+58
-12
lines changed

11 files changed

+58
-12
lines changed

keras_applications/__init__.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,12 @@
1111
_KERAS_UTILS = None
1212

1313

14-
def set_keras_submodules(backend, engine, layers, models, utils):
14+
def set_keras_submodules(backend=None,
15+
engine=None,
16+
layers=None,
17+
models=None,
18+
utils=None):
19+
# TODO: remove `engine` argument after release of Keras 2.2.1.
1520
global _KERAS_BACKEND
1621
global _KERAS_ENGINE
1722
global _KERAS_LAYERS

keras_applications/densenet.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -231,7 +231,11 @@ def DenseNet(blocks,
231231
# Ensure that the model takes into account
232232
# any potential predecessors of `input_tensor`.
233233
if input_tensor is not None:
234-
inputs = engine.get_source_inputs(input_tensor)
234+
if hasattr(keras_utils, 'get_source_inputs'):
235+
get_source_inputs = keras_utils.get_source_inputs
236+
else:
237+
get_source_inputs = engine.get_source_inputs
238+
inputs = get_source_inputs(input_tensor)
235239
else:
236240
inputs = img_input
237241

keras_applications/inception_resnet_v2.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,7 +335,11 @@ def InceptionResNetV2(include_top=True,
335335
# Ensure that the model takes into account
336336
# any potential predecessors of `input_tensor`.
337337
if input_tensor is not None:
338-
inputs = engine.get_source_inputs(input_tensor)
338+
if hasattr(keras_utils, 'get_source_inputs'):
339+
get_source_inputs = keras_utils.get_source_inputs
340+
else:
341+
get_source_inputs = engine.get_source_inputs
342+
inputs = get_source_inputs(input_tensor)
339343
else:
340344
inputs = img_input
341345

keras_applications/inception_v3.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -366,7 +366,11 @@ def InceptionV3(include_top=True,
366366
# Ensure that the model takes into account
367367
# any potential predecessors of `input_tensor`.
368368
if input_tensor is not None:
369-
inputs = engine.get_source_inputs(input_tensor)
369+
if hasattr(keras_utils, 'get_source_inputs'):
370+
get_source_inputs = keras_utils.get_source_inputs
371+
else:
372+
get_source_inputs = engine.get_source_inputs
373+
inputs = get_source_inputs(input_tensor)
370374
else:
371375
inputs = img_input
372376
# Create model.

keras_applications/mobilenet.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,11 @@ def MobileNet(input_shape=None,
282282
# Ensure that the model takes into account
283283
# any potential predecessors of `input_tensor`.
284284
if input_tensor is not None:
285-
inputs = engine.get_source_inputs(input_tensor)
285+
if hasattr(keras_utils, 'get_source_inputs'):
286+
get_source_inputs = keras_utils.get_source_inputs
287+
else:
288+
get_source_inputs = engine.get_source_inputs
289+
inputs = get_source_inputs(input_tensor)
286290
else:
287291
inputs = img_input
288292

keras_applications/mobilenet_v2.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,11 @@
9292
from .imagenet_utils import decode_predictions
9393
from .imagenet_utils import _obtain_input_shape
9494

95+
if hasattr(keras_utils, 'get_source_inputs'):
96+
get_source_inputs = keras_utils.get_source_inputs
97+
else:
98+
get_source_inputs = engine.get_source_inputs
99+
95100
# TODO Change path to v1.1
96101
BASE_WEIGHT_PATH = ('https://github.com/JonathanCMitchell/mobilenet_v2_keras/'
97102
'releases/download/v1.1/')
@@ -213,7 +218,7 @@ def MobileNetV2(input_shape=None,
213218
except ValueError:
214219
try:
215220
is_input_t_tensor = backend.is_keras_tensor(
216-
engine.get_source_inputs(input_tensor))
221+
get_source_inputs(input_tensor))
217222
except ValueError:
218223
raise ValueError('input_tensor: ', input_tensor,
219224
'is not type input_tensor')
@@ -417,7 +422,7 @@ def MobileNetV2(input_shape=None,
417422
# Ensure that the model takes into account
418423
# any potential predecessors of `input_tensor`.
419424
if input_tensor is not None:
420-
inputs = engine.get_source_inputs(input_tensor)
425+
inputs = get_source_inputs(input_tensor)
421426
else:
422427
inputs = img_input
423428

keras_applications/nasnet.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,11 @@ def NASNet(input_shape=None,
247247
# Ensure that the model takes into account
248248
# any potential predecessors of `input_tensor`.
249249
if input_tensor is not None:
250-
inputs = engine.get_source_inputs(input_tensor)
250+
if hasattr(keras_utils, 'get_source_inputs'):
251+
get_source_inputs = keras_utils.get_source_inputs
252+
else:
253+
get_source_inputs = engine.get_source_inputs
254+
inputs = get_source_inputs(input_tensor)
251255
else:
252256
inputs = img_input
253257

keras_applications/resnet50.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -266,7 +266,11 @@ def ResNet50(include_top=True,
266266
# Ensure that the model takes into account
267267
# any potential predecessors of `input_tensor`.
268268
if input_tensor is not None:
269-
inputs = engine.get_source_inputs(input_tensor)
269+
if hasattr(keras_utils, 'get_source_inputs'):
270+
get_source_inputs = keras_utils.get_source_inputs
271+
else:
272+
get_source_inputs = engine.get_source_inputs
273+
inputs = get_source_inputs(input_tensor)
270274
else:
271275
inputs = img_input
272276
# Create model.

keras_applications/vgg16.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,11 @@ def VGG16(include_top=True,
191191
# Ensure that the model takes into account
192192
# any potential predecessors of `input_tensor`.
193193
if input_tensor is not None:
194-
inputs = engine.get_source_inputs(input_tensor)
194+
if hasattr(keras_utils, 'get_source_inputs'):
195+
get_source_inputs = keras_utils.get_source_inputs
196+
else:
197+
get_source_inputs = engine.get_source_inputs
198+
inputs = get_source_inputs(input_tensor)
195199
else:
196200
inputs = img_input
197201
# Create model.

keras_applications/vgg19.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,11 @@ def VGG19(include_top=True,
203203
# Ensure that the model takes into account
204204
# any potential predecessors of `input_tensor`.
205205
if input_tensor is not None:
206-
inputs = engine.get_source_inputs(input_tensor)
206+
if hasattr(keras_utils, 'get_source_inputs'):
207+
get_source_inputs = keras_utils.get_source_inputs
208+
else:
209+
get_source_inputs = engine.get_source_inputs
210+
inputs = get_source_inputs(input_tensor)
207211
else:
208212
inputs = img_input
209213
# Create model.

0 commit comments

Comments
 (0)