我验证了二进制protobuf文件(inception_v3_2016_08_28_frozen.pb)的路径是正确的。在LoadGraph
函数中,ReadBinaryProto
似乎成功(load_graph_status
通过了ok检查),但使用生成的graph_def调用Session-> Create会引发异常:
"抛出异常:读取访问冲突 session-> _Mypair._Myval2为nullptr。"
如果我检查graph_def
对象,它实际上似乎不包含任何内容(version_
为0,_cached_size_
为0,所有指针都显示为NULL等)。
答案 0 :(得分:1)
解决此问题需要将Visual Studio / WHOLEARCHIVE标志添加到一堆TF库文件中。我最终整个存档(有些可能不是绝对必要的)是:
/WHOLEARCHIVE:tf_protos_cc.lib
/WHOLEARCHIVE:tf_c.lib
/WHOLEARCHIVE:tf_cc.lib
/WHOLEARCHIVE:tf_cc_framework.lib
/WHOLEARCHIVE:tf_cc_ops.lib
/WHOLEARCHIVE:tf_cc_while_loop.lib
/WHOLEARCHIVE:tf_core_cpu.lib
/WHOLEARCHIVE:tf_core_direct_session.lib
/WHOLEARCHIVE:tf_core_framework.lib
/WHOLEARCHIVE:tf_core_kernels.lib
/WHOLEARCHIVE:tf_core_lib.lib
/WHOLEARCHIVE:tf_core_ops.lib