From edbac4a2f427581960a2bd18fd6da2fdbc43df4f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Dmitry=20Mozolev/AI=20Tools=20Lab=20/SRR/Engineer/=EC=82=BC?= =?utf8?q?=EC=84=B1=EC=A0=84=EC=9E=90?= Date: Thu, 12 Jul 2018 11:41:54 +0300 Subject: [PATCH] Add Caffe importer example (#592) It prints the model and creates Model IR (but doesn't use it). Signed-off-by: Dmitry Mozolev --- contrib/nnc/libs/frontend/caffe/CMakeLists.txt | 3 ++ .../libs/frontend/caffe/examples/model_dump.cpp | 32 ++++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 contrib/nnc/libs/frontend/caffe/examples/model_dump.cpp diff --git a/contrib/nnc/libs/frontend/caffe/CMakeLists.txt b/contrib/nnc/libs/frontend/caffe/CMakeLists.txt index c78457f..50e6efb 100644 --- a/contrib/nnc/libs/frontend/caffe/CMakeLists.txt +++ b/contrib/nnc/libs/frontend/caffe/CMakeLists.txt @@ -24,3 +24,6 @@ target_link_libraries(caffe_importer PUBLIC ${nn_import_common}) target_link_libraries(caffe_importer PRIVATE nnc_core) target_link_libraries(caffe_importer PRIVATE nncc_core) target_link_libraries(caffe_importer PRIVATE nnc_plugin_core) + +add_nncc_example_executable(caffe_model_dumper examples/model_dump.cpp) +nncc_target_link_libraries(caffe_model_dumper caffe_importer) diff --git a/contrib/nnc/libs/frontend/caffe/examples/model_dump.cpp b/contrib/nnc/libs/frontend/caffe/examples/model_dump.cpp new file mode 100644 index 0000000..d0200bb --- /dev/null +++ b/contrib/nnc/libs/frontend/caffe/examples/model_dump.cpp @@ -0,0 +1,32 @@ +#include + +#include "caffe_importer.h" + +int main(int argc, char** argv) +{ + std::string modelName; + if (argc > 1) + { + modelName = argv[1]; + } + else + { + modelName = "mobilenet.caffemodel"; + } + + nncc::contrib::frontend::caffe::CaffeImporter importer{modelName}; + + bool success = importer.import(); + + if (success) + { + importer.dump(); + importer.createIR(); + } + else + { + std::cout << "Could not load model \"" << modelName << "\"" << std::endl; + } + + return 0; +} -- 2.7.4