Bazel build tflite-micro: установите сторонние пакеты для сборки моего приложенияC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Bazel build tflite-micro: установите сторонние пакеты для сборки моего приложения

Сообщение Anonymous »

Сейчас я пытаюсь понять, как инициализировать стороннее программное обеспечение в tflite-micro: https://github.com/tensorflow/tflite-micro/tree/main/ Third_party
Я установил правильную версию bazel: sudo apt update && sudo apt install bazel-7.0.0.
Но как мне инициализировать сторонние библиотеки? Я пробовал так:
tflite-micro$ bazel build third_party/flatbuffers
WARNING: Target pattern parsing failed.
ERROR: Skipping 'third_party/flatbuffers': no such target '//third_party/flatbuffers:flatbuffers': target 'flatbuffers' not declared in package 'third_party/flatbuffers' defined by /home/user/tflite-micro/third_party/flatbuffers/BUILD (Tip: use `query "//third_party/flatbuffers:*"` to see all the targets in that package)
ERROR: no such target '//third_party/flatbuffers:flatbuffers': target 'flatbuffers' not declared in package 'third_party/flatbuffers' defined by /home/user/tflite-micro/third_party/flatbuffers/BUILD (Tip: use `query "//third_party/flatbuffers:*"` to see all the targets in that package)

что не сработало. В конечном итоге я хочу создать свой минимальный пример tflite-micro:
#include

#include "modelData.h"
#include "tensorflow/lite/core/c/common.h"
#include "tensorflow/lite/micro/micro_interpreter.h"
#include "tensorflow/lite/micro/micro_log.h"
#include "tensorflow/lite/micro/micro_mutable_op_resolver.h"
#include "tensorflow/lite/micro/micro_profiler.h"
#include "tensorflow/lite/micro/recording_micro_interpreter.h"
#include "tensorflow/lite/micro/system_setup.h"
#include "tensorflow/lite/schema/schema_generated.h"

TfLiteStatus LoadFloatModelAndPerformInference()
{
const tflite::Model* model = ::tflite::GetModel( model );
TFLITE_CHECK_EQ( model->version(), TFLITE_SCHEMA_VERSION );

HelloWorldOpResolver op_resolver;
TF_LITE_ENSURE_STATUS( RegisterOps( op_resolver ) );

// Arena size just a round number. The exact arena usage can be determined
// using the RecordingMicroInterpreter.
constexpr int kTensorArenaSize = 3000;
uint8_t tensor_arena[ kTensorArenaSize ];

tflite::MicroInterpreter interpreter( model, op_resolver, tensor_arena, kTensorArenaSize );
TF_LITE_ENSURE_STATUS( interpreter.AllocateTensors() );

constexpr int kNumTestValues = 2;
float inputs[ kNumTestValues ] = { 1.0f, 0.0f };

for (int i = 0; i < kNumTestValues; ++i) {
interpreter.input(0)->data.f[0] = inputs;
TF_LITE_ENSURE_STATUS( interpreter.Invoke() );
float y_pred = interpreter.output(0)->data.f[0];
}

return kTfLiteOk;
}

int main( int argc, char* argv[] )
{
tflite::InitializeTarget();
TF_LITE_ENSURE_STATUS( LoadFloatModelAndPerformInference() );
return kTfLiteOk;
}


с использованием моего сценария CMake
cmake_minimum_required( VERSION 3.5 FATAL_ERROR )
project( Net)

set( TARGET Net)

add_executable( tensorflowLoader src/tensorflowLoader.cpp )
target_include_directories( ${TARGET} PRIVATE ${CMAKE_CURRENT_LIST_DIR}/tflite-micro/ )
target_include_directories( ${TARGET} PRIVATE ${CMAKE_CURRENT_LIST_DIR}/tflite-micro/third_party/ )
set( CMAKE_CXX_STANDARD 17 )



Подробнее здесь: https://stackoverflow.com/questions/787 ... pplication
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»