繁体   English   中英

加载fac.net model

[英]Load facenet model

我已经尝试了几乎所有关于 stackoverflow 的答案,但没有任何效果。 这是我的代码。

from keras.models import load_model
load_model('facenet_keras.h5')

它给了我这个错误

ValueError Traceback(最后一次调用)~\AppData\Local\Temp\ipykernel_5776\2622147163.py in ----> 1 load_model('fac.net_keras.h5')

~\AppData\Roaming\Python\Python39\site-packages\keras\utils\traceback_utils.py in error_handler(*args, **kwargs) 68 # 要获取完整的堆栈跟踪,请调用:69 # tf.debugging.disable_traceback_filtering() ---> 70 raise e.with_traceback(filtered_tb) from None 71 finally: 72 del filtered_tb

~\AppData\Roaming\Python\Python39\site-packages\keras\utils\generic_utils.py 在 func_load(代码,默认值,闭包,globs)101 除了(UnicodeEncodeError,binascii.Error):102 raw_code = code.encode(“ raw_unicode_escape") --> 103 code = marshal.loads(raw_code) 104 if globs is None: 105 globs = globals()

ValueError:错误的编组数据(未知类型代码)

为了解决上述错误,我这样做了

from keras_facenet import FaceNet
embedder = FaceNet()

但我不想使用上述方法。我只想加载 fac.net model。如果有人可以提供帮助,如何解决此错误。

  1. Python 版本:3.9.3
  2. tensorflow:2.11.0
  3. keras:2.11.0

编辑

根据 VM 的回答,这有效。

model = InceptionResNetV1(
        input_shape=(None, None, 3),
        classes=512,
    )
model.load_weights('20180402-114759.h5')

如果您可以重新创建架构,在本例中来自[keras_fac.net/inception_re.net_v1][1] ,那么您可以执行以下操作:

model = InceptionResNetV1(
        input_shape=(None, None, 3),
        classes=512,
    )
model.load_weights('model.h5')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM