加载模型张量流的最佳方法

时间:2018-11-23 04:42:04

标签: python tensorflow keras

我想问一下如何加载模型1次并用它来预测很多时间吗?

这里是代码

`class CLASSIFY(object):
   cls_model = None
   def Classification_model(self, img):
    with tf.Session(graph=graph) as sess:
       if not self.cls_model:
        print("load model classify")
        self.cls_model = load_model(
            "C:\\Users\\BootAI\\Desktop\\hensolt_13_11\\Hensoldt_ServerDetect_deadline\\model\\model_data/model.h5",
            compile=False)
       x = self.cls_model.predict(img)
       z = self.cls_model.predict_classes(img)


`

可以看到cls_model。在第一个调用中,Classification_model。它可以工作,但是第二次出现错误:

`追踪(最近通话最近):   _bootstrap_inner中的文件“ C:\ Users \ BootAI \ AppData \ Local \ Programs \ Python \ Python36 \ lib \ threading.py”,行916     self.run()   运行中的文件“ C:\ Users \ BootAI \ AppData \ Local \ Programs \ Python \ Python36 \ lib \ threading.py”,行864     self._target(* self._args,** self._kwargs)   第30行的文件“ C:\ Users \ BootAI \ Desktop \ hensolt_13_11 \ Hensoldt_ServerDetect_deadline \ app \ drone_detection.py”在detect_drone中     数据= predict_stack(stack_img,frame_id,list_path)   文件“ C:\ Users \ BootAI \ Desktop \ hensolt_13_11 \ Hensoldt_ServerDetect_deadline \ app \ drone_detection.py”,第36行,位于predict_stack中     out_classes,out_scores,out_boxes = yolo.detect_image2(stack_data,list_path)   在detect_image2中,文件“ C:\ Users \ BootAI \ Desktop \ hensolt_13_11 \ Hensoldt_ServerDetect_deadline \ model \ RunModel.py”,第318行     pred,predclass = self.Classification_model(img)   类别173中的文件“ C:\ Users \ BootAI \ Desktop \ hensolt_13_11 \ Hensoldt_ServerDetect_deadline \ model \ RunModel.py”,第173行     x = self.cls_model.predict(img)   1169行中的预测文件“ C:\ Users \ BootAI \ Desktop \ hensolt_13_11 \ Hensoldt_orchestrator \ venv1 \ lib \ site-packages \ keras \ engine \ training.py”     步骤=步骤)   档案“ C:\ Users \ BootAI \ Desktop \ hensolt_13_11 \ Hensoldt_orchestrator \ venv1 \ lib \ site-packages \ keras \ engine \ training_arrays.py”,第294行,位于predict_loop中     batch_outs = f(ins_batch)   在调用中的文件“ C:\ Users \ BootAI \ Desktop \ hensolt_13_11 \ Hensoldt_orchestrator \ venv1 \ lib \ site-packages \ keras \ backend \ tensorflow_backend.py”,行2715     返回self._call(输入)   在_call中的文件“ C:\ Users \ BootAI \ Desktop \ hensolt_13_11 \ Hensoldt_orchestrator \ venv1 \ lib \ site-packages \ keras \ backend \ tensorflow_backend.py”,行2675,在_call中     获取= self._callable_fn(* array_vals)   调用中的文件“ C:\ Users \ BootAI \ Desktop \ hensolt_13_11 \ Hensoldt_orchestrator \ venv1 \ lib \ site-packages \ tensorflow \ python \ client \ session.py”,行1439,     run_metadata_ptr)   文件退出中     c_api.TF_GetCode(self.status.status)) tensorflow.python.framework.errors_impl.FailedPreconditionError:尝试使用未初始化的值conv2d / kernel      [[{{node conv2d / kernel / read}} = IdentityT = DT_FLOAT,_device =“ / job:localhost /副本:0 / task:0 / device:GPU:0”]]      [[{{node density_1 / Softmax / _11}} = _Recvclient_terminated = false,recv_device =“ / job:localhost /副本0 / task:0 /设备:CPU:0”,send_device =“ / job:localhost /副本: 0 /任务:0 /设备:GPU:0“,send_device_incarnation = 1,tensor_name =” edge_114_dense_1 / Softmax“,tensor_type = DT_FLOAT,_device =” / job:localhost /副本:0 /任务:0 /设备:CPU:0 “]]

`

0 个答案:

没有答案
相关问题