diff --git a/mindspore/lite/micro/CMakeLists.txt b/mindspore/lite/micro/CMakeLists.txt index 7ed7d96f2e..5212233a9e 100644 --- a/mindspore/lite/micro/CMakeLists.txt +++ b/mindspore/lite/micro/CMakeLists.txt @@ -1,5 +1,8 @@ cmake_minimum_required(VERSION 3.14) project(micro) + +option(BUILD_TESTCASES "if build testcase" on) + string(REPLACE "/mindspore/lite/micro" "" TOP_DIR ${CMAKE_CURRENT_SOURCE_DIR}) set(CMAKE_CXX_STANDARD 17) include_directories(${CMAKE_BINARY_DIR}) @@ -30,7 +33,7 @@ ms_build_flatbuffers_lite(FBS_FILES "inner" ) if("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") - MESSAGE(" ******Micro Debug********") + MESSAGE("******Micro Debug********") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DDebug -g") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DDebug -g") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=default") @@ -49,3 +52,6 @@ if(ENABLE_ASAN) endif() add_subdirectory(coder) +if(${BUILD_TESTCASES}) + add_subdirectory(test) +endif() diff --git a/mindspore/lite/micro/cmake/file_list.cmake b/mindspore/lite/micro/cmake/file_list.cmake new file mode 100644 index 0000000000..39a5024403 --- /dev/null +++ b/mindspore/lite/micro/cmake/file_list.cmake @@ -0,0 +1,104 @@ +#### classify all .h .c .cc files to FILE_SET +set(CODER_SRC + ${MICRO_DIR}/coder/coder.cc + ${MICRO_DIR}/coder/coder_context.cc + ${MICRO_DIR}/coder/coder_graph.cc + ${MICRO_DIR}/coder/debug.cc + ${MICRO_DIR}/coder/session_coder.cc + ) + +set(CODER_ALLOC_SRC + ${MICRO_DIR}/coder/allocator/allocator.cc + ${MICRO_DIR}/coder/allocator/memory_manager.cc + ) + +set(CODER_GENERATOR_SRC + ${MICRO_DIR}/coder/generator/generator.cc + ${MICRO_DIR}/coder/generator/inference/inference_generator.cc + ${MICRO_DIR}/coder/generator/utils/generator_utils.cc + ) + +set(CODER_OPCODERS_SRC + ${MICRO_DIR}/coder/opcoders/file_collector.cc + ${MICRO_DIR}/coder/opcoders/op_coder.cc + ${MICRO_DIR}/coder/opcoders/op_coder_builder.cc + ${MICRO_DIR}/coder/opcoders/op_coder_register.cc + #### serializer + ${MICRO_DIR}/coder/opcoders/serializers/nnacl_serializer/nnacl_fp32_serializer.cc + ${MICRO_DIR}/coder/opcoders/serializers/nnacl_serializer/nnacl_int8_serializer.cc + #### base coder + ${MICRO_DIR}/coder/opcoders/base/conv2d_base_coder.cc + ${MICRO_DIR}/coder/opcoders/base/dtype_cast_coder.cc + ${MICRO_DIR}/coder/opcoders/base/full_connection_base_coder.cc + ${MICRO_DIR}/coder/opcoders/base/quant_dtype_cast_coder.cc + ${MICRO_DIR}/coder/opcoders/base/reduce_base_coder.cc + ${MICRO_DIR}/coder/opcoders/base/softmax_base_coder.cc + #### cmsis int8 coder + ${MICRO_DIR}/coder/opcoders/cmsis-nn/int8/add_int8_coder.cc + ${MICRO_DIR}/coder/opcoders/cmsis-nn/int8/conv2d_base_coder.cc + ${MICRO_DIR}/coder/opcoders/cmsis-nn/int8/conv2d_int8_coder.cc + ${MICRO_DIR}/coder/opcoders/cmsis-nn/int8/dwconv_int8_coder.cc + ${MICRO_DIR}/coder/opcoders/cmsis-nn/int8/fullconnection_int8_coder.cc + ${MICRO_DIR}/coder/opcoders/cmsis-nn/int8/mul_int8_coder.cc + ${MICRO_DIR}/coder/opcoders/cmsis-nn/int8/pooling_int8_coder.cc + ${MICRO_DIR}/coder/opcoders/cmsis-nn/int8/reshape_int8_coder.cc + ${MICRO_DIR}/coder/opcoders/cmsis-nn/int8/softmax_int8_coder.cc + #### nnacl fp32 coder + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/activation_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/addn_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/arithmetic_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/arithmetic_self_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/assign_add_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/batchnorm_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/concat_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/expand_dims_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/gather_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/nchw2nhwc_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/nhwc2nchw_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/pad_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/pooling_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/power_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/reshape_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/scale_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/slice_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/squeeze_dims_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/tile_fp32_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/fp32/transpose_fp32_coder.cc + #### nnacl int8 coder + ${MICRO_DIR}/coder/opcoders/nnacl/int8/concat_int8_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/int8/pooling_int8_coder.cc + ${MICRO_DIR}/coder/opcoders/nnacl/int8/reshape_int8_coder.cc + ) + +set(CODER_UTILS_SRC + ${MICRO_DIR}/coder/utils/coder_utils.cc + ${MICRO_DIR}/coder/utils/dir_utils.cc + ${MICRO_DIR}/coder/utils/print_utils.cc + ) + +set(PRIMITIVE_OP_SRC + ${LITE_DIR}/src/ops/batch_norm.cc + ${LITE_DIR}/src/ops/primitive_c.cc + ${LITE_DIR}/src/ops/slice.cc + ${LITE_DIR}/src/ops/while.cc + ) + +set(LITE_SRC + ${PRIMITIVE_OP_SRC} + ${LITE_DIR}/tools/common/flag_parser.cc + ${LITE_DIR}/src/common/file_utils.cc + ${LITE_DIR}/src/common/graph_util.cc + ${LITE_DIR}/src/common/string_util.cc + ${LITE_DIR}/src/runtime/allocator.cc + ${LITE_DIR}/src/lite_model.cc + ${LITE_DIR}/src/tensorlist.cc + ${LITE_DIR}/src/tensor.cc + ${LITE_DIR}/src/common/log_adapter.cc + ${LITE_DIR}/nnacl/int8/quantize.c + ${LITE_DIR}/nnacl/int8/pack_int8.c + ${LITE_DIR}/nnacl/int8/matmul_int8.c + ${LITE_DIR}/nnacl/int8/fixed_point.c + ) + +list(APPEND FILE_SET ${CODER_SRC} ${CODER_UTILS_SRC} ${CODER_OPCODERS_SRC} ${CODER_GENERATOR_SRC} + ${CODER_ALLOC_SRC} ${LITE_SRC}) diff --git a/mindspore/lite/micro/cmake/package_android.cmake b/mindspore/lite/micro/cmake/package_android.cmake new file mode 100644 index 0000000000..cecc4ec60f --- /dev/null +++ b/mindspore/lite/micro/cmake/package_android.cmake @@ -0,0 +1,17 @@ +option(MICRO_BUILD_ARM64 "build android arm64" OFF) +option(MICRO_BUILD_ARM32A "build android arm32" OFF) + +if(MICRO_BUILD_ARM64 OR MICRO_BUILD_ARM32A) + add_compile_definitions(ENABLE_NEON) + add_compile_definitions(ENABLE_ARM) +endif() + +if(MICRO_BUILD_ARM64) + add_compile_definitions(ENABLE_ARM64) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=armv8.2-a+dotprod") +endif() + +if(MICRO_BUILD_ARM32A) + add_compile_definitions(ENABLE_ARM32) + add_definitions(-mfloat-abi=softfp -mfpu=neon) +endif() diff --git a/mindspore/lite/micro/cmake/package_micro_ops.cmake b/mindspore/lite/micro/cmake/package_micro_ops.cmake new file mode 100644 index 0000000000..1a43baed2d --- /dev/null +++ b/mindspore/lite/micro/cmake/package_micro_ops.cmake @@ -0,0 +1,32 @@ +include_directories(${NNACL_DIR}/..) + +set(CMSIS_SRC ${NNACL_DIR}/../micro/build/cmsis) +if(MICRO_CMSIS_X86) + message("*****build cmsis x86 codes****") + include_directories(${CMSIS_SRC}/CMSIS/Core/Include) + include_directories(${CMSIS_SRC}/CMSIS/DSP/Include) + include_directories(${CMSIS_SRC}/CMSIS/NN/Include) + file(GLOB RUNTIME_KERNEL_CMSIS_SRC + ${CMSIS_SRC}/CMSIS/NN/Source/BasicMathFunctions/*.c + ${CMSIS_SRC}/CMSIS/NN/Source/ActivationFunctions/*.c + ${CMSIS_SRC}/CMSIS/NN/Source/ConcatenationFunctions/*.c + ${CMSIS_SRC}/CMSIS/NN/Source/ConvolutionFunctions/*.c + ${CMSIS_SRC}/CMSIS/NN/Source/FullyConnectedFunctions/*.c + ${CMSIS_SRC}/CMSIS/NN/Source/NNSupportFunctions/*.c + ${CMSIS_SRC}/CMSIS/NN/Source/PoolingFunctions/*.c + ${CMSIS_SRC}/CMSIS/NN/Source/ReshapeFunctions/*.c + ${CMSIS_SRC}/CMSIS/NN/Source/SoftmaxFunctions/*.c + ) +endif() + +########################### files ########################### +file(GLOB RUNTIME_KERNEL_SRC + ${NNACL_DIR}/kernel/fp32/*.c + ${NNACL_DIR}/kernel/int8/*.c + ) +if(MICRO_CMSIS_X86) + set(RUNTIME_OPS ${RUNTIME_KERNEL_SRC} ${RUNTIME_TRAIN_SRC} ${RUNTIME_KERNEL_CMSIS_SRC}) +else() + set(RUNTIME_OPS ${RUNTIME_KERNEL_SRC} ${RUNTIME_TRAIN_SRC}) +endif() + diff --git a/mindspore/lite/micro/coder/CMakeLists.txt b/mindspore/lite/micro/coder/CMakeLists.txt index bc5db6491c..351152b007 100644 --- a/mindspore/lite/micro/coder/CMakeLists.txt +++ b/mindspore/lite/micro/coder/CMakeLists.txt @@ -1,4 +1,5 @@ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--gc-sections ") +set(MICRO_DIR ${CMAKE_CURRENT_SOURCE_DIR}/..) set(LITE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../..) set(3RD_DIR ${TOP_DIR}/third_party) set(NNACL_DIR ${LITE_DIR}/nnacl) @@ -6,7 +7,6 @@ set(NNACL_DIR ${LITE_DIR}/nnacl) #include 3rd include_directories(${3RD_DIR}) include_directories(${3RD_DIR}/flatbuffers/include) -include_directories(${3RD_DIR}/securec/include/) #include ms include_directories(${TOP_DIR}/) include_directories(${LITE_DIR}) @@ -16,91 +16,8 @@ include_directories(${TOP_DIR}/mindspore/core/) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/utils) - - -file(GLOB_RECURSE PRIMITIVE_OP_SRC RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - ${LITE_DIR}/src/ops/*.cc - ) - -set(LITE_SRC - ${PRIMITIVE_OP_SRC} - ${LITE_DIR}/tools/common/flag_parser.cc - ${LITE_DIR}/src/common/file_utils.cc - ${LITE_DIR}/src/common/graph_util.cc - ${LITE_DIR}/src/common/string_util.cc - ${LITE_DIR}/src/runtime/allocator.cc - ${LITE_DIR}/src/lite_model.cc - ${LITE_DIR}/src/tensorlist.cc - ${LITE_DIR}/src/tensor.cc - ${LITE_DIR}/src/common/log_adapter.cc - ${NNACL_DIR}/int8/quantize.c - ${NNACL_DIR}/int8/pack_int8.c - ${NNACL_DIR}/int8/matmul_int8.c - ${NNACL_DIR}/int8/fixed_point.c - ) - -file(GLOB_RECURSE MICRO_ALLOCATOR RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - allocator/*.cc - ) - -file(GLOB_RECURSE MICRO_GENERATOR RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - generator/*.cc - ) - -file(GLOB_RECURSE MICRO_OPCODERS_BASE RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/opcoders/base/*.cc - ) - -file(GLOB_RECURSE MICRO_OPCODERS_CMSIS_NN RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/opcoders/cmsis-nn/*.cc - ) - -file(GLOB_RECURSE MICRO_UTILS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - utils/*.cc - ) - -set(MICRO_CODER_SRC - ${CMAKE_CURRENT_SOURCE_DIR}/coder_context.cc - ${CMAKE_CURRENT_SOURCE_DIR}/session_coder.cc - ${CMAKE_CURRENT_SOURCE_DIR}/coder.cc - ${CMAKE_CURRENT_SOURCE_DIR}/debug.cc - ${CMAKE_CURRENT_SOURCE_DIR}/coder_graph.cc - ${CMAKE_CURRENT_SOURCE_DIR}/opcoders/op_coder.cc - ${CMAKE_CURRENT_SOURCE_DIR}/opcoders/op_coder_register.cc - ${CMAKE_CURRENT_SOURCE_DIR}/opcoders/op_coder_builder.cc - ${CMAKE_CURRENT_SOURCE_DIR}/opcoders/file_collector.cc - ) - -file(GLOB OPCODER_SRC_SERIALIZER ${CMAKE_CURRENT_SOURCE_DIR} - opcoders/serializers/nnacl_serializer/*.cc - ) - -file(GLOB_RECURSE OPCODER_SRC_FP32 RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - opcoders/nnacl/fp32/*.cc - ) - - -file(GLOB_RECURSE OPCODER_SRC_INT8 RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} - opcoders/nnacl/int8/*.cc - ) - - -list(APPEND MICRO_CODER_SRC - ${MICRO_ALLOCATOR} - ${MICRO_GENERATOR} - ${MICRO_OPCODERS_BASE} - ${MICRO_OPCODERS_CMSIS_NN} - ${OPCODER_SRC_SERIALIZER} - ${OPCODER_SRC_FP32} - ${OPCODER_SRC_INT8} - ) - -add_executable(codegen main.cc - ${MICRO_UTILS} - ${LITE_SRC} - ${MICRO_CODER_SRC} - ${MICRO_RUNTIME_SRC}) - +include(${MICRO_DIR}/cmake/file_list.cmake) +add_executable(codegen main.cc ${FILE_SET}) add_dependencies(codegen fbs_src) add_dependencies(codegen fbs_inner_src) target_link_libraries(codegen ${SECUREC_LIBRARY}) diff --git a/mindspore/lite/micro/coder/allocator/allocator.cc b/mindspore/lite/micro/coder/allocator/allocator.cc index 185f195708..ebfdb89977 100644 --- a/mindspore/lite/micro/coder/allocator/allocator.cc +++ b/mindspore/lite/micro/coder/allocator/allocator.cc @@ -65,11 +65,11 @@ void MemoryAllocator::Free() { iter++; } } + malloc_weights_addr_.clear(); for (auto &item : allocated_) { free(item); item = nullptr; } - malloc_weights_addr_.clear(); allocated_.clear(); } diff --git a/mindspore/lite/micro/coder/opcoders/op_coder.h b/mindspore/lite/micro/coder/opcoders/op_coder.h index 8d428742b8..85cc6af090 100644 --- a/mindspore/lite/micro/coder/opcoders/op_coder.h +++ b/mindspore/lite/micro/coder/opcoders/op_coder.h @@ -26,8 +26,8 @@ #include "include/errorcode.h" #include "src/lite_kernel.h" #include "securec/include/securec.h" -#include "opcoders/op_coder_register.h" -#include "micro/coder/log.h" +#include "coder/opcoders/op_coder_register.h" +#include "coder/log.h" namespace mindspore::lite::micro { class CoderContext; constexpr int kPrecision = 19; diff --git a/mindspore/lite/micro/coder/opcoders/op_coder_register.cc b/mindspore/lite/micro/coder/opcoders/op_coder_register.cc index 94da6e803a..9cbebb1443 100644 --- a/mindspore/lite/micro/coder/opcoders/op_coder_register.cc +++ b/mindspore/lite/micro/coder/opcoders/op_coder_register.cc @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -#include "opcoders/op_coder_register.h" +#include "coder/opcoders/op_coder_register.h" #include namespace mindspore::lite::micro { diff --git a/mindspore/lite/micro/coder/session_coder.cc b/mindspore/lite/micro/coder/session_coder.cc index 1cbeacfad1..6ff0ba7f33 100644 --- a/mindspore/lite/micro/coder/session_coder.cc +++ b/mindspore/lite/micro/coder/session_coder.cc @@ -30,6 +30,8 @@ namespace mindspore::lite::micro { +CoderSession::CoderSession() { allocator_ = MemoryAllocator::GetInstance(); } + int CoderSession::InferShape() { const Model *model = coder_graph_->model(); std::vector all_tensors = coder_graph_->all_tensors(); @@ -178,7 +180,6 @@ int CoderSession::Init(const std::string &model_path) { MS_CHECK_PTR(model); coder_graph_ = std::make_unique(model); coder_context_ = std::make_unique(); - allocator_ = MemoryAllocator::GetInstance(); allocator_->RecordRuntimeAddrs(coder_context_->input_name(), coder_context_->buffer_name(), coder_context_->weight_name()); MS_LOG(INFO) << "CoderSession::Init done"; diff --git a/mindspore/lite/micro/coder/session_coder.h b/mindspore/lite/micro/coder/session_coder.h index 4b942f8bbb..fc46c9ed6b 100644 --- a/mindspore/lite/micro/coder/session_coder.h +++ b/mindspore/lite/micro/coder/session_coder.h @@ -30,7 +30,7 @@ namespace mindspore::lite::micro { class CoderSession { public: - CoderSession() = default; + CoderSession(); ~CoderSession(); diff --git a/mindspore/lite/micro/coder/utils/dir_utils.cc b/mindspore/lite/micro/coder/utils/dir_utils.cc index 829a226a31..4db8e48518 100644 --- a/mindspore/lite/micro/coder/utils/dir_utils.cc +++ b/mindspore/lite/micro/coder/utils/dir_utils.cc @@ -14,7 +14,7 @@ * limitations under the License. */ -#include "utils/dir_utils.h" +#include "coder/utils/dir_utils.h" #include #if defined(_WIN32) || defined(_WIN64) #include diff --git a/mindspore/lite/micro/example/indirect/indirect.tflite b/mindspore/lite/micro/example/indirect/indirect.tflite new file mode 100644 index 0000000000..8202e7a460 Binary files /dev/null and b/mindspore/lite/micro/example/indirect/indirect.tflite differ diff --git a/mindspore/lite/micro/example/indirect/input.bin b/mindspore/lite/micro/example/indirect/input.bin new file mode 100644 index 0000000000..3f84f468b7 --- /dev/null +++ b/mindspore/lite/micro/example/indirect/input.bin @@ -0,0 +1 @@ +/&w*}}}}}a,}rCn}}}}}}}}{Ҹ[}}}}}F6wq}}M}ڀ }>>}ƀqa 쁀p}}:}}|};y}y7}}Oe}}}z6]}}}}I΀U}}}}Fт+[}}}}CЉ,b}}}}t}}}T \ No newline at end of file diff --git a/mindspore/lite/micro/example/micro_speech/Softmax-3.out b/mindspore/lite/micro/example/micro_speech/Softmax-3.out new file mode 100644 index 0000000000..740c985cf6 --- /dev/null +++ b/mindspore/lite/micro/example/micro_speech/Softmax-3.out @@ -0,0 +1,11 @@ +Node:Softmax-3 +input Tensor:micro_speech_B+0 +input 1, 4, +input type:DT_INT8, format:NHWC, elementSize: 4 +input Data: + -50, -5, 121, -4 +output Tensor:micro_speech_B+8 +output 1, 4, +output type:DT_INT8, format:NHWC, elementSize: 4 +output Data: + -128, -128, 127, -128 diff --git a/mindspore/lite/micro/example/micro_speech/micro_speech.tflite b/mindspore/lite/micro/example/micro_speech/micro_speech.tflite new file mode 100755 index 0000000000..51aee62be2 Binary files /dev/null and b/mindspore/lite/micro/example/micro_speech/micro_speech.tflite differ diff --git a/mindspore/lite/micro/example/micro_speech/yes_input.bin b/mindspore/lite/micro/example/micro_speech/yes_input.bin new file mode 100644 index 0000000000..2ccf8c789f Binary files /dev/null and b/mindspore/lite/micro/example/micro_speech/yes_input.bin differ diff --git a/mindspore/lite/micro/example/mnist/Softmax-6.out b/mindspore/lite/micro/example/mnist/Softmax-6.out new file mode 100644 index 0000000000..bafc120aac --- /dev/null +++ b/mindspore/lite/micro/example/mnist/Softmax-6.out @@ -0,0 +1,11 @@ +Node:Softmax-6 +input Tensor:mnist_B+80 +input 1, 10, +input type:DT_FLOAT, format:NHWC, elementSize: 10 +input Data: + -10.730524063110352, -13.112776756286621, 32.735519409179688, 47.881549835205078, -16.125642776489258, 37.780338287353516, -19.876976013183594, -9.985114097595215, 23.401361465454102, 2.130389 +output Tensor:mnist_B+0 +output 1, 10, +output type:DT_FLOAT, format:NHWC, elementSize: 10 +output Data: + 0.000000000000000, 0.000000000000000, 0.000000264328889, 0.999958753585815, 0.000000000000000, 0.000041028124542, 0.000000000000000, 0.000000000000000, 0.000000000023355, 0.000000 diff --git a/mindspore/lite/micro/example/mnist/mnist.tflite b/mindspore/lite/micro/example/mnist/mnist.tflite new file mode 100644 index 0000000000..b44bf8a1c2 Binary files /dev/null and b/mindspore/lite/micro/example/mnist/mnist.tflite differ diff --git a/mindspore/lite/micro/example/mnist/mnist_input.bin b/mindspore/lite/micro/example/mnist/mnist_input.bin new file mode 100644 index 0000000000..32154910c7 Binary files /dev/null and b/mindspore/lite/micro/example/mnist/mnist_input.bin differ diff --git a/mindspore/lite/micro/example/mobilenetv1/Softmax-9.out b/mindspore/lite/micro/example/mobilenetv1/Softmax-9.out new file mode 100644 index 0000000000..398a7193fe --- /dev/null +++ b/mindspore/lite/micro/example/mobilenetv1/Softmax-9.out @@ -0,0 +1,11 @@ +Node:Softmax-9 +input Tensor:mobilenet_B+2304 +input 1, 10, +input type:DT_FLOAT, format:NHWC, elementSize: 10 +input Data: + -29.386697769165039, -21.845693588256836, -2.055268287658691, -3.034832000732422, -35.736465454101562, -7.437396526336670, -28.077632904052734, -9.304884910583496, -3.867517471313477, -24.168812 +output Tensor:mobilenet_B+0 +output 1, 10, +output type:DT_FLOAT, format:NHWC, elementSize: 10 +output Data: + 0.000000000000874, 0.000000001646118, 0.647639095783234, 0.243172198534012, 0.000000000000002, 0.002977861091495, 0.000000000003236, 0.000460113020381, 0.105750694870949, 0.000000 diff --git a/mindspore/lite/micro/example/mobilenetv1/input.bin b/mindspore/lite/micro/example/mobilenetv1/input.bin new file mode 100644 index 0000000000..32154910c7 Binary files /dev/null and b/mindspore/lite/micro/example/mobilenetv1/input.bin differ diff --git a/mindspore/lite/micro/example/mobilenetv1/mobile_net.tflite b/mindspore/lite/micro/example/mobilenetv1/mobile_net.tflite new file mode 100644 index 0000000000..7b297e5ee9 Binary files /dev/null and b/mindspore/lite/micro/example/mobilenetv1/mobile_net.tflite differ diff --git a/mindspore/lite/micro/example/mobilenetv1_quant/1_3_224_224.bin b/mindspore/lite/micro/example/mobilenetv1_quant/1_3_224_224.bin new file mode 100644 index 0000000000..499ea3285c Binary files /dev/null and b/mindspore/lite/micro/example/mobilenetv1_quant/1_3_224_224.bin differ diff --git a/mindspore/lite/micro/example/mobilenetv1_quant/Softmax-30.out b/mindspore/lite/micro/example/mobilenetv1_quant/Softmax-30.out new file mode 100644 index 0000000000..12331e0c1b --- /dev/null +++ b/mindspore/lite/micro/example/mobilenetv1_quant/Softmax-30.out @@ -0,0 +1,55 @@ +Node:Softmax-30 +input Tensor:mobilenetv1_quant_B+1008 +input 1, 1001, +input type:DT_INT8, format:NHWC, elementSize: 1001 +input Data: + -69, -65, -60, -67, -74, -63, -61, -72, -64, -63, -56, -60, -65, -67, -64, -68, -59, -60, -62, -63, -68, -65, -46, -47, -58, -62, -63, -64, -64, -57, -68, -66, -68, -70, -70, -62, -79, -63, -69, -55, -71, -67, -64, -62, -62, + -66, -68, -61, -68, -76, -72, -65, -60, -59, -64, -71, -71, -63, -67, -72, -60, -67, -70, -70, -60, -58, -66, -64, -71, -66, -66, -63, -53, -67, -57, -69, -57, -69, -63, -47, -58, -61, -60, -61, -63, -69, -67, -64, -67, -59, + -58, -59, -56, -54, -62, -64, -64, -57, -68, -63, -62, -71, -70, -69, -58, -69, -73, -71, -64, -61, -70, -66, -52, -61, -59, -65, -70, -65, -60, -68, -69, -69, -69, -68, -71, -70, -73, -59, -58, -52, -58, -69, -71, -68, -58, + -69, -62, -67, -68, -62, -70, -72, -67, -70, -64, -66, -60, -57, -66, -68, -63, -65, -63, -59, -62, -74, -65, -68, -61, -65, -66, -61, -63, -64, -62, -61, -61, -70, -65, -63, -75, -69, -65, -67, -65, -64, -62, -66, -65, -61, + -65, -60, -60, -66, -62, -67, -54, -58, -59, -61, -61, -58, -64, -72, -63, -60, -59, -64, -63, -64, -63, -71, -66, -62, -65, -71, -65, -63, -63, -65, -66, -64, -63, -65, -68, -63, -67, -64, -67, -67, -64, -63, -65, -63, -58, + -69, -67, -62, -62, -66, -62, -66, -60, -63, -62, -63, -59, -63, -65, -63, -60, -64, -61, -71, -64, -68, -64, -65, -59, -64, -65, -64, -64, -62, -63, -64, -71, -61, -66, -63, -64, -61, -59, -59, -66, -64, -65, -66, -65, -66, + -67, -64, -71, -62, -72, -64, -65, -64, -62, -65, -58, -69, -53, -60, -53, -62, -64, -64, -67, -67, -65, -69, -69, -64, -60, -66, -68, -65, -62, -66, -60, -65, -57, -58, -59, -67, -69, -50, -62, -59, -70, -49, -63, -64, -67, + -51, -62, -69, -69, -55, -61, -67, -69, -75, -66, -69, -71, -70, -62, -67, -69, -61, -60, -61, -66, -67, -69, -66, -63, -66, -68, -67, -68, -68, -73, -72, -67, -69, -62, -68, -64, -53, -63, -70, -65, -57, -64, -59, -57, -63, + -60, -60, -64, -62, -67, -65, -62, -65, -64, -61, -61, -64, -63, -76, -63, -68, -65, -62, -66, -59, -65, -66, -69, -64, -67, -69, -68, -72, -67, -68, -66, -65, -64, -61, -73, -65, -65, -72, -73, -58, -45, -57, -62, -56, -63, + -62, -55, -74, -68, -70, -51, -74, -61, -60, -51, -58, -75, -52, -63, -45, -55, -63, -64, -58, -54, -65, -64, -60, -58, -68, -56, -63, -67, -52, -58, -62, -58, -61, -60, -56, -63, -57, -60, -54, -54, -64, -53, -51, -55, -58, + -66, -70, -46, -70, -61, -73, -60, -57, -58, -65, -62, -61, -60, -48, -57, -50, -53, -71, -72, -64, -60, -58, -63, -67, -42, -67, -64, -72, -56, -57, -58, -62, -51, -52, -70, -65, -55, -62, -54, -47, -72, -59, -54, -59, -60, + -55, -60, -59, -70, -65, -44, -66, -67, -58, -52, -56, -54, -62, -44, -62, -68, -61, -66, -42, -53, -56, -58, -55, -53, -62, -60, -61, -67, -58, -58, -62, -70, -65, -55, -59, -60, -51, -56, -62, -60, -49, -60, -72, -62, -63, + -48, -61, -62, -54, -51, -69, -54, -51, -68, -66, -41, -56, -43, -53, -55, -69, -66, -59, -57, -58, -56, -64, -61, -68, -50, -72, -67, -61, -49, -61, -66, -55, -69, -51, -64, -53, -73, -61, -60, -64, -61, -67, -68, -72, -50, + -43, -53, -60, -49, -49, -56, -54, -58, -55, -48, -63, -61, -47, -54, -61, -57, -45, -58, -58, -64, -50, -58, -53, -61, -54, -64, -53, -59, -67, -49, -59, -54, -53, -63, -46, -62, -63, -57, -56, -42, -70, -65, -50, -65, -68, + -45, -59, -46, -54, -46, -71, -47, -60, -68, -60, -60, -71, -44, -63, -64, -45, -62, -60, -54, -53, -63, -45, -56, -66, -60, -66, -57, -70, -58, -60, -61, -60, -71, -49, -67, -60, -64, -54, -57, -62, -70, -64, -63, -57, -52, + -49, -64, -53, -45, -59, -52, -49, -48, -61, -51, -56, -70, -51, -67, -62, -66, -70, -64, -61, -56, -68, -54, -46, -65, -65, -47, -58, -48, -61, -66, -64, -69, -67, -68, -55, -61, -50, -44, -59, -55, -48, -58, -56, -66, -65, + -51, -44, -68, -54, -50, -64, -57, -54, -64, -58, -56, -59, -49, -53, -59, -69, -67, -62, -59, -64, -63, -51, -59, -56, -66, -55, -58, -50, -53, -56, -47, -68, -65, -60, -57, -47, -64, -62, -71, -48, -49, -57, -50, -70, -50, + -56, -57, -59, -44, -61, -41, -59, -53, -46, -57, -54, -64, -55, -54, -52, -64, -68, -60, -58, -41, -49, -67, -64, -66, -71, -59, -54, -61, -49, -56, -65, -53, -59, -58, -56, -65, -64, -53, -60, -59, -50, -58, -57, -65, -61, + -64, -60, -56, -62, -45, -65, -70, -57, -65, -50, -65, -60, -61, -59, -48, -58, -61, -48, -61, -48, -72, -55, -51, -59, -61, -64, -64, -50, -52, -47, -66, -52, -59, -61, -60, -49, -46, -50, -64, -59, -60, -59, -60, -53, -62, + -49, -47, -61, -63, -60, -58, -60, -54, -59, -59, -65, -75, -64, -65, -62, -63, -59, -62, -51, -67, -73, -57, -59, -56, -62, -59, -59, -62, -56, -58, -73, -53, -66, -68, -59, -65, -67, -53, -54, -54, -54, -56, -53, -51, -49, + -59, -62, -55, -42, -61, -60, -61, -51, -54, -59, -58, -54, -63, -71, -62, -61, -69, -48, -71, -63, -57, -55, -58, -65, -67, -71, -60, -68, -68, -64, -62, -63, -60, -60, -71, -64, -68, -60, -56, -59, -62, -60, -65, -65, -61, + -59, -58, -66, -74, -54, -45, -58, -52, -53, -59, -56, -67, -63, -54, -64, -69, -56, -73, -65, -74, -66, -64, -48, -60, -49, -59, -70, -63, -62, -77, -58, -63, -59, -61, -60, -65, -64, -66, -63, -64, -60, -56, -71, -60, -58, + -64, -54, -74, -72, -76, -74, -72, -68, -76, -58, -58 +output Tensor:mobilenetv1_quant_B+0 +output 1, 1001, +output type:DT_INT8, format:NHWC, elementSize: 1001 +output Data: + -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -126, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -127, -128, -128, -128, + -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -126, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -127, -128, -128, -128, -127, -128, -128, -127, -128, -126, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, + -128, -128, -126, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -125, -128, -128, -128, -128, -128, -128, -128, -127, -127, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -126, -128, -128, -128, -127, -128, -128, -128, -126, -128, -128, -128, -128, -125, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -127, -128, -128, -128, -128, + -127, -128, -128, -128, -127, -128, -128, -127, -128, -128, -124, -128, -125, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -127, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, + -125, -128, -128, -127, -127, -128, -128, -128, -128, -127, -128, -128, -127, -128, -128, -128, -126, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -126, -128, -128, -128, -128, -125, -128, -128, -127, -128, -128, + -126, -128, -126, -128, -126, -128, -127, -128, -128, -128, -128, -128, -126, -128, -128, -126, -128, -128, -128, -128, -128, -126, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, + -127, -128, -128, -126, -128, -127, -127, -127, -128, -127, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -126, -128, -128, -127, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -127, -126, -128, -128, -127, -128, -128, -128, -128, + -127, -126, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -127, -128, -128, -127, -128, -128, -128, -128, -127, -128, -128, -128, -127, -127, -128, -127, -128, -127, + -128, -128, -128, -126, -128, -124, -128, -128, -126, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -124, -127, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, + -128, -128, -128, -128, -126, -128, -128, -128, -128, -127, -128, -128, -128, -128, -127, -128, -128, -127, -128, -127, -128, -128, -127, -128, -128, -128, -128, -127, -127, -127, -128, -127, -128, -128, -128, -127, -126, -127, -128, -128, -128, -128, -128, -128, -128, + -127, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -127, + -128, -128, -128, -125, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -126, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -127, -128, -127, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, + -128, -128, -128, -128, -128, -128, -128, -128, -128, -128, -128 diff --git a/mindspore/lite/micro/example/mobilenetv1_quant/mobilenet_v1_1.0_224_quant.tflite b/mindspore/lite/micro/example/mobilenetv1_quant/mobilenet_v1_1.0_224_quant.tflite new file mode 100644 index 0000000000..437640b069 Binary files /dev/null and b/mindspore/lite/micro/example/mobilenetv1_quant/mobilenet_v1_1.0_224_quant.tflite differ diff --git a/mindspore/lite/micro/example/mobilenetv2_quant/1_224_224_3.bin b/mindspore/lite/micro/example/mobilenetv2_quant/1_224_224_3.bin new file mode 100644 index 0000000000..1c035cd0e0 Binary files /dev/null and b/mindspore/lite/micro/example/mobilenetv2_quant/1_224_224_3.bin differ diff --git a/mindspore/lite/micro/example/mobilenetv2_quant/Reshape-64.out b/mindspore/lite/micro/example/mobilenetv2_quant/Reshape-64.out new file mode 100644 index 0000000000..cc05ebffa8 --- /dev/null +++ b/mindspore/lite/micro/example/mobilenetv2_quant/Reshape-64.out @@ -0,0 +1,55 @@ +Node:Reshape-64 +input Tensor:mobilenetv2_quant_B+1280 +input 1, 1, 1, 1001, +input type:DT_INT8, format:NHWC, elementSize: 1001 +input Data: + -77, -76, -60, -50, -50, -40, -53, -41, -60, -67, -77, -72, -65, -73, -62, -67, -72, -57, -71, -55, -74, -69, -79, -72, -63, -75, -55, -65, -62, -69, -68, -59, -59, -79, -64, -48, -63, -55, -71, -67, -56, -64, -64, -56, -71, + -59, -72, -36, -81, -63, -73, -61, -84, -64, -68, -75, -61, -77, -71, -64, -61, -46, -82, -73, -83, -85, -62, -75, -68, -54, -61, -56, -45, -60, -50, -68, -53, -72, -52, -67, -49, -73, -57, -71, -79, -51, -61, -72, -81, -60, + -60, -68, -79, -56, -60, -48, -79, -69, -59, -71, -54, -58, -67, -75, -76, -82, -75, -75, -41, -45, -49, -60, -37, -53, -36, -49, -65, -76, -58, -73, -66, -58, -75, -76, -77, -78, -60, -74, -66, -76, -60, -72, -62, -58, -64, + -65, -66, -54, -60, -74, -69, -75, -58, -71, -60, -77, -65, -72, -78, -67, -69, -77, -77, -87, -68, -75, -63, -76, -73, -69, -61, -93, -70, -64, -76, -61, -73, -67, -76, -77, -75, -73, -66, -59, -71, -76, -71, -83, -75, -55, + -67, -69, -75, -69, -66, -58, -63, -74, -72, -77, -72, -59, -69, -74, -65, -76, -61, -64, -80, -83, -58, -64, -61, -65, -49, -65, -77, -72, -66, -59, -65, -70, -69, -69, -72, -91, -77, -80, -76, -72, -53, -82, -76, -80, -76, + -63, -78, -92, -79, -82, -53, -58, -70, -72, -78, -63, -72, -56, -81, -77, -70, -70, -71, -51, -73, -90, -65, -68, -78, -59, -70, -72, -61, -80, -69, -73, -81, -81, -70, -74, -76, -56, -62, -91, -71, -64, -69, -71, -63, -84, + -80, -74, -87, -75, -80, -71, -82, -71, -74, -73, -76, -64, -55, -67, -71, -68, -56, -90, -76, -82, -71, -81, -77, -78, -70, -71, -66, -50, -71, -75, -69, -67, -36, -60, -79, -58, -45, -64, -55, -41, -66, -28, -60, -64, -55, + -63, -49, -53, -49, -55, -65, -60, -75, -69, -76, -63, -74, -69, -44, -49, -65, -62, -59, -78, -66, -76, -69, -76, -76, -75, -80, -68, -80, -86, -86, -68, -75, -77, -77, -79, -76, -84, -85, -72, -67, -71, -89, -70, -69, -75, + -70, -85, -65, -62, -59, -81, -73, -56, -54, -79, -85, -70, -77, -72, -62, -74, -75, -87, -87, -69, -80, -75, -71, -79, -80, -85, -64, -66, -83, -84, -66, -60, -56, -75, -67, -85, -61, -60, -62, -79, -57, -73, -62, -54, -72, + -85, -74, -92, -71, -82, -55, -86, -69, -57, -65, -71, -86, -59, -54, -44, -69, -73, -35, -76, -85, -89, -57, -53, -61, -55, -50, -63, -81, -71, -67, -45, -70, -65, -44, -89, -82, -36, -44, -96, -68, -89, -71, -57, -65, -65, + -75, -98, -89, -78, -68, -74, -48, -78, -59, -55, -62, -54, -73, -53, -37, -80, -79, -79, -76, -64, -70, -68, -82, -57, -73, -53, -58, -88, -96, -59, -52, -58, -59, -67, -58, -59, -58, -76, -86, -36, -56, -42, -72, -70, -78, + -67, -69, -63, -59, -63, -68, -78, -56, -61, -68, -66, -56, -45, -59, -61, -88, -70, -88, -72, -75, -72, -73, -85, -60, -82, -62, -74, -85, -64, -75, -55, -75, -85, -73, -56, -67, -43, -66, -83, -65, -70, -79, -66, -70, -57, + -24, -77, -71, -66, -66, -86, -57, -81, -77, -87, -44, -85, -67, -55, -76, -76, -78, -75, -74, -83, -49, -61, -70, -25, -52, -74, -77, -64, -72, -73, -73, -53, -83, -69, -68, -22, -79, -80, -73, -64, -61, -58, -61, -79, -62, + -98, -55, -91, -52, -74, -74, -82, -56, -70, -70, -73, -60, -53, -84, -76, -51, -51, -78, -62, -82, -48, -68, -57, -58, -59, -73, -71, -68, -92, -72, -67, -72, -38, -69, -62, -32, -63, -63, -37, -65, -76, -84, -28, -88, -67, + -58, -58, -73, -61, -66, -91, -64, -76, -57, -74, -55, -46, -78, -71, -43, -22, -37, -32, -70, -72, -43, -51, -68, -69, -71, -83, -66, -82, -65, -94, -68, -72, -83, -76, -89, -63, -85, -69, -86, -81, -64, -72, -80, -64, -62, + -54, -94, -84, -44, -79, -65, -71, -72, -59, -62, -87, -62, -76, -93, -62, -69, -66, -84, -66, -64, -62, -46, -50, -85, -78, -79, -54, -70, -69, -57, -53, -80, -85, -65, -68, -80, -62, -32, -71, -76, -58, -76, -44, -88, -60, + -68, -58, -57, -49, -53, -75, -63, -98, -72, -53, -82, -50, -63, -72, -53, -68, -49, -57, -45, -63, -92, -73, -53, -74, -82, -64, -69, -57, -53, -72, -43, -56, -92, -71, -62, -91, -74, -64, -75, -84, -65, -58, -69, -91, -63, + -66, -70, -90, -31, -59, -50, -58, -65, -73, -43, -72, -60, -58, -64, -74, -85, -80, -68, -64, -53, -60, -74, -83, -85, -86, -48, -67, -58, -37, -78, -27, -60, -59, -69, -73, -51, -87, -66, -85, -75, -34, -35, -71, -86, -66, + -91, -62, -58, -79, -84, -70, -57, -89, -85, -34, -49, -84, -77, -75, -90, -50, -51, -65, -72, -52, -89, -78, -60, -81, -84, -65, -69, -67, -58, -67, -75, -57, -52, -68, -54, -16, -51, -49, -77, -64, -65, -56, -55, -38, -48, + -62, -63, -79, -80, -51, -72, -73, -57, -71, -59, -86, -86, -67, -86, -63, -67, -54, -83, -47, -70, -76, -77, -68, -89, -70, -12, -76, -70, -59, -44, -67, -16, -80, -89, -67, -69, -90, -76, -31, -49, -70, -89, -57, -58, -31, + -48, -59, -86, -83, -84, -31, -40, -88, -30, -43, -84, -59, -40, -68, -59, -80, -85, -67, -69, -73, -65, -57, -78, -80, -96, -82, -82, -71, -87, -76, -67, -85, -79, -74, -72, -87, -78, -58, -36, -64, -75, -97, -75, -90, -77, + -76, -56, -63, -72, -57, -56, -62, -64, -57, -60, -60, -68, -71, -84, -43, -71, -86, -65, -79, -84, -81, -100, -48, -63, -48, -68, -84, -15, -47, -49, -62, -65, -61, -49, -46, -71, -45, -46, -80, -48, -39, -50, -71, -67, -63, + -65, -74, -62, -72, -72, -88, -82, -69, -85, -73, -31 +output Tensor:mobilenetv2_quant_B+0 +output 1, 1001, +output type:DT_INT8, format:NHWC, elementSize: 1001 +output Data: + -77, -76, -60, -50, -50, -40, -53, -41, -60, -67, -77, -72, -65, -73, -62, -67, -72, -57, -71, -55, -74, -69, -79, -72, -63, -75, -55, -65, -62, -69, -68, -59, -59, -79, -64, -48, -63, -55, -71, -67, -56, -64, -64, -56, -71, + -59, -72, -36, -81, -63, -73, -61, -84, -64, -68, -75, -61, -77, -71, -64, -61, -46, -82, -73, -83, -85, -62, -75, -68, -54, -61, -56, -45, -60, -50, -68, -53, -72, -52, -67, -49, -73, -57, -71, -79, -51, -61, -72, -81, -60, + -60, -68, -79, -56, -60, -48, -79, -69, -59, -71, -54, -58, -67, -75, -76, -82, -75, -75, -41, -45, -49, -60, -37, -53, -36, -49, -65, -76, -58, -73, -66, -58, -75, -76, -77, -78, -60, -74, -66, -76, -60, -72, -62, -58, -64, + -65, -66, -54, -60, -74, -69, -75, -58, -71, -60, -77, -65, -72, -78, -67, -69, -77, -77, -87, -68, -75, -63, -76, -73, -69, -61, -93, -70, -64, -76, -61, -73, -67, -76, -77, -75, -73, -66, -59, -71, -76, -71, -83, -75, -55, + -67, -69, -75, -69, -66, -58, -63, -74, -72, -77, -72, -59, -69, -74, -65, -76, -61, -64, -80, -83, -58, -64, -61, -65, -49, -65, -77, -72, -66, -59, -65, -70, -69, -69, -72, -91, -77, -80, -76, -72, -53, -82, -76, -80, -76, + -63, -78, -92, -79, -82, -53, -58, -70, -72, -78, -63, -72, -56, -81, -77, -70, -70, -71, -51, -73, -90, -65, -68, -78, -59, -70, -72, -61, -80, -69, -73, -81, -81, -70, -74, -76, -56, -62, -91, -71, -64, -69, -71, -63, -84, + -80, -74, -87, -75, -80, -71, -82, -71, -74, -73, -76, -64, -55, -67, -71, -68, -56, -90, -76, -82, -71, -81, -77, -78, -70, -71, -66, -50, -71, -75, -69, -67, -36, -60, -79, -58, -45, -64, -55, -41, -66, -28, -60, -64, -55, + -63, -49, -53, -49, -55, -65, -60, -75, -69, -76, -63, -74, -69, -44, -49, -65, -62, -59, -78, -66, -76, -69, -76, -76, -75, -80, -68, -80, -86, -86, -68, -75, -77, -77, -79, -76, -84, -85, -72, -67, -71, -89, -70, -69, -75, + -70, -85, -65, -62, -59, -81, -73, -56, -54, -79, -85, -70, -77, -72, -62, -74, -75, -87, -87, -69, -80, -75, -71, -79, -80, -85, -64, -66, -83, -84, -66, -60, -56, -75, -67, -85, -61, -60, -62, -79, -57, -73, -62, -54, -72, + -85, -74, -92, -71, -82, -55, -86, -69, -57, -65, -71, -86, -59, -54, -44, -69, -73, -35, -76, -85, -89, -57, -53, -61, -55, -50, -63, -81, -71, -67, -45, -70, -65, -44, -89, -82, -36, -44, -96, -68, -89, -71, -57, -65, -65, + -75, -98, -89, -78, -68, -74, -48, -78, -59, -55, -62, -54, -73, -53, -37, -80, -79, -79, -76, -64, -70, -68, -82, -57, -73, -53, -58, -88, -96, -59, -52, -58, -59, -67, -58, -59, -58, -76, -86, -36, -56, -42, -72, -70, -78, + -67, -69, -63, -59, -63, -68, -78, -56, -61, -68, -66, -56, -45, -59, -61, -88, -70, -88, -72, -75, -72, -73, -85, -60, -82, -62, -74, -85, -64, -75, -55, -75, -85, -73, -56, -67, -43, -66, -83, -65, -70, -79, -66, -70, -57, + -24, -77, -71, -66, -66, -86, -57, -81, -77, -87, -44, -85, -67, -55, -76, -76, -78, -75, -74, -83, -49, -61, -70, -25, -52, -74, -77, -64, -72, -73, -73, -53, -83, -69, -68, -22, -79, -80, -73, -64, -61, -58, -61, -79, -62, + -98, -55, -91, -52, -74, -74, -82, -56, -70, -70, -73, -60, -53, -84, -76, -51, -51, -78, -62, -82, -48, -68, -57, -58, -59, -73, -71, -68, -92, -72, -67, -72, -38, -69, -62, -32, -63, -63, -37, -65, -76, -84, -28, -88, -67, + -58, -58, -73, -61, -66, -91, -64, -76, -57, -74, -55, -46, -78, -71, -43, -22, -37, -32, -70, -72, -43, -51, -68, -69, -71, -83, -66, -82, -65, -94, -68, -72, -83, -76, -89, -63, -85, -69, -86, -81, -64, -72, -80, -64, -62, + -54, -94, -84, -44, -79, -65, -71, -72, -59, -62, -87, -62, -76, -93, -62, -69, -66, -84, -66, -64, -62, -46, -50, -85, -78, -79, -54, -70, -69, -57, -53, -80, -85, -65, -68, -80, -62, -32, -71, -76, -58, -76, -44, -88, -60, + -68, -58, -57, -49, -53, -75, -63, -98, -72, -53, -82, -50, -63, -72, -53, -68, -49, -57, -45, -63, -92, -73, -53, -74, -82, -64, -69, -57, -53, -72, -43, -56, -92, -71, -62, -91, -74, -64, -75, -84, -65, -58, -69, -91, -63, + -66, -70, -90, -31, -59, -50, -58, -65, -73, -43, -72, -60, -58, -64, -74, -85, -80, -68, -64, -53, -60, -74, -83, -85, -86, -48, -67, -58, -37, -78, -27, -60, -59, -69, -73, -51, -87, -66, -85, -75, -34, -35, -71, -86, -66, + -91, -62, -58, -79, -84, -70, -57, -89, -85, -34, -49, -84, -77, -75, -90, -50, -51, -65, -72, -52, -89, -78, -60, -81, -84, -65, -69, -67, -58, -67, -75, -57, -52, -68, -54, -16, -51, -49, -77, -64, -65, -56, -55, -38, -48, + -62, -63, -79, -80, -51, -72, -73, -57, -71, -59, -86, -86, -67, -86, -63, -67, -54, -83, -47, -70, -76, -77, -68, -89, -70, -12, -76, -70, -59, -44, -67, -16, -80, -89, -67, -69, -90, -76, -31, -49, -70, -89, -57, -58, -31, + -48, -59, -86, -83, -84, -31, -40, -88, -30, -43, -84, -59, -40, -68, -59, -80, -85, -67, -69, -73, -65, -57, -78, -80, -96, -82, -82, -71, -87, -76, -67, -85, -79, -74, -72, -87, -78, -58, -36, -64, -75, -97, -75, -90, -77, + -76, -56, -63, -72, -57, -56, -62, -64, -57, -60, -60, -68, -71, -84, -43, -71, -86, -65, -79, -84, -81, -100, -48, -63, -48, -68, -84, -15, -47, -49, -62, -65, -61, -49, -46, -71, -45, -46, -80, -48, -39, -50, -71, -67, -63, + -65, -74, -62, -72, -72, -88, -82, -69, -85, -73, -31 diff --git a/mindspore/lite/micro/example/mobilenetv2_quant/mobilenet_v2_1.0_224_quant.tflite b/mindspore/lite/micro/example/mobilenetv2_quant/mobilenet_v2_1.0_224_quant.tflite new file mode 100644 index 0000000000..c26ff77a00 Binary files /dev/null and b/mindspore/lite/micro/example/mobilenetv2_quant/mobilenet_v2_1.0_224_quant.tflite differ diff --git a/mindspore/lite/micro/example/person_detection/Conv2D-28.out b/mindspore/lite/micro/example/person_detection/Conv2D-28.out new file mode 100644 index 0000000000..bd2c60c8f0 --- /dev/null +++ b/mindspore/lite/micro/example/person_detection/Conv2D-28.out @@ -0,0 +1,16 @@ +Node:Conv2D-28 +input Tensor:person_detection_B+2304 +input 1, 1, 1, 256, +input type:DT_INT8, format:NHWC, elementSize: 256 +input Data: + -126, -128, -122, -127, -126, -120, -116, -126, -128, -124, -124, -128, -127, -122, -122, -127, -122, -126, -124, -124, -127, -125, -124, -123, -126, -121, -128, -127, -128, -124, -122, -126, -124, -125, -116, -122, -119, -128, -124, -127, -122, -121, -116, -123, -127, + -126, -121, -128, -126, -124, -109, -124, -123, -125, -124, -123, -125, -128, -120, -127, -126, -122, -125, -122, -126, -127, -119, -124, -121, -121, -122, -123, -128, -126, -128, -124, -128, -123, -123, -126, -109, -122, -125, -123, -123, -127, -128, -127, -111, -121, + -126, -125, -124, -126, -123, -123, -122, -121, -127, -125, -121, -124, -122, -123, -124, -127, -126, -124, -127, -124, -126, -121, -111, -121, -115, -121, -128, -122, -126, -126, -123, -123, -123, -127, -124, -123, -123, -124, -126, -124, -128, -125, -124, -120, -126, + -126, -125, -122, -128, -122, -118, -127, -124, -127, -118, -125, -122, -119, -125, -124, -126, -127, -125, -125, -123, -124, -126, -125, -126, -123, -123, -125, -123, -125, -120, -126, -115, -128, -128, -116, -126, -124, -126, -127, -124, -124, -125, -123, -126, -90, + -126, -122, -126, -122, -128, -122, -118, -124, -110, -125, -122, -124, -126, -128, -124, -125, -123, -125, -128, -126, -125, -128, -123, -123, -121, -127, -123, -126, -124, -124, -124, -128, -123, -124, -127, -127, -120, -126, -123, -127, -125, -125, -122, -121, -126, + -125, -128, -121, -117, -124, -119, -126, -128, -128, -114, -125, -126, -125, -121, -125, -128, -127, -125, -120, -120, -128, -126, -123, -122, -125, -122, -124, -119, -125, -128, -128 +output Tensor:person_detection_B+0 +output 1, 1, 1, 3, +output type:DT_INT8, format:NHWC, elementSize: 3 +output Data: + -119, 14, 58 diff --git a/mindspore/lite/micro/example/person_detection/person_detection.tflite b/mindspore/lite/micro/example/person_detection/person_detection.tflite new file mode 100644 index 0000000000..243de020d3 Binary files /dev/null and b/mindspore/lite/micro/example/person_detection/person_detection.tflite differ diff --git a/mindspore/lite/micro/example/person_detection/person_detection_input.bin b/mindspore/lite/micro/example/person_detection/person_detection_input.bin new file mode 100644 index 0000000000..21c5e2c185 --- /dev/null +++ b/mindspore/lite/micro/example/person_detection/person_detection_input.bin @@ -0,0 +1,17 @@ +8BD/&(BMG9ɼ~r~{zroifdba^]]XWUUWVRRPSUQTQQSTVVX[Z9DD/'(DPG@Ųyryxuokebb`_\YXXXXVXUMUVUUUTUXYWXY\]8@C/%(ENC>¼|ys|xutnije_^ZYV[X[[ZTOTWVWVRRUVUYYZ\];??CGWW[_loqi/(((:DK03,!$)+,,,15<@C)2MKKLA<9>??BBFIUV]jmrl|1)()(-M2 5# !")??#!KLOKIG?;>?@BEKQWZgiomkAF,*56P**2+A #LOOLHJDD@DDHPUXWe]cgdvHT/+]`\Ԗ'/0$,D($LNMLIMKMNMOWTVZghjspkxKX2,_ja*53'!,3!)E-'VWSOSNOPOVYX[[ciiquexLX4-aph%280$&57+  *-F0:hgkfgc`]^]^`cbcjlqjlzV[5*cnq/05.& '+3=5+ *2;H+%Vhiikjmjnqpv}agjpqhzy}fX8*_ix@-0*,)(&/5=:+,).9?H*,akgjkllppwz^eemqkx{Q9*ekܼg+,-,-<)/127?E5?chhm]Vlpu{Y_cgkjt̥M<*]jϓN)(),(!""$+%*1248?>]dgig[Tov{acfigiiz}L>(^juI5)$'*'#%!&$-357:R`cgghgnsz`hhnpwvwF<']fsE1'(%&'$$,),361!-=V`dhmqx]`enqu{t?9'U_Y>2+% %$# ""&**31,#&.?\mpw_\dgqv|tC6%JV:(! #!!)0+%'/>`vUW[bgmwy~D:$GOC.$ (-&.3@Q{V[Y]`fmstG8#DM*"$$#%-7`TX\cejrzvL4#@C"!"'4uRR[]ggnvzS&"(*!'>yBORT[aakq{wi5"'  $0ٜP79HJLQUZakpw8!'  )Z^?A5<@ILQT\_gkvu;""  %Bv@A97OtBCIKOUYbdlm>#$5M@;5Kmvu?>>AAHUW]acmsE% -[B?3Cg}~on><8<58=RORXVhuA$  +j>@5@gwuvtkl:9759913T||vrnmknno141/.+,,../23=BIIRX\a\)  !Ub>66Nx}xroohlkko/1-./,((('))+26;<>>AC>.     ={F<5Nvxxuqponmux|./.+-+,,--*,-,3124212/*        .ۛJA7Hx~|wrvpsux532...././110/-2321/,)'       #UB4Ck~yvwvutu|G8754510110000/'+*--,%#      !26:ixsuorwZTH@<=:73688884>AC@5$+(      2[{|ztsuyxGnbUOFA@>>A>AAAFOP6),/*4      7  [|vppsw| kaUMJGCEHHGPX]0*.,5,       Ruvtvrvtui]WRMINPHTM)***=I/     '+quuxy>şwj`[XPRTB7()*'FC7     #;px~+åukc]VQQ,(+(*Y@H:  ׸KGƬ#_`\XTQNJLLLI/11)+\@M5     7X;7!Pͷ-ȨaPHCBFDMLLKLV[^_kr*9&   /9_jgɻT%ʩX>BLKOLUQ`gmngl."8%   [u{i"ȵpSPo\`KLJLKNIWk6! 'ltoi$ɯcN^cVXSMPMPDUv1  + &?_kj#'jsifeiqXGaN\VlrZXTPNNMLN@Wp-$   %-kH+ugfC+'(*),.03:>HPYXTK?9]:00+*'.OIMI;Ul('! + '4-eD$ "$$&'')***,100CA?8/,%" )LPIII=MOR\eq|!%  )')usoxʶ' #$$&)(()')),10Y1'8)%!+GIGHGE;ITNOWZLC ! *-%,!!$&'%()*)((',//7>HOHC8>IIJEAD>>IC6798A.  (2%]("#$''&()()(%(&+,/PZ^eaEAGHGD>C<@MMMKJHD.  $F3Nsk\+""$%%'&('(&$#$&),MOS`[>::=988>84;::9:87%!   -*\5 #%%%%$&%# !!"!!9PV_V:9>;;78<32:976544   #=